Fix embarrassing bug: I was passing an incorrect third parameter to

2008-09-23  Tor Lillqvist  <tml@novell.com>

	* glib/gmain.c (poll_rest) [Win32]: Fix embarrassing bug: I was
	passing an incorrect third parameter to memmove(), had forgotten
	to multiply by the size of the table entry. Just use a for loop
	instead, clearer. Odd I didn't notice when testing this code.


svn path=/trunk/; revision=7533
This commit is contained in:
Tor Lillqvist 2008-09-23 15:35:12 +00:00 committed by Tor Lillqvist
parent a1450c73e7
commit f911ead382
2 changed files with 10 additions and 1 deletions

View File

@ -1,3 +1,10 @@
2008-09-23 Tor Lillqvist <tml@novell.com>
* glib/gmain.c (poll_rest) [Win32]: Fix embarrassing bug: I was
passing an incorrect third parameter to memmove(), had forgotten
to multiply by the size of the table entry. Just use a for loop
instead, clearer. Odd I didn't notice when testing this code.
2008-09-22 Nelson Benítez León <nbenitez@svn.gnome.org>
* gio/gioenums.h: Add new GFileCopyFlag, to leave target file with

View File

@ -447,8 +447,10 @@ poll_rest (gboolean poll_msgs,
if (timeout == 0 && nhandles > 1)
{
/* Remove the handle that fired */
int i;
if (ready < nhandles - 1)
memmove (handles + ready - WAIT_OBJECT_0, handles + ready - WAIT_OBJECT_0 + 1, nhandles - ready - 1);
for (i = ready - WAIT_OBJECT_0 + 1; i < nhandles; i++)
handles[i-1] = handles[i];
nhandles--;
recursed_result = poll_rest (FALSE, handles, nhandles, fds, nfds, 0);
return (recursed_result == -1) ? -1 : 1 + recursed_result;