This is the mail archive of the
glibc-cvs@sourceware.org
mailing list for the glibc project.
GNU C Library master sources branch, master, updated. glibc-2.13-164-g1af4e29
- From: drepper at sourceware dot org
- To: glibc-cvs at sourceware dot org
- Date: 14 May 2011 04:56:19 -0000
- Subject: 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 -----------------------------------------------------------------
http://sources.redhat.com/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=1af4e29837e9969377781b47254b6e4c293353ed
commit 1af4e29837e9969377781b47254b6e4c293353ed
Author: Ulrich Drepper <drepper@gmail.com>
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 <drepper@gmail.com>
+
+ * iconv/loop.c (SINGLE) [STORE_REST]: Add input bytes to bytebuf before
+ storing incomplete byte sequence in state object.
+
2011-05-11 Andreas Schwab <schwab@redhat.com>
* 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 <drepper@cygnus.com>, 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(-)
hooks/post-receive
--
GNU C Library master sources