I believe this is the fix for #5510. Refs #5510. I still don't understand why that...
commitf9198eff8a487eaa0e4e051b5e54f95ff162c340
authorEvan Schoenberg <evan@adiumx.com>
Mon, 18 Sep 2006 17:32:14 +0000 (18 17:32 +0000)
committerEvan Schoenberg <evan@adiumx.com>
Mon, 18 Sep 2006 17:32:14 +0000 (18 17:32 +0000)
treeced9f2af052aceb33337fb4837be9a1b57ad2fe0
parentc5d8a9075ae7326524c0adbb29830191908a0fb3
I believe this is the fix for #5510. Refs #5510.  I still don't understand why that crash was occurring, but this goes back to the technique I wanted to use originally, with {{{CFSocketDisableCallBacks()}}}.  The problem I was running into, that it didn't seem to matter if I disabled callbacks, was that since CFSocket uses a version 0 runloop, it's possible for a callback on, for example, write, to already be queued up in the runloop waiting to be sent on the next time through.  Therefore, when you call {{{CFSocketDisableCallBacks()}}} you have to be prepared to potentially get an erroneous callback on the next immediate run loop if the socket is autoreenabling (which it is for us) and already ready to go. [[BR]][[BR]] Could someone please post a test build in #5510? I'm out until tomorrow night at the earliest.

git-svn-id: svn://svn.adiumx.com/adium/trunk@17766 1c916fce-81e2-0310-a464-8ca513f45935
Plugins/Gaim Service/adiumGaimEventloop.m