Hi guys, I was trying to fix a bug in GTK ( https://gitlab.gnome.org/GNOME/gtk/issues/1437 ) but I have a few problems integrating my fix with the GTK OSX build system, specifically I'd like to add it like one of the patches in the entry in the moduleset:
[...] <!--patch file=" https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/0004-Bug-571582-GtkSelection-implementation-for-quartz.patch" strip="1"/--> <patch file=" https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/0008-Implement-GtkDragSourceOwner-pasteboardChangedOwner.patch " strip="1"/> <patch file=" https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/patches/0006-Bug-658722-Drag-and-Drop-sometimes-stops-working.patch " strip="1"/> [...] ... in the moduleset file, so, after generating my test patch for gtk 2.24.32 here is what I did: modified: .jhbuildrc-custom to point to a local moduleset: moduleset = "/Users/gabry/projects/gtk-osx/modulesets-stable/gtk-osx.modules" ... edited the given moduleset so that in the "gtk+" module specification there is an addictional line: <patch file="/Users/gabry/projects/patches/fix-cgcontext.patch" strip="1"/> ... fix-cgcontext.patch is a patch in git diff format. jhbuild build gtk+ rebuilds gtk but my patch is not applied (I can check it looking at the source files during compilation) I'm attaching my patch based on the GTK 3.x ones, my goal is to fix the 10.14 dark mode problems of gtk 2.x. ( https://gitlab.gnome.org/GNOME/gtk/issues/1437) I can build GTK using autotools (./configure --prefix /usr/local/gtk --with-gdktarget=quartz --enable-quartz-relocation --disable-introspection) and replacing my local binaries, but I wanted to test the patch in a jhbuild environment... BTW the patch to gtk+ is not enough from what I see there is a problem with CGContext also inside cairo: Assertion failed: (s->stack->next != NULL), function CGGStackRestore, file /BuildRoot/Library/Caches/com.apple.xbs/Sources/CoreGraphics/CoreGraphics-1249.2/CoreGraphics/Context/CGGStack.c, line 77. Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 libsystem_kernel.dylib 0x00007fff7014523e __pthread_kill + 10 1 libsystem_pthread.dylib 0x00007fff701fbc1c pthread_kill + 285 2 libsystem_c.dylib 0x00007fff700ae1c9 abort + 127 3 libsystem_c.dylib 0x00007fff70076868 __assert_rtn + 320 4 com.apple.CoreGraphics 0x00007fff431e817e CGGStackRestore + 143 5 com.apple.CoreGraphics 0x00007fff431e80cf CGContextRestoreGState + 32 6 libcairo.2.dylib 0x00000001069cc6a7 _cairo_quartz_surface_finish + 87 7 libcairo.2.dylib 0x0000000106994eb2 _cairo_surface_finish + 50 8 libcairo.2.dylib 0x00000001069948ed cairo_surface_finish + 125 9 libgdk-quartz-2.0.0.dylib 0x00000001067c14de gdk_window_drop_cairo_surface + 46 10 libgdk-quartz-2.0.0.dylib 0x00000001067c2bd9 _gdk_window_destroy_hierarchy + 1049 11 libgdk-quartz-2.0.0.dylib 0x00000001067c2e0d gdk_window_destroy + 29 12 libgtk-quartz-2.0.0.dylib 0x000000010653d324 gtk_widget_real_unrealize + 260 13 libgtk-quartz-2.0.0.dylib 0x000000010654de6d gtk_window_unrealize + 269 14 libgtk-quartz-2.0.0.dylib 0x0000000106374a90 g_cclosure_marshal_VOID__VOID + 224 -- Bye, Gabry
fix-cgcontext.patch
Description: Binary data
_______________________________________________ gtk-osx-users-list mailing list gtk-osx-users-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-osx-users-list