2021年3月9日(火) 22:10 BALATON Zoltan <[email protected]>: > > On Tue, 9 Mar 2021, Akihiko Odaki wrote: > > The first argument of the executable was used to get its path, but it is > > not reliable because the executer can specify any arbitrary string. Use the > > interfaces provided by QEMU and the platform to get those paths. > > > > Signed-off-by: Akihiko Odaki <[email protected]> > > --- > > ui/cocoa.m | 29 +++++++++++++++-------------- > > 1 file changed, 15 insertions(+), 14 deletions(-) > > > > diff --git a/ui/cocoa.m b/ui/cocoa.m > > index d8eacea6d22..6e94301c0d6 100644 > > --- a/ui/cocoa.m > > +++ b/ui/cocoa.m > > @@ -1414,20 +1414,21 @@ - (void)make_about_window > > [superView addSubview: picture_view]; > > > > /* Make the name label */ > > - x = 0; > > - y = y - 25; > > - int name_width = about_width, name_height = 20; > > - NSRect name_rect = NSMakeRect(x, y, name_width, name_height); > > - NSTextField *name_label = [[NSTextField alloc] initWithFrame: > > name_rect]; > > - [name_label setEditable: NO]; > > - [name_label setBezeled: NO]; > > - [name_label setDrawsBackground: NO]; > > - [name_label setAlignment: NSTextAlignmentCenter]; > > - NSString *qemu_name = [[NSString alloc] initWithCString: gArgv[0] > > - encoding: > > NSASCIIStringEncoding]; > > - qemu_name = [qemu_name lastPathComponent]; > > - [name_label setStringValue: qemu_name]; > > - [superView addSubview: name_label]; > > + NSBundle *bundle = [NSBundle mainBundle]; > > + if (bundle) { > > Does this break about window if the executable is not in a bundle (like > when run from the command line after compiling)? Shouldn't you only put > the qemu_name in this if and have some default name if bundle is not > available (or fall back to argv[0] in that case? > > Regards, > BALATON Zoltan >
No, it just doesn't show the application name. Everything else is fine. Regards, Akihiko Odaki
