[MacPorts] #29659: gtk3 is broken on macs(all versions)
#29659: gtk3 is broken on macs(all versions) -----------------------------------+---------------------------------------- Reporter: krugomvolki@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: gtk3 -----------------------------------+---------------------------------------- copy&paste, drag-n-drop are broken on mac port of gtk3 due to null or uninitialized pointers being dereferenced how to reproduce: build gtk3 with +no_x11 +quartz variants, run gtk3-demo, select "clipboard" demo. try to paste text by pressing the button "paste" and see warning in console: assertion GDK_IS_DISPLAY(...) failed. text in not inserted in the text field; try to drag an image at the bottom of window, program crashes with bus error. last 2 calls in call stack are: #0 0x006c605a in gtk_style_context_save (context=0x14) at gtkstylecontext.c:1727 #1 0x007b099e in gtk_drag_highlight_draw (widget=0x14, cr=0x24a160, data=0x0) at gtkdnd-quartz.c:352 in order to fix these bugs, the following functions must be patched: gtk_clipboard_wait_for_contents() in gtk/gtkclipboard-quartz.c selection_data = g_slice_new0 (GtkSelectionData); selection_data->selection = clipboard->selection; selection_data->target = target; //FIX: set display!!!!! selection_data->display=clipboard->display; and selection_data = _gtk_quartz_get_selection_data_from_pasteboard (clipboard->pasteboard, target, clipboard->selection); //FIX: set display!!!!! if(selection_data)selection_data->display=clipboard->display; in gtk/gtkdnd-quartz.c, gtk_style_context_save() //GtkStyleContext *context; //FIX: initialize pointer before using it!!!! GtkStyleContext *context=gtk_widget_get_style_context (widget); gtk_style_context_save (context); after these patches, i've got gtk3 working properly on mac os 10.5 see also: https://bugzilla.gnome.org/show_bug.cgi?id=651224 -- Ticket URL: <https://trac.macports.org/ticket/29659> MacPorts <http://www.macports.org/> Ports system for Mac OS
#29659: gtk3 is broken on macs(all versions) -----------------------------------+---------------------------------------- Reporter: krugomvolki@… | Owner: singingwolfboy@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: gtk3 -----------------------------------+---------------------------------------- Changes (by macsforever2000@…): * owner: macports-tickets@… => singingwolfboy@… Old description:
copy&paste, drag-n-drop are broken on mac port of gtk3 due to null or uninitialized pointers being dereferenced
how to reproduce: build gtk3 with +no_x11 +quartz variants, run gtk3-demo, select "clipboard" demo. try to paste text by pressing the button "paste" and see warning in console: assertion GDK_IS_DISPLAY(...) failed. text in not inserted in the text field; try to drag an image at the bottom of window, program crashes with bus error. last 2 calls in call stack are: #0 0x006c605a in gtk_style_context_save (context=0x14) at gtkstylecontext.c:1727 #1 0x007b099e in gtk_drag_highlight_draw (widget=0x14, cr=0x24a160, data=0x0) at gtkdnd-quartz.c:352
in order to fix these bugs, the following functions must be patched: gtk_clipboard_wait_for_contents() in gtk/gtkclipboard-quartz.c
selection_data = g_slice_new0 (GtkSelectionData); selection_data->selection = clipboard->selection; selection_data->target = target; //FIX: set display!!!!! selection_data->display=clipboard->display;
and
selection_data = _gtk_quartz_get_selection_data_from_pasteboard (clipboard->pasteboard, target, clipboard->selection); //FIX: set display!!!!! if(selection_data)selection_data->display=clipboard->display;
in gtk/gtkdnd-quartz.c, gtk_style_context_save()
//GtkStyleContext *context; //FIX: initialize pointer before using it!!!! GtkStyleContext *context=gtk_widget_get_style_context (widget); gtk_style_context_save (context);
after these patches, i've got gtk3 working properly on mac os 10.5 see also: https://bugzilla.gnome.org/show_bug.cgi?id=651224
New description: copy&paste, drag-n-drop are broken on mac port of gtk3 due to null or uninitialized pointers being dereferenced how to reproduce: build gtk3 with +no_x11 +quartz variants, run gtk3-demo, select "clipboard" demo. try to paste text by pressing the button "paste" and see warning in console: assertion GDK_IS_DISPLAY(...) failed. text in not inserted in the text field; try to drag an image at the bottom of window, program crashes with bus error. last 2 calls in call stack are: {{{ #0 0x006c605a in gtk_style_context_save (context=0x14) at gtkstylecontext.c:1727 #1 0x007b099e in gtk_drag_highlight_draw (widget=0x14, cr=0x24a160, data=0x0) at gtkdnd-quartz.c:352 }}} in order to fix these bugs, the following functions must be patched: gtk_clipboard_wait_for_contents() in gtk/gtkclipboard-quartz.c {{{ selection_data = g_slice_new0 (GtkSelectionData); selection_data->selection = clipboard->selection; selection_data->target = target; //FIX: set display!!!!! selection_data->display=clipboard->display; }}} and {{{ selection_data = _gtk_quartz_get_selection_data_from_pasteboard (clipboard->pasteboard, target, clipboard->selection); //FIX: set display!!!!! if(selection_data)selection_data->display=clipboard->display; }}} in gtk/gtkdnd-quartz.c, gtk_style_context_save() {{{ //GtkStyleContext *context; //FIX: initialize pointer before using it!!!! GtkStyleContext *context=gtk_widget_get_style_context (widget); gtk_style_context_save (context); }}} after these patches, i've got gtk3 working properly on mac os 10.5 see also: https://bugzilla.gnome.org/show_bug.cgi?id=651224 -- Comment: In the future, please use WikiFormatting and the Preview button to check. Also please Cc the maintainer(s). I have fixed these for you. -- Ticket URL: <https://trac.macports.org/ticket/29659#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#29659: gtk3 is broken on macs(all versions) -----------------------------------+---------------------------------------- Reporter: krugomvolki@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Keywords: | Port: gtk3 -----------------------------------+---------------------------------------- Changes (by jmr@…): * owner: singingwolfboy@… => macports-tickets@… Comment: -> nomaintainer Is this still an issue with 3.0.12? -- Ticket URL: <https://trac.macports.org/ticket/29659#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#29659: gtk3 is broken on macs(all versions) ------------------------------------+--------------------------------------- Reporter: krugomvolki@… | Owner: macports-tickets@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.9.2 Resolution: worksforme | Keywords: Port: gtk3 | ------------------------------------+--------------------------------------- Changes (by cal@…): * status: new => closed * resolution: => worksforme Comment: Works for me. -- Ticket URL: <https://trac.macports.org/ticket/29659#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts