From 7d5c7f84936ee3062ec49d7da71c1970a19ce669 Mon Sep 17 00:00:00 2001 From: Jonas Kvinge Date: Thu, 3 Aug 2023 17:36:56 +0200 Subject: [PATCH] MacOsDeviceLister: Replace BOOST_SCOPE_EXIT with QScopeGuard --- src/device/macosdevicelister.mm | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/src/device/macosdevicelister.mm b/src/device/macosdevicelister.mm index 4744bbb4b..524a6e725 100644 --- a/src/device/macosdevicelister.mm +++ b/src/device/macosdevicelister.mm @@ -19,8 +19,6 @@ * */ -#include - #include #include @@ -37,6 +35,7 @@ #include #include #include +#include #include "config.h" #include "macosdevicelister.h" @@ -491,10 +490,7 @@ void MacOsDeviceLister::USBDeviceAddedCallback(void *refcon, io_iterator_t it) { io_object_t object; while ((object = IOIteratorNext(it))) { ScopedCFTypeRef class_name(IOObjectCopyClass(object)); - BOOST_SCOPE_EXIT((object)) { - IOObjectRelease(object); - } - BOOST_SCOPE_EXIT_END + const QScopeGuard io_object_release = qScopeGuard([object]() { IOObjectRelease(object); }); if (CFStringCompare(class_name.get(), CFSTR(kIOUSBDeviceClassName), 0) == kCFCompareEqualTo) { NSString *vendor = reinterpret_cast(GetPropertyForDevice(object, CFSTR(kUSBVendorString))); @@ -573,11 +569,10 @@ void MacOsDeviceLister::USBDeviceAddedCallback(void *refcon, io_iterator_t it) { } // Automatically close & release usb device at scope exit. - BOOST_SCOPE_EXIT((dev)) { + const QScopeGuard dev_close_release = qScopeGuard([dev]() { (*dev)->USBDeviceClose(dev); (*dev)->Release(dev); - } - BOOST_SCOPE_EXIT_END + }); // Request the string descriptor at 0xee. // This is a magic string that indicates whether this device supports MTP. @@ -629,8 +624,7 @@ void MacOsDeviceLister::USBDeviceRemovedCallback(void *refcon, io_iterator_t it) io_object_t object; while ((object = IOIteratorNext(it))) { ScopedCFTypeRef class_name(IOObjectCopyClass(object)); - BOOST_SCOPE_EXIT((object)) { IOObjectRelease(object); } - BOOST_SCOPE_EXIT_END + const QScopeGuard io_object_release = qScopeGuard([object]() { IOObjectRelease(object); }); if (CFStringCompare(class_name.get(), CFSTR(kIOUSBDeviceClassName), 0) == kCFCompareEqualTo) { NSString *vendor = reinterpret_cast(GetPropertyForDevice(object, CFSTR(kUSBVendorString)));