aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--iconv/loop.c3
2 files changed, 4 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 6c125e3..36a3708 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +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.
+ storing incomplete byte sequence in state object. Avoid testing for
+ guaranteed too small input if we know there is enough data available.
2011-05-11 Andreas Schwab <schwab@redhat.com>
diff --git a/iconv/loop.c b/iconv/loop.c
index 72fef94..4f43062 100644
--- a/iconv/loop.c
+++ b/iconv/loop.c
@@ -395,7 +395,8 @@ SINGLE(LOOPFCT) (struct __gconv_step *step,
#endif
/* Are there enough bytes in the input buffer? */
- if (__builtin_expect (inptr + (MIN_NEEDED_INPUT - inlen) > inend, 0))
+ if (MIN_NEEDED_INPUT > 1
+ && __builtin_expect (inptr + (MIN_NEEDED_INPUT - inlen) > inend, 0))
{
*inptrp = inend;
#ifdef STORE_REST