GNOME Bugzilla – Bug 731437
Make it work with gegl-0.3
Last modified: 2015-01-23 07:54:09 UTC
using gnome-photos-3.10.2 with gegl-0.3.0 (needed to compile the gtk3 version of gimp) gives a segfault when clicking on a gnome-photos thumbnail. Is gnome-photos looking for an undelying gegl dependency to open the image (jpeg) that is not present perhaps? ---------- Jun 9 20:11:14 box daemon.info dleyna-renderer-service[25310]: Load file [/home/tc/.config/dleyna-renderer-service.conf] Jun 9 20:11:14 box daemon.info dleyna-renderer-service[25310]: [General settings] Jun 9 20:11:14 box daemon.info dleyna-renderer-service[25310]: Never Quit: F Jun 9 20:11:14 box daemon.info dleyna-renderer-service[25310]: Connector Name: dbus Jun 9 20:11:14 box daemon.info dleyna-renderer-service[25310]: [Logging settings] Jun 9 20:11:14 box daemon.info dleyna-renderer-service[25310]: Log Type : 0 Jun 9 20:11:14 box daemon.info dleyna-renderer-service[25310]: Log Level: 0x13 Jun 9 20:11:14 box daemon.info dleyna-renderer-service[25310]: [Network filtering settings] Jun 9 20:11:14 box daemon.info dleyna-renderer-service[25310]: Enabled : F Jun 9 20:11:14 box daemon.info dleyna-renderer-service[25310]: Entries: (null) Jun 9 20:11:14 box daemon.info dleyna-renderer-service[25310]: Calling GetRenderers method Jun 9 16:11:24 box user.info kernel: gnome-photos[25305]: segfault at 30 ip 00007f14a39a1e2d sp 00007fffb1f45920 error 4 in libgegl-0.3.so.0.299.1[7f14a396c000+77000] Jun 9 20:11:24 box daemon.info dleyna-renderer-service[25310]: Client :1.35 lost Jun 9 20:11:25 box daemon.info dleyna-renderer-service[25310]: dLeyna: Exit
Can I please have a backtrace from GDB? Or the image that is causing it to crash?
The crash happens with any image found by tracker. I'm unable to get a backtrace using gdb - rather than gnome-photos displaying image thumbnails as when started normally, if start it with gdb, gnome-photos opens and displays the following: Unable to fetch the list of photos 1.1105: syntax error, expected `}'
I don't know if it would help, but here is the gdb backtrace from the original gnome-photos (with debugging symbols stripped out unfortunately). $ G_DEBUG=fatal_warnings gdb --args gnome-photos GNU gdb (GDB) 7.5.1 ... Reading symbols from /usr/local/bin/gnome-photos...(no debugging symbols found)...done. (gdb) run Starting program: /usr/local/bin/gnome-photos Program received signal SIGSEGV, Segmentation fault. 0x00007ffff75d9e2d in gegl_node_get_bounding_box () from /usr/local/lib/libgegl-0.3.so.0 (gdb) bt
+ Trace 233755
Continuing. [LWP 28003 exited] Program terminated with signal SIGSEGV, Segmentation fault. The program no longer exists.
I recompiled gegl and gnome-photos with "-ggdb" and have managed to get the gdb backtrace. It's not obvious which file gnome-photos thinks is missing? $ G_DEBUG=fatal_warnings gdb --args gnome-photos GNU gdb (GDB) 7.5.1 ... Program received signal SIGSEGV, Segmentation fault. gegl_node_get_bounding_box (self=0x0) at gegl-node.c:1622 1622 gegl-node.c: No such file or directory. (gdb) bt
+ Trace 233761
Continuing. [LWP 4006 exited] [LWP 3992 exited] Program terminated with signal SIGSEGV, Segmentation fault. The program no longer exists.
Do you see any messages from GEGL about missing decoders for your image? Which version of gegl is this? 0.2.0?
No messages from gegl about missing decoders. As mentioned above, gegl-0.3.0 (needed to compile the gtk3 version of gimp)
(In reply to comment #6) > As mentioned above, gegl-0.3.0 (needed to compile the gtk3 version > of gimp) Oh, yes. Sorry for not noticing it earlier. This is known. We need to make it work with gegl-0.3.
Created attachment 280082 [details] [review] Prevent a crash when compiled with gegl-0.3
The patch fixed the problem - thanks. BTW, the configure script needs to be adjusted so that it checks for and accepts both gegl-0.2*.pc and gegl-0.3*.pc files.
Review of attachment 280082 [details] [review]: Thanks for the patch, Pranav. ::: src/photos-preview-view.c @@ +278,2 @@ priv->node = g_object_ref (node); + gegl_gtk_view_set_node (GEGL_GTK_VIEW (priv->view), priv->node); Doesn't look correct to drop the g_object_ref
Created attachment 293642 [details] [review] Make photos work with gegl-0.3 It prevents the application crash when compiled with gegl-0.3
Review of attachment 293642 [details] [review]: Well, I noticed this patch "used" to cure the crash initially but with gegl-master it still crashes the application atleast in my case.
I have been playing around with this. I created gegl, babl master rpm packages for fedora 21. I am attaching the rpm packages here if anyone working on this needs them.
(In reply to comment #13) > I have been playing around with this. I created gegl, babl master rpm packages > for fedora 21. I am attaching the rpm packages here if anyone working on this > needs them. We don't need the RPM packages now. We will only need them if we decide to bump our gegl requirement to 0.3. For the time being people can just compile gegl from Git to try things out.
Created attachment 295255 [details] [review] gegl-gtk-view-helper: Fix crash when setting autoscale without a node
Created attachment 295256 [details] [review] preview-view: Guard against NULL node
You still need to edit configure.ac to build against gegl-0.3. In the very short term future, we will either just move to gegl-0.3, or support both 0.2 and 0.3. It depends on whether we can start shipping gegl-0.3 snapshots in distributions and whether we start depending on features that are only present in 0.3.