[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] ui/cocoa: Fix openFile: deprecation on Big Sur
From: |
Roman Bolshakov |
Subject: |
Re: [PATCH] ui/cocoa: Fix openFile: deprecation on Big Sur |
Date: |
Sat, 2 Jan 2021 17:20:18 +0300 |
On Sat, Jan 02, 2021 at 01:16:48PM +0000, Peter Maydell wrote:
> On Sat, 2 Jan 2021 at 12:52, Roman Bolshakov <r.bolshakov@yadro.com> wrote:
> >
> > ui/cocoa.m:1188:44: warning: 'openFile:' is deprecated: first deprecated in
> > macOS 11.0 - Use -[NSWorkspace openURL:] instead.
> > [-Wdeprecated-declarations]
> > if ([[NSWorkspace sharedWorkspace] openFile: full_file_path] ==
> > YES) {
> > ^
> > /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSWorkspace.h:350:1:
> > note:
> > 'openFile:' has been explicitly marked deprecated here
> > - (BOOL)openFile:(NSString *)fullPath API_DEPRECATED("Use -[NSWorkspace
> > openURL:] instead.", macos(10.0, 11.0));
> > ^
> >
> > Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
> > ---
> > ui/cocoa.m | 4 +++-
> > 1 file changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/ui/cocoa.m b/ui/cocoa.m
> > index f32adc3074..5909758a09 100644
> > --- a/ui/cocoa.m
> > +++ b/ui/cocoa.m
> > @@ -1178,6 +1178,7 @@ QemuCocoaView *cocoaView;
> > /* Where to look for local files */
> > NSString *path_array[] = {@"../share/doc/qemu/", @"../doc/qemu/",
> > @"../docs/"};
> > NSString *full_file_path;
> > + NSURL *full_file_url;
> >
> > /* iterate thru the possible paths until the file is found */
> > int index;
> > @@ -1186,7 +1187,8 @@ QemuCocoaView *cocoaView;
> > full_file_path = [full_file_path
> > stringByDeletingLastPathComponent];
> > full_file_path = [NSString stringWithFormat: @"%@/%@%@",
> > full_file_path,
> > path_array[index], filename];
> > - if ([[NSWorkspace sharedWorkspace] openFile: full_file_path] ==
> > YES) {
> > + full_file_url = [NSURL URLWithString: full_file_path];
> > + if ([[NSWorkspace sharedWorkspace] openURL: full_file_url] == YES)
> > {
> > return;
> > }
>
> The NSURL URLWithString method documentation:
> https://developer.apple.com/documentation/foundation/nsurl/1572047-urlwithstring
> says:
> # Important
> # To create NSURL objects for file system paths, use
> fileURLWithPath:isDirectory:
> # instead.
>
> Should we be doing that instead ?
>
Sure, Peter. I'll update it.
Thanks,
Roman
> thanks
> -- PMM