Callbacks on a GIOChannel (as described) are re-entrant!.  I know since i
have hit this problem.  Essentially you must read what you can.  If its a
socket you would have soimething like

                          bytes_read = recv( fd, ( void * ) ( &buffer[
current_byte ] ), expected_size );
                          current_byte += bytes_received;

and then you would exit the function.  If current_byte hasn't reached the
expected_size, then you just gotta wait till you
get called back again.  But under no circunstance should you loop in this
function.  You will not get what you want if you do that.

travis miller
[EMAIL PROTECTED]
_______________________________________________
gtk-list mailing list
gtk-list@gnome.org
http://mail.gnome.org/mailman/listinfo/gtk-list

Reply via email to