After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 691921 - GTK+ (quartz) built on Mac OS X 10.5 references [NSMenu removeAllItems]
GTK+ (quartz) built on Mac OS X 10.5 references [NSMenu removeAllItems]
Status: RESOLVED FIXED
Product: gtk+
Classification: Platform
Component: Printing
3.6.x
Other Mac OS
: Normal major
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2013-01-17 05:19 UTC by Kristoffer Hepler
Modified: 2013-05-20 22:21 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Uses removeItemAtIndex if removeAllItems isn't available. (1.90 KB, patch)
2013-05-03 22:50 UTC, John Ralls
committed Details | Review

Description Kristoffer Hepler 2013-01-17 05:19:18 UTC
Everythig builds fine, but application (transmission-gtk) immediately crashes with an undefined reference to [GNSMenu removeAllItems]:

2013-01-16 21:14:08.009 transmission-gtk[49811:807] *** -[GNSMenu removeAllItems]: unrecognized selector sent to instance 0x143b560

Class reference for NSMenu shows removeAllItems was added in Mac OS X v10.6.  Tested GTK+ versions 3.6.2 and 3.6.4 built as Macports package on Mac OS X 10.5 PowerPC.

NSMenu removeAllItems reference:
http://developer.apple.com/library/mac/documentation/cocoa/reference/ApplicationKit/Classes/NSMenu_Class/Reference/Reference.html#//apple_ref/occ/instm/NSMenu/removeAllItems
Comment 1 Michael Natterer 2013-02-06 22:52:34 UTC
You might not want to hear this, but IMO we should simply drop
support for 10.5 anyway.
Comment 2 John Ralls 2013-02-07 01:16:07 UTC
I can see dropping 10.4, but there are still a fair number of PPC macs out there, and they're stuck at 10.5.
Comment 3 John Ralls 2013-05-03 22:50:29 UTC
Created attachment 243254 [details] [review]
Uses removeItemAtIndex if removeAllItems isn't available.

There aren't any tests for the model-menu stuff AFAICT. Can you check to see if this works in your program?
Comment 4 Kristoffer Hepler 2013-05-04 06:34:27 UTC
The patch to gtk/gtkmodelmenu-quartz.c solves the problem.

However, I've upgraded to GTK+ 3.8.1 since reporting, and the patch to gdk/quartz/gdkdisplay-quartz.c fails.  The referenced chunk doesn't appear in the file.
Comment 5 John Ralls 2013-05-04 14:52:46 UTC
Sorry, the gdkdisplay-quartz change is git-leakage. It's not part of this bug.
Comment 6 John Ralls 2013-05-20 22:20:59 UTC
Comment on attachment 243254 [details] [review]
Uses removeItemAtIndex if removeAllItems isn't available.

And backported to 3.8