GNOME Bugzilla – Bug 594712
SIGSEGV @ socket-impl-gio.cc:502 (abort_flag)
Last modified: 2009-09-26 20:03:18 UTC
Created attachment 142851 [details] backtrace of error sorry for crossposting this, put it in the wrong "bin" so to say, Bug 593414 is a dupe of this one. OS: 64 bit ubuntu jaunty 9.04, latest version from SVN. (rev 370) socket-impl-gio.cc: if (_abort_flag) { _listener->on_socket_abort (this); } else if (!(cond & (G_IO_IN | G_IO_OUT))) { _listener->on_socket_error (this); } else // G_IO_IN or G_IO_OUT { const DoResult result = (cond & G_IO_IN) ? do_read () : do_write (); /* if (_abort_flag) _listener->on_socket_abort (this); else*/ if (result == IO_ERR) _listener->on_socket_error (this); else if (result == IO_READ) set_watch_mode (READ_NOW); else if (result == IO_WRITE) set_watch_mode (WRITE_NOW); } uncommenting line above leads to random segfaults on my machine. in my opinion polling the status of "abort_flag" is done twice (unneeded). commenting this out leads to no segfaults, perfectly working (at least the hours i tried until today) it seems that the second request for _abort_flag triggers the segfault. output from gdb is this: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7f61faa28790 (LWP 12446)] 0x000000000052431a in pan::GIOChannelSocket::gio_func (this=0x3281b60, channel=0x8e98340, cond=G_IO_IN) at socket-impl-gio.cc:502 502 if (_abort_flag) _listener->on_socket_abort (this);
Created attachment 142852 [details] runlog extract
removed other bug report, sorry
*** Bug 593414 has been marked as a duplicate of this bug. ***
*** This bug has been marked as a duplicate of bug 478619 ***