[ubuntu-mono] [Bug 291189] Re: f-spot crashes on startup when color management enabled

Bug Watch Updater 291189 at bugs.launchpad.net
Thu Sep 16 07:22:21 BST 2010


** Changed in: f-spot
   Importance: Unknown => Critical

-- 
f-spot crashes on startup when color management enabled
https://bugs.launchpad.net/bugs/291189
You received this bug notification because you are a member of Ubuntu
CLI/Mono Uploaders, which is subscribed to f-spot in ubuntu.

Status in Personal photo management for the GNOME desktop: Fix Released
Status in “f-spot” package in Ubuntu: Fix Released
Status in “f-spot” source package in Intrepid: Fix Released
Status in “f-spot” source package in Jaunty: Fix Released

Bug description:
Binary package hint: f-spot

1) Interpid, upgraded from Hardy on the release date, amd64
2) f-spot 0.5.0.3-0ubuntu2
3) f-spot starts with color managed display
4) When I enable color management from f-spot's preferences menu, f-spot won't start anymore. Starting it from a console gives
$ f-spot
[Info  17:33:27.950] Initializing DBus
[Info  17:33:28.056] Initializing Mono.Addins
[Info  17:33:28.418] Starting new FSpot server
error checking orientation
[Info  17:33:30.103] Starting BeagleService
[Info  17:33:30.103] Hack for gnome-settings-daemon engaged

(f-spot:7434): GdkPixbuf-WARNING **: GdkPixbufLoader finalized without calling gdk_pixbuf_loader_close() - this is not allowed. You must explicitly end the data stream to the loader before dropping the last reference.
error checking orientation
[Info  17:33:39.553] Exiting
rose at harper:~$ f-spot
[Info  17:33:41.237] Initializing DBus
[Info  17:33:41.323] Initializing Mono.Addins
[Info  17:33:41.455] Starting new FSpot server
error checking orientation
[Info  17:33:42.425] Starting BeagleService
[Info  17:33:42.425] Hack for gnome-settings-daemon engaged
Exception in Gtk# callback delegate
  Note: Applications can use GLib.ExceptionManager.UnhandledException to handle the exception.
System.NullReferenceException: Object reference not set to an instance of an object
  at TagSelectionWidget.IconDataFunc (Gtk.TreeViewColumn column, Gtk.CellRenderer renderer, TreeModel model, TreeIter iter) [0x00000] 
  at GtkSharp.TreeCellDataFuncWrapper.NativeCallback (IntPtr tree_column, IntPtr cell, IntPtr tree_model, IntPtr iter, IntPtr data) [0x00000] 
   at GLib.ExceptionManager.RaiseUnhandledException(System.Exception e, Boolean is_terminal)
   at GtkSharp.TreeCellDataFuncWrapper.NativeCallback(IntPtr tree_column, IntPtr cell, IntPtr tree_model, IntPtr iter, IntPtr data)
   at GtkSharp.TreeCellDataFuncWrapper.NativeCallback(IntPtr , IntPtr , IntPtr , IntPtr , IntPtr )
   at Gtk.Application.gtk_main()
   at Gtk.Application.gtk_main()
   at Gtk.Application.Run()
   at Gnome.Program.Run()
   at FSpot.Driver.Main(System.String[] args)


I can disable color management via gconf-editor and it starts flawlessly again.

==========

The impact of this bug is that if a user enables Color Management out of curiosity, F-Spot will not work next start next time they try to use it. Although the user can fix it by changing a gconf key, this will not be obvious to most users.

The bug has been addressed by backporting the patch from SVN. The crash is caused because a null check is performed on the wrong object, and the patch attached addresses this.

TEST CASE:
1) With F-Spot version 0.5.0.3-0ubuntu2, go to Edit -> Preferences and enable 'Color Management'.
2) Close F-Spot
3) Attempt to re-open F-Spot and notice that is crashes immediately.
4) Recover F-Spot by doing "gconftool-2 --type bool -s /apps/f-spot/ui/color_management_enabled 0"
5) Install the version of F-Spot with the full patch (0.5.0.3-0ubuntu4)
6) Enable 'Color Management' as before.
7) Close F-Spot
8) Open F-Spot again and notice that it no longer crashes
====
9) In addition to this, show tags in the left-hand pane and make sure it doesn't crash.
10) With tags shown in the left-hand pane, go to View - Tag Icons and select every icon size in turn (HIdden, Small, Medium, Large), making sure that no crash occurs and tag icon size is updated correctly.
11) With tag icons displayed (not hidden), make sure that you have at least one tag that has no icon defined, verifying that no crash occurs





More information about the Ubuntu-mono mailing list