diff --git a/src/osx/core/evtloop_cf.cpp b/src/osx/core/evtloop_cf.cpp index 38d3233b71..f151cb5684 100644 --- a/src/osx/core/evtloop_cf.cpp +++ b/src/osx/core/evtloop_cf.cpp @@ -107,8 +107,6 @@ wxCFEventLoop::AddSourceForFD(int fd, if ( !cffd ) return NULL; - source->SetFileDescriptor(cffd.release()); - wxCFRef cfsrc(CFFileDescriptorCreateRunLoopSource(kCFAllocatorDefault, cffd, 0)); if ( !cfsrc ) @@ -117,6 +115,8 @@ wxCFEventLoop::AddSourceForFD(int fd, CFRunLoopRef cfloop = CFGetCurrentRunLoop(); CFRunLoopAddSource(cfloop, cfsrc, kCFRunLoopDefaultMode); + source->SetFileDescriptor(cffd.release()); + return source.release(); }