guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.11-24-g1baa2


From: Ludovic Courtès
Subject: [Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.11-24-g1baa215
Date: Wed, 28 May 2014 17:30:25 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".

http://git.savannah.gnu.org/cgit/guile.git/commit/?id=1baa2159307c34683e8ede54f38f65010fc594b0

The branch, stable-2.0 has been updated
       via  1baa2159307c34683e8ede54f38f65010fc594b0 (commit)
      from  0bb3f946e97424616c1a95f2372e5bc41e8f8174 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 1baa2159307c34683e8ede54f38f65010fc594b0
Author: Ludovic Courtès <address@hidden>
Date:   Wed May 28 19:26:45 2014 +0200

    Fix shrinking of contiguous bytevectors, as from 'get-bytevector-n'.
    
    Fixes <http://bugs.gnu.org/17466>.
    Reported by J Kalbhenn <address@hidden>.
    
    * libguile/bytevectors.c (scm_c_shrink_bytevector): When BV is
      contiguous, add use of 'SCM_BYTEVECTOR_SET_CONTENTS'.

-----------------------------------------------------------------------

Summary of changes:
 libguile/bytevectors.c |   16 +++++++++++-----
 1 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/libguile/bytevectors.c b/libguile/bytevectors.c
index be8b654..b210440 100644
--- a/libguile/bytevectors.c
+++ b/libguile/bytevectors.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
+/* Copyright (C) 2009, 2010, 2011, 2012, 2014 Free Software Foundation, Inc.
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public License
@@ -315,10 +315,16 @@ scm_c_shrink_bytevector (SCM bv, size_t c_new_len)
   SCM_BYTEVECTOR_SET_LENGTH (bv, c_new_len);
 
   if (SCM_BYTEVECTOR_CONTIGUOUS_P (bv))
-    new_bv = PTR2SCM (scm_gc_realloc (SCM2PTR (bv),
-                                     c_len + SCM_BYTEVECTOR_HEADER_BYTES,
-                                     c_new_len + SCM_BYTEVECTOR_HEADER_BYTES,
-                                     SCM_GC_BYTEVECTOR));
+    {
+      signed char *c_bv;
+
+      c_bv = scm_gc_realloc (SCM2PTR (bv),
+                            c_len + SCM_BYTEVECTOR_HEADER_BYTES,
+                            c_new_len + SCM_BYTEVECTOR_HEADER_BYTES,
+                            SCM_GC_BYTEVECTOR);
+      new_bv = PTR2SCM (c_bv);
+      SCM_BYTEVECTOR_SET_CONTENTS (new_bv, c_bv + SCM_BYTEVECTOR_HEADER_BYTES);
+    }
   else
     {
       signed char *c_bv;


hooks/post-receive
-- 
GNU Guile



reply via email to

[Prev in Thread] Current Thread [Next in Thread]