diff options
author | Sean McBride <sean@rogue-research.com> | 2010-02-05 11:50:34 -0500 |
---|---|---|
committer | Peter Stuge <peter@stuge.se> | 2011-06-13 22:06:32 +0200 |
commit | 3ba2fae24886fec89410e5f2295f65363edcc2df (patch) | |
tree | 86aa8645c916e66501f3c35c0512bf6c7aea69d5 | |
parent | b67120f047f7eafa15c88c66fa61cef40805ec1f (diff) | |
download | libusb-3ba2fae24886fec89410e5f2295f65363edcc2df.tar.gz |
Darwin: Fix #28 clang analyzer warning about unbalanced retain/release
-rw-r--r-- | libusb/os/darwin_usb.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libusb/os/darwin_usb.c b/libusb/os/darwin_usb.c index 169fa1a..7927b3a 100644 --- a/libusb/os/darwin_usb.c +++ b/libusb/os/darwin_usb.c @@ -262,6 +262,7 @@ static void darwin_clear_iterator (io_iterator_t iter) { static void *event_thread_main (void *arg0) { IOReturn kresult; struct libusb_context *ctx = (struct libusb_context *)arg0; + CFRunLoopRef runloop; /* hotplug (device removal) source */ CFRunLoopSourceRef libusb_notification_cfsource; @@ -270,7 +271,8 @@ static void *event_thread_main (void *arg0) { usbi_info (ctx, "creating hotplug event source"); - CFRetain (CFRunLoopGetCurrent ()); + runloop = CFRunLoopGetCurrent (); + CFRetain (runloop); /* add the notification port to the run loop */ libusb_notification_port = IONotificationPortCreate (libusb_darwin_mp); @@ -306,7 +308,7 @@ static void *event_thread_main (void *arg0) { CFRunLoopSourceInvalidate (libusb_notification_cfsource); IONotificationPortDestroy (libusb_notification_port); - CFRelease (CFRunLoopGetCurrent ()); + CFRelease (runloop); libusb_darwin_acfl = NULL; |