aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--iconv/loop.c5
2 files changed, 9 insertions, 1 deletions
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];