Explaining it further:
- !bundleName returns true if the bundleName pointer is null, and that would attribute "Wine" then. If false, there is a string, so it would look at the next condition.
- [bundleName lenght] returns an int with the length of the string, and ! turn 0 into 1 (true) and any other number into 0 (false). So ![bundleName lenght] will return true only if it's an empty string (""), and that would also attribute "Wine".
Yes it is. You see, ![bundleName lenght] return true if the bundleName string has size 0. It was even in the original code if you scroll down a bit (just without the !).
Em 5h46 Qui, 11/06/2015, Huw Davies <huw@codeweavers.com> escreveu:On Wed, Jun 10, 2015 at 11:48:35AM -0300, Vitor Marques wrote:
> Although I have not tested, the changes are simple enough
> to be analyzed in sight.
Indeed they are, see below. You really do need to test your patches.
And yes, gmail messed up the whitespace.
> diff --git a/dlls/winemac.drv/cocoa_app.m b/dlls/winemac.drv/cocoa_app.m
> index 82925c8..a9d98c6 100644
> --- a/dlls/winemac.drv/cocoa_app.m
> +++ b/dlls/winemac.drv/cocoa_app.m
> @@ -214,14 +214,14 @@ - (void) transformProcessToForeground
>
> mainMenu = [[[NSMenu alloc] init] autorelease];
>
> - // Application menu
> - submenu = [[[NSMenu alloc] initWithTitle:@"Wine"] autorelease];
> + // Application name
> bundleName = [[NSBundle mainBundle] objectForInfoDictionaryKey:(NSString*)kCFBundleNameKey];
> + if (!bundleName || ![bundleName lenght]) bundleName = @"Wine";
"lenght" is not what you want here.
Huw.