diff options
author | 2023-06-10 16:47:23 -0400 | |
---|---|---|
committer | 2023-06-10 16:47:23 -0400 | |
commit | 9a446ca92b2c68c9cb0da9a71b21fdfe49da27fc (patch) | |
tree | b90325f30f08f2a2748d2481bc2371ae836f568d /src/osd | |
parent | 3d57b7d120f0b478c95895be31edae8c29eafc13 (diff) |
osd/modules: Cleaned up most macOS deprecation warnings up to and including 10.13. [R. Belmont]
* This raises the hard minimum macOS and SDK versions to 10.13.
* In practice, the minimum since 0.252 has been macOS 11 Big Sur.
* 10.13/10.14/10.15 can be built and run with this unsupported patch: https://gist.github.com/rb6502/8a1736ee3775f998e8e71faa47ae4b59
The patch works for me, but no guarantees are offered and it may break at any time.
Diffstat (limited to 'src/osd')
-rw-r--r-- | src/osd/modules/debugger/debugosx.mm | 6 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/debugconsole.mm | 27 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/debugview.mm | 28 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/debugwindowhandler.mm | 14 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/deviceinfoviewer.mm | 21 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/devicesviewer.mm | 9 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/disassemblyview.mm | 4 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/disassemblyviewer.mm | 11 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/errorlogviewer.mm | 9 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/memoryviewer.mm | 11 | ||||
-rw-r--r-- | src/osd/modules/debugger/osx/pointsviewer.mm | 29 | ||||
-rw-r--r-- | src/osd/modules/sound/coreaudio_sound.cpp | 7 |
12 files changed, 105 insertions, 71 deletions
diff --git a/src/osd/modules/debugger/debugosx.mm b/src/osd/modules/debugger/debugosx.mm index 39689db432e..a4721e4d292 100644 --- a/src/osd/modules/debugger/debugosx.mm +++ b/src/osd/modules/debugger/debugosx.mm @@ -160,7 +160,7 @@ void debugger_osx::wait_for_debugger(device_t &device, bool firststop) } // get and process messages - NSEvent *ev = [NSApp nextEventMatchingMask:NSAnyEventMask + NSEvent *ev = [NSApp nextEventMatchingMask:NSEventMaskAny untilDate:[NSDate distantFuture] inMode:NSDefaultRunLoopMode dequeue:YES]; @@ -236,7 +236,7 @@ void debugger_osx::build_menus() [[debugMenu addItemWithTitle:@"Hard Reset" action:@selector(debugHardReset:) keyEquivalent:[NSString stringWithFormat:@"%C", (short)NSF3FunctionKey]] - setKeyEquivalentModifierMask:NSShiftKeyMask]; + setKeyEquivalentModifierMask:NSEventModifierFlagShift]; NSMenu *const runMenu = [[NSMenu alloc] initWithTitle:@"Run"]; item = [[NSApp mainMenu] insertItemWithTitle:@"Run" @@ -290,7 +290,7 @@ void debugger_osx::build_menus() [[runMenu addItemWithTitle:@"Step Out" action:@selector(debugStepOut:) keyEquivalent:[NSString stringWithFormat:@"%C", (short)NSF10FunctionKey]] - setKeyEquivalentModifierMask:NSShiftKeyMask]; + setKeyEquivalentModifierMask:NSEventModifierFlagShift]; } } diff --git a/src/osd/modules/debugger/osx/debugconsole.mm b/src/osd/modules/debugger/osx/debugconsole.mm index 18fe0607bee..0b7ba082875 100644 --- a/src/osd/modules/debugger/osx/debugconsole.mm +++ b/src/osd/modules/debugger/osx/debugconsole.mm @@ -142,19 +142,28 @@ NSRect const available = [[NSScreen mainScreen] visibleFrame]; NSSize const regCurrent = [regScroll frame].size; NSSize const regSize = [NSScrollView frameSizeForContentSize:[regView maximumFrameSize] - hasHorizontalScroller:YES - hasVerticalScroller:YES - borderType:[regScroll borderType]]; + horizontalScrollerClass:[NSScroller class] + verticalScrollerClass:[NSScroller class] + borderType:[regScroll borderType] + controlSize: NSControlSizeRegular + scrollerStyle: NSScrollerStyleOverlay + ]; NSSize const dasmCurrent = [dasmScroll frame].size; NSSize const dasmSize = [NSScrollView frameSizeForContentSize:[dasmView maximumFrameSize] - hasHorizontalScroller:YES - hasVerticalScroller:YES - borderType:[dasmScroll borderType]]; + horizontalScrollerClass:[NSScroller class] + verticalScrollerClass:[NSScroller class] + borderType:[dasmScroll borderType] + controlSize: NSControlSizeRegular + scrollerStyle: NSScrollerStyleOverlay + ]; NSSize const consoleCurrent = [consoleContainer frame].size; NSSize consoleSize = [NSScrollView frameSizeForContentSize:[consoleView maximumFrameSize] - hasHorizontalScroller:YES - hasVerticalScroller:YES - borderType:[consoleScroll borderType]]; + horizontalScrollerClass:[NSScroller class] + verticalScrollerClass:[NSScroller class] + borderType:[consoleScroll borderType] + controlSize: NSControlSizeRegular + scrollerStyle: NSScrollerStyleOverlay + ]; NSRect windowFrame = [window frame]; NSSize adjustment; diff --git a/src/osd/modules/debugger/osx/debugview.mm b/src/osd/modules/debugger/osx/debugview.mm index cee21540572..ebf4ce257d5 100644 --- a/src/osd/modules/debugger/osx/debugview.mm +++ b/src/osd/modules/debugger/osx/debugview.mm @@ -764,8 +764,8 @@ static void debugwin_view_update(debug_view &view, void *osdprivate) - (void)mouseDown:(NSEvent *)event { NSPoint const location = [self convertPoint:[event locationInWindow] fromView:nil]; NSUInteger const modifiers = [event modifierFlags]; - view->process_click(((modifiers & NSCommandKeyMask) && [[self window] isMainWindow]) ? DCK_RIGHT_CLICK - : (modifiers & NSAlternateKeyMask) ? DCK_MIDDLE_CLICK + view->process_click(((modifiers & NSEventModifierFlagCommand) && [[self window] isMainWindow]) ? DCK_RIGHT_CLICK + : (modifiers & NSEventModifierFlagOption) ? DCK_MIDDLE_CLICK : DCK_LEFT_CLICK, [self convertLocation:location]); } @@ -776,8 +776,8 @@ static void debugwin_view_update(debug_view &view, void *osdprivate) NSPoint const location = [self convertPoint:[event locationInWindow] fromView:nil]; NSUInteger const modifiers = [event modifierFlags]; if (view->cursor_supported() - && !(modifiers & NSAlternateKeyMask) - && (!(modifiers & NSCommandKeyMask) || ![[self window] isMainWindow])) + && !(modifiers & NSEventModifierFlagOption) + && (!(modifiers & NSEventModifierFlagCommand) || ![[self window] isMainWindow])) { view->set_cursor_position([self convertLocation:location]); view->set_cursor_visible(true); @@ -804,34 +804,34 @@ static void debugwin_view_update(debug_view &view, void *osdprivate) if ([str length] == 1) { - if (modifiers & NSNumericPadKeyMask) + if (modifiers & NSEventModifierFlagNumericPad) { switch ([str characterAtIndex:0]) { case NSUpArrowFunctionKey: - if (modifiers & NSCommandKeyMask) + if (modifiers & NSEventModifierFlagCommand) view->process_char(DCH_CTRLHOME); else view->process_char(DCH_UP); return; case NSDownArrowFunctionKey: - if (modifiers & NSCommandKeyMask) + if (modifiers & NSEventModifierFlagCommand) view->process_char(DCH_CTRLEND); else view->process_char(DCH_DOWN); return; case NSLeftArrowFunctionKey: - if (modifiers & NSCommandKeyMask) + if (modifiers & NSEventModifierFlagCommand) [self typeCharacterAndScrollToCursor:DCH_HOME]; - else if (modifiers & NSAlternateKeyMask) + else if (modifiers & NSEventModifierFlagOption) [self typeCharacterAndScrollToCursor:DCH_CTRLLEFT]; else [self typeCharacterAndScrollToCursor:DCH_LEFT]; return; case NSRightArrowFunctionKey: - if (modifiers & NSCommandKeyMask) + if (modifiers & NSEventModifierFlagCommand) [self typeCharacterAndScrollToCursor:DCH_END]; - else if (modifiers & NSAlternateKeyMask) + else if (modifiers & NSEventModifierFlagOption) [self typeCharacterAndScrollToCursor:DCH_CTRLRIGHT]; else [self typeCharacterAndScrollToCursor:DCH_RIGHT]; @@ -841,18 +841,18 @@ static void debugwin_view_update(debug_view &view, void *osdprivate) return; } } - else if (modifiers & NSFunctionKeyMask) + else if (modifiers & NSEventModifierFlagFunction) { switch ([str characterAtIndex:0]) { case NSPageUpFunctionKey: - if (modifiers & NSAlternateKeyMask) + if (modifiers & NSEventModifierFlagOption) { view->process_char(DCH_PUP); return; } case NSPageDownFunctionKey: - if (modifiers & NSAlternateKeyMask) + if (modifiers & NSEventModifierFlagOption) { view->process_char(DCH_PDOWN); return; diff --git a/src/osd/modules/debugger/osx/debugwindowhandler.mm b/src/osd/modules/debugger/osx/debugwindowhandler.mm index ce824080c3d..1341f420ed9 100644 --- a/src/osd/modules/debugger/osx/debugwindowhandler.mm +++ b/src/osd/modules/debugger/osx/debugwindowhandler.mm @@ -79,7 +79,7 @@ NSString *const MAMESaveDebuggerConfigurationNotification = @"MAMESaveDebuggerCo [[stepMenu addItemWithTitle:@"Out" action:@selector(debugStepOut:) keyEquivalent:[NSString stringWithFormat:@"%C", (short)NSF10FunctionKey]] - setKeyEquivalentModifierMask:NSShiftKeyMask]; + setKeyEquivalentModifierMask:NSEventModifierFlagShift]; NSMenuItem *resetParentItem = [menu addItemWithTitle:@"Reset" action:NULL keyEquivalent:@""]; NSMenu *resetMenu = [[NSMenu alloc] initWithTitle:@"Reset"]; @@ -92,7 +92,7 @@ NSString *const MAMESaveDebuggerConfigurationNotification = @"MAMESaveDebuggerCo [[resetMenu addItemWithTitle:@"Hard" action:@selector(debugHardReset:) keyEquivalent:[NSString stringWithFormat:@"%C", (short)NSF3FunctionKey]] - setKeyEquivalentModifierMask:NSShiftKeyMask]; + setKeyEquivalentModifierMask:NSEventModifierFlagShift]; [menu addItem:[NSMenuItem separatorItem]]; @@ -127,7 +127,7 @@ NSString *const MAMESaveDebuggerConfigurationNotification = @"MAMESaveDebuggerCo NSPopUpButton *actionButton = [[NSPopUpButton alloc] initWithFrame:frame pullsDown:YES]; [actionButton setTitle:@""]; [actionButton addItemWithTitle:@""]; - [actionButton setBezelStyle:NSShadowlessSquareBezelStyle]; + [actionButton setBezelStyle:NSBezelStyleShadowlessSquare]; [actionButton setFocusRingType:NSFocusRingTypeNone]; [[actionButton cell] setArrowPosition:NSPopUpArrowAtCenter]; [[self class] addCommonActionItems:[actionButton menu]]; @@ -140,10 +140,10 @@ NSString *const MAMESaveDebuggerConfigurationNotification = @"MAMESaveDebuggerCo return nil; window = [[NSWindow alloc] initWithContentRect:NSMakeRect(0, 0, 320, 240) - styleMask:(NSTitledWindowMask | - NSClosableWindowMask | - NSMiniaturizableWindowMask | - NSResizableWindowMask) + styleMask:(NSWindowStyleMaskTitled | + NSWindowStyleMaskClosable | + NSWindowStyleMaskMiniaturizable | + NSWindowStyleMaskResizable) backing:NSBackingStoreBuffered defer:YES]; [window setReleasedWhenClosed:NO]; diff --git a/src/osd/modules/debugger/osx/deviceinfoviewer.mm b/src/osd/modules/debugger/osx/deviceinfoviewer.mm index 49ab79dedb8..a60ba02a5c2 100644 --- a/src/osd/modules/debugger/osx/deviceinfoviewer.mm +++ b/src/osd/modules/debugger/osx/deviceinfoviewer.mm @@ -54,14 +54,14 @@ - (NSTextField *)makeLabel:(NSString *)text { NSTextField *const result = [[NSTextField alloc] initWithFrame:NSMakeRect(0, 0, 100, 14)]; [result setAutoresizingMask:(NSViewMaxYMargin | NSViewMaxXMargin)]; - [[result cell] setControlSize:NSSmallControlSize]; + [[result cell] setControlSize:NSControlSizeSmall]; [result setEditable:NO]; [result setSelectable:NO]; [result setBezeled:NO]; [result setBordered:NO]; [result setDrawsBackground:NO]; - [result setAlignment:NSRightTextAlignment]; - [result setFont:[NSFont systemFontOfSize:[NSFont systemFontSizeForControlSize:NSSmallControlSize]]]; + [result setAlignment:NSTextAlignmentRight]; + [result setFont:[NSFont systemFontOfSize:[NSFont systemFontSizeForControlSize:NSControlSizeSmall]]]; [result setStringValue:text]; [result sizeToFit]; return result; @@ -71,14 +71,14 @@ - (NSTextField *)makeField:(NSString *)text { NSTextField *const result = [[NSTextField alloc] initWithFrame:NSMakeRect(0, 0, 100, 14)]; [result setAutoresizingMask:(NSViewWidthSizable | NSViewMaxYMargin)]; - [[result cell] setControlSize:NSSmallControlSize]; + [[result cell] setControlSize:NSControlSizeSmall]; [result setEditable:NO]; [result setSelectable:YES]; [result setBezeled:NO]; [result setBordered:NO]; [result setDrawsBackground:NO]; - [result setAlignment:NSLeftTextAlignment]; - [result setFont:[NSFont systemFontOfSize:[NSFont systemFontSizeForControlSize:NSSmallControlSize]]]; + [result setAlignment:NSTextAlignmentLeft]; + [result setFont:[NSFont systemFontOfSize:[NSFont systemFontSizeForControlSize:NSControlSizeSmall]]]; [result setStringValue:text]; [result sizeToFit]; return result; @@ -210,9 +210,12 @@ // create a scroll view for holding everything NSSize desired = [NSScrollView frameSizeForContentSize:[contentView frame].size - hasHorizontalScroller:YES - hasVerticalScroller:YES - borderType:NSNoBorder]; + horizontalScrollerClass:[NSScroller class] + verticalScrollerClass:[NSScroller class] + borderType: NSNoBorder + controlSize: NSControlSizeRegular + scrollerStyle: NSScrollerStyleOverlay + ]; [window setContentSize:desired]; contentScroll = [[NSScrollView alloc] initWithFrame:[[window contentView] bounds]]; [contentScroll setDrawsBackground:NO]; diff --git a/src/osd/modules/debugger/osx/devicesviewer.mm b/src/osd/modules/debugger/osx/devicesviewer.mm index 0ec4047ec63..4241aab3e90 100644 --- a/src/osd/modules/debugger/osx/devicesviewer.mm +++ b/src/osd/modules/debugger/osx/devicesviewer.mm @@ -161,9 +161,12 @@ // calculate the optimal size for everything NSSize const desired = [NSScrollView frameSizeForContentSize:NSMakeSize(480, 320) - hasHorizontalScroller:YES - hasVerticalScroller:YES - borderType:[devicesScroll borderType]]; + horizontalScrollerClass:[NSScroller class] + verticalScrollerClass:[NSScroller class] + borderType:[devicesScroll borderType] + controlSize: NSControlSizeRegular + scrollerStyle: NSScrollerStyleOverlay + ]; [self cascadeWindowWithDesiredSize:desired forView:devicesScroll]; // don't forget the result diff --git a/src/osd/modules/debugger/osx/disassemblyview.mm b/src/osd/modules/debugger/osx/disassemblyview.mm index 0f703d8c7f1..c501d17230a 100644 --- a/src/osd/modules/debugger/osx/disassemblyview.mm +++ b/src/osd/modules/debugger/osx/disassemblyview.mm @@ -75,7 +75,7 @@ item = [menu addItemWithTitle:@"Disable Breakpoint" action:@selector(debugToggleBreakpointEnable:) keyEquivalent:[NSString stringWithFormat:@"%C", (short)NSF9FunctionKey]]; - [item setKeyEquivalentModifierMask:NSShiftKeyMask]; + [item setKeyEquivalentModifierMask:NSEventModifierFlagShift]; [menu addItem:[NSMenuItem separatorItem]]; @@ -214,7 +214,7 @@ action:@selector(debugToggleBreakpointEnable:) keyEquivalent:[NSString stringWithFormat:@"%C", (short)NSF9FunctionKey] atIndex:index++]; - [disableItem setKeyEquivalentModifierMask:NSShiftKeyMask]; + [disableItem setKeyEquivalentModifierMask:NSEventModifierFlagShift]; NSMenu *runMenu = [[menu itemWithTitle:@"Run"] submenu]; NSMenuItem *runItem; diff --git a/src/osd/modules/debugger/osx/disassemblyviewer.mm b/src/osd/modules/debugger/osx/disassemblyviewer.mm index 97e23c9a0cd..9cd714708c7 100644 --- a/src/osd/modules/debugger/osx/disassemblyviewer.mm +++ b/src/osd/modules/debugger/osx/disassemblyviewer.mm @@ -49,7 +49,7 @@ expressionFrame.size.width, 0)]; [subviewButton setAutoresizingMask:(NSViewWidthSizable | NSViewMinXMargin | NSViewMinYMargin)]; - [subviewButton setBezelStyle:NSShadowlessSquareBezelStyle]; + [subviewButton setBezelStyle:NSBezelStyleShadowlessSquare]; [subviewButton setFocusRingType:NSFocusRingTypeNone]; [subviewButton setFont:defaultFont]; [subviewButton setTarget:self]; @@ -120,9 +120,12 @@ // calculate the optimal size for everything NSSize const desired = [NSScrollView frameSizeForContentSize:[dasmView maximumFrameSize] - hasHorizontalScroller:YES - hasVerticalScroller:YES - borderType:[dasmScroll borderType]]; + horizontalScrollerClass:[NSScroller class] + verticalScrollerClass:[NSScroller class] + borderType:[dasmScroll borderType] + controlSize: NSControlSizeRegular + scrollerStyle: NSScrollerStyleOverlay + ]; [self cascadeWindowWithDesiredSize:desired forView:dasmScroll]; // don't forget the result diff --git a/src/osd/modules/debugger/osx/errorlogviewer.mm b/src/osd/modules/debugger/osx/errorlogviewer.mm index 3b1a58f485b..5c392b9cd6b 100644 --- a/src/osd/modules/debugger/osx/errorlogviewer.mm +++ b/src/osd/modules/debugger/osx/errorlogviewer.mm @@ -43,9 +43,12 @@ // calculate the optimal size for everything { NSSize desired = [NSScrollView frameSizeForContentSize:[logView maximumFrameSize] - hasHorizontalScroller:YES - hasVerticalScroller:YES - borderType:[logScroll borderType]]; + horizontalScrollerClass:[NSScroller class] + verticalScrollerClass:[NSScroller class] + borderType:[logScroll borderType] + controlSize: NSControlSizeRegular + scrollerStyle: NSScrollerStyleOverlay + ]; // this thing starts with no content, so its prefered height may be very small desired.height = std::max(desired.height, CGFloat(240)); diff --git a/src/osd/modules/debugger/osx/memoryviewer.mm b/src/osd/modules/debugger/osx/memoryviewer.mm index b9c38bbd4d2..f5de21571bf 100644 --- a/src/osd/modules/debugger/osx/memoryviewer.mm +++ b/src/osd/modules/debugger/osx/memoryviewer.mm @@ -46,7 +46,7 @@ // create the subview popup subviewButton = [[NSPopUpButton alloc] initWithFrame:NSMakeRect(0, 0, 100, 19)]; [subviewButton setAutoresizingMask:(NSViewWidthSizable | NSViewMinXMargin | NSViewMinYMargin)]; - [subviewButton setBezelStyle:NSShadowlessSquareBezelStyle]; + [subviewButton setBezelStyle:NSBezelStyleShadowlessSquare]; [subviewButton setFocusRingType:NSFocusRingTypeNone]; [subviewButton setFont:defaultFont]; [subviewButton setTarget:self]; @@ -118,9 +118,12 @@ // calculate the optimal size for everything NSSize const desired = [NSScrollView frameSizeForContentSize:[memoryView maximumFrameSize] - hasHorizontalScroller:YES - hasVerticalScroller:YES - borderType:[memoryScroll borderType]]; + horizontalScrollerClass:[NSScroller class] + verticalScrollerClass:[NSScroller class] + borderType:[memoryScroll borderType] + controlSize: NSControlSizeRegular + scrollerStyle: NSScrollerStyleOverlay + ]; [self cascadeWindowWithDesiredSize:desired forView:memoryScroll]; // don't forget the result diff --git a/src/osd/modules/debugger/osx/pointsviewer.mm b/src/osd/modules/debugger/osx/pointsviewer.mm index 215ad163087..2a12d628236 100644 --- a/src/osd/modules/debugger/osx/pointsviewer.mm +++ b/src/osd/modules/debugger/osx/pointsviewer.mm @@ -33,7 +33,7 @@ // create the subview popup subviewButton = [[NSPopUpButton alloc] initWithFrame:NSMakeRect(0, 0, 100, 19)]; [subviewButton setAutoresizingMask:(NSViewWidthSizable | NSViewMinYMargin)]; - [subviewButton setBezelStyle:NSShadowlessSquareBezelStyle]; + [subviewButton setBezelStyle:NSBezelStyleShadowlessSquare]; [subviewButton setFocusRingType:NSFocusRingTypeNone]; [subviewButton setFont:defaultFont]; [subviewButton setTarget:self]; @@ -139,17 +139,26 @@ // calculate the optimal size for everything NSSize const breakDesired = [NSScrollView frameSizeForContentSize:[breakView maximumFrameSize] - hasHorizontalScroller:YES - hasVerticalScroller:YES - borderType:[breakScroll borderType]]; + horizontalScrollerClass:[NSScroller class] + verticalScrollerClass:[NSScroller class] + borderType:[breakScroll borderType] + controlSize: NSControlSizeRegular + scrollerStyle: NSScrollerStyleOverlay + ]; NSSize const watchDesired = [NSScrollView frameSizeForContentSize:[watchView maximumFrameSize] - hasHorizontalScroller:YES - hasVerticalScroller:YES - borderType:[watchScroll borderType]]; + horizontalScrollerClass:[NSScroller class] + verticalScrollerClass:[NSScroller class] + borderType:[watchScroll borderType] + controlSize: NSControlSizeRegular + scrollerStyle: NSScrollerStyleOverlay + ]; NSSize const registerDesired = [NSScrollView frameSizeForContentSize:[registerView maximumFrameSize] - hasHorizontalScroller:YES - hasVerticalScroller:YES - borderType:[registerScroll borderType]]; + horizontalScrollerClass:[NSScroller class] + verticalScrollerClass:[NSScroller class] + borderType:[registerScroll borderType] + controlSize: NSControlSizeRegular + scrollerStyle: NSScrollerStyleOverlay + ]; NSSize const desired = NSMakeSize(std::max({ breakDesired.width, watchDesired.width, registerDesired.width }), std::max({ breakDesired.height, watchDesired.height, registerDesired.height })); [self cascadeWindowWithDesiredSize:desired forView:tabs]; diff --git a/src/osd/modules/sound/coreaudio_sound.cpp b/src/osd/modules/sound/coreaudio_sound.cpp index 408fe9e3991..2cdb9291168 100644 --- a/src/osd/modules/sound/coreaudio_sound.cpp +++ b/src/osd/modules/sound/coreaudio_sound.cpp @@ -927,16 +927,17 @@ CFPropertyListRef sound_coreaudio::load_property_list(char const *name) const return nullptr; } - CFStringRef msg = nullptr; - CFPropertyListRef const result = CFPropertyListCreateFromXMLData( + CFErrorRef msg = nullptr; + CFPropertyListRef const result = CFPropertyListCreateWithData( nullptr, data, kCFPropertyListImmutable, + nullptr, &msg); CFRelease(data); if ((nullptr == result) || (nullptr != msg)) { - std::unique_ptr<char []> const buf = (nullptr != msg) ? convert_cfstring_to_utf8(msg) : nullptr; + std::unique_ptr<char []> const buf = (nullptr != msg) ? convert_cfstring_to_utf8(CFErrorCopyDescription(msg)) : nullptr; if (nullptr != msg) CFRelease(msg); |