[pan2: 64/68] Fix crash in gio_func on OSX.



commit 903b105b600efa8c2748f65caa661da1b7331765
Author: K. Haley <haleykd users sf net>
Date:   Mon Oct 25 22:14:12 2010 -0600

    Fix crash in gio_func on OSX.

 pan/tasks/socket-impl-gio.cc |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)
---
diff --git a/pan/tasks/socket-impl-gio.cc b/pan/tasks/socket-impl-gio.cc
index b275f33..a0e14eb 100644
--- a/pan/tasks/socket-impl-gio.cc
+++ b/pan/tasks/socket-impl-gio.cc
@@ -501,8 +501,12 @@ GIOChannelSocket :: gio_func (GIOChannel   * channel,
   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);
+    /* I keep reading about crashes due to this check on OSX.
+     * _abort_flag is never set so this won't cause a problem.
+     * could be a bug in gcc 4.2.1.
+     */
+    /*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);
   }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]