This is the mail archive of the mailing list for the glibc project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

GNU C Library master sources branch, master, updated. glibc-2.13-164-g1af4e29

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 C Library master sources".

The branch, master has been updated
       via  1af4e29837e9969377781b47254b6e4c293353ed (commit)
      from  da62f81bdd23bb5095cd54c0b34ae6d5a93df69e (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 -----------------------------------------------------------------;a=commitdiff;h=1af4e29837e9969377781b47254b6e4c293353ed

commit 1af4e29837e9969377781b47254b6e4c293353ed
Author: Ulrich Drepper <>
Date:   Sat May 14 00:53:21 2011 -0400

    Fix handling of incomplete character storage in state
    If iconv is called more than once in a row for adding bytes to the sequence
    while still remain under the minimum size of a character and if STORE_REST
    is defined, we didn't consume any input.  Fix that.

diff --git a/ChangeLog b/ChangeLog
index a25ddb2..6c125e3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2011-05-14  Ulrich Drepper  <>
+	* iconv/loop.c (SINGLE) [STORE_REST]: Add input bytes to bytebuf before
+	storing incomplete byte sequence in state object.
 2011-05-11  Andreas Schwab  <>
 	* Makeconfig (+link-pie): Indent.
diff --git a/iconv/loop.c b/iconv/loop.c
index da11bc2..72fef94 100644
--- a/iconv/loop.c
+++ b/iconv/loop.c
@@ -1,5 +1,5 @@
 /* Conversion loop frame work.
-   Copyright (C) 1998-2002, 2003, 2005, 2008 Free Software Foundation, Inc.
+   Copyright (C) 1998-2003, 2005, 2008, 2011 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <>, 1998.
@@ -399,6 +399,9 @@ SINGLE(LOOPFCT) (struct __gconv_step *step,
       *inptrp = inend;
 #ifdef STORE_REST
+      while (inptr < inend)
+	bytebuf[inlen++] = *inptr++;
       inptr = bytebuf;
       inptrp = &inptr;
       inend = &bytebuf[inlen];


Summary of changes:
 ChangeLog    |    5 +++++
 iconv/loop.c |    5 ++++-
 2 files changed, 9 insertions(+), 1 deletions(-)

GNU C Library master sources

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]