Modified Files: glib/ChangeLog glib/glib/giochannel.c

Modified Files:
	glib/ChangeLog glib/glib/giochannel.c

        * glib/giochannel.c: Fixed a "sense of comparison" bug,
        added an assert to check when g_io_channels_read_chars ()
        is looping endlessly due to encoded_read_buf being corrupted.
This commit is contained in:
Ron Steinke 2001-08-10 14:56:37 +00:00
parent b1d72f582b
commit 6132f0496a
9 changed files with 50 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2001-08-10 Ron Steinke <rsteinke@w-link.net>
* glib/giochannel.c: Fixed a "sense of comparison" bug,
added an assert to check when g_io_channels_read_chars ()
is looping endlessly due to encoded_read_buf being corrupted.
2001-08-06 Sven Neumann <sven@gimp.org> 2001-08-06 Sven Neumann <sven@gimp.org>
* glib/gutils.[ch]: added new function g_nullify_pointer(). * glib/gutils.[ch]: added new function g_nullify_pointer().

View File

@ -1,3 +1,9 @@
2001-08-10 Ron Steinke <rsteinke@w-link.net>
* glib/giochannel.c: Fixed a "sense of comparison" bug,
added an assert to check when g_io_channels_read_chars ()
is looping endlessly due to encoded_read_buf being corrupted.
2001-08-06 Sven Neumann <sven@gimp.org> 2001-08-06 Sven Neumann <sven@gimp.org>
* glib/gutils.[ch]: added new function g_nullify_pointer(). * glib/gutils.[ch]: added new function g_nullify_pointer().

View File

@ -1,3 +1,9 @@
2001-08-10 Ron Steinke <rsteinke@w-link.net>
* glib/giochannel.c: Fixed a "sense of comparison" bug,
added an assert to check when g_io_channels_read_chars ()
is looping endlessly due to encoded_read_buf being corrupted.
2001-08-06 Sven Neumann <sven@gimp.org> 2001-08-06 Sven Neumann <sven@gimp.org>
* glib/gutils.[ch]: added new function g_nullify_pointer(). * glib/gutils.[ch]: added new function g_nullify_pointer().

View File

@ -1,3 +1,9 @@
2001-08-10 Ron Steinke <rsteinke@w-link.net>
* glib/giochannel.c: Fixed a "sense of comparison" bug,
added an assert to check when g_io_channels_read_chars ()
is looping endlessly due to encoded_read_buf being corrupted.
2001-08-06 Sven Neumann <sven@gimp.org> 2001-08-06 Sven Neumann <sven@gimp.org>
* glib/gutils.[ch]: added new function g_nullify_pointer(). * glib/gutils.[ch]: added new function g_nullify_pointer().

View File

@ -1,3 +1,9 @@
2001-08-10 Ron Steinke <rsteinke@w-link.net>
* glib/giochannel.c: Fixed a "sense of comparison" bug,
added an assert to check when g_io_channels_read_chars ()
is looping endlessly due to encoded_read_buf being corrupted.
2001-08-06 Sven Neumann <sven@gimp.org> 2001-08-06 Sven Neumann <sven@gimp.org>
* glib/gutils.[ch]: added new function g_nullify_pointer(). * glib/gutils.[ch]: added new function g_nullify_pointer().

View File

@ -1,3 +1,9 @@
2001-08-10 Ron Steinke <rsteinke@w-link.net>
* glib/giochannel.c: Fixed a "sense of comparison" bug,
added an assert to check when g_io_channels_read_chars ()
is looping endlessly due to encoded_read_buf being corrupted.
2001-08-06 Sven Neumann <sven@gimp.org> 2001-08-06 Sven Neumann <sven@gimp.org>
* glib/gutils.[ch]: added new function g_nullify_pointer(). * glib/gutils.[ch]: added new function g_nullify_pointer().

View File

@ -1,3 +1,9 @@
2001-08-10 Ron Steinke <rsteinke@w-link.net>
* glib/giochannel.c: Fixed a "sense of comparison" bug,
added an assert to check when g_io_channels_read_chars ()
is looping endlessly due to encoded_read_buf being corrupted.
2001-08-06 Sven Neumann <sven@gimp.org> 2001-08-06 Sven Neumann <sven@gimp.org>
* glib/gutils.[ch]: added new function g_nullify_pointer(). * glib/gutils.[ch]: added new function g_nullify_pointer().

View File

@ -1,3 +1,9 @@
2001-08-10 Ron Steinke <rsteinke@w-link.net>
* glib/giochannel.c: Fixed a "sense of comparison" bug,
added an assert to check when g_io_channels_read_chars ()
is looping endlessly due to encoded_read_buf being corrupted.
2001-08-06 Sven Neumann <sven@gimp.org> 2001-08-06 Sven Neumann <sven@gimp.org>
* glib/gutils.[ch]: added new function g_nullify_pointer(). * glib/gutils.[ch]: added new function g_nullify_pointer().

View File

@ -1207,7 +1207,7 @@ reencode:
lastchar = nextchar; lastchar = nextchar;
break; break;
case -1: case -1:
if (oldlen > channel->encoded_read_buf->len) if (oldlen < channel->encoded_read_buf->len)
status = G_IO_STATUS_NORMAL; status = G_IO_STATUS_NORMAL;
else else
{ {
@ -1677,6 +1677,7 @@ g_io_channel_read_chars (GIOChannel *channel,
{ {
prevchar = nextchar; prevchar = nextchar;
nextchar = g_utf8_next_char (nextchar); nextchar = g_utf8_next_char (nextchar);
g_assert (nextchar != prevchar); /* Posibile for *prevchar of -1 or -2 */
} }
while (nextchar < channel->encoded_read_buf->str + got_bytes); while (nextchar < channel->encoded_read_buf->str + got_bytes);