Do

Do crashes if ~/Pictures doesn't exist

Bug #1453487 reported by Steven Bell on 2015-05-10
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Do
Medium
Chris Halse Rogers

Bug Description

I've don't have a ~/Pictures directory, and as a result, Do crashes everytime I begin by typing "p".
Deleting the .local/share/gnome-do directory and starting over doesn't seem to help, neither does disabling the files plugin.

Stack trace:

System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> GLib.GException: Error when getting information for file '/home/steven/Pictures': No such file or directory
  at GLib.FileAdapter.QueryInfo (System.String attributes, FileQueryInfoFlags flags, GLib.Cancellable cancellable) [0x00000] in <filename unknown>:0
  at Do.Universe.Linux.FileItem.get_MimeType () [0x00000] in <filename unknown>:0
  at Do.Universe.Linux.FileItem.get_Icon () [0x00000] in <filename unknown>:0
  at Do.Interface.AnimationBase.BezelFullResultItemRenderer.RenderItem (Cairo.Context cr, Point renderAnchor, Int32 width, Do.Universe.Item item, Boolean drawArrow) [0x00000] in <filename unknown>:0
  at Do.Interface.AnimationBase.BezelGlassResults.BufferItem (Do.Universe.Item item) [0x00000] in <filename unknown>:0
  at Do.Interface.AnimationBase.BezelGlassResults.RenderItem (Cairo.Context cr, Int32 item) [0x00000] in <filename unknown>:0
  at Do.Interface.AnimationBase.BezelGlassResults.DrawContextOnSurface (Cairo.Surface sr) [0x00000] in <filename unknown>:0
  at Do.Interface.AnimationBase.BezelGlassResults.Paint () [0x00000] in <filename unknown>:0
  at Do.Interface.AnimationBase.BezelGlassResults.AnimatedDraw () [0x00000] in <filename unknown>:0
  at Do.Interface.AnimationBase.BezelGlassResults.Draw () [0x00000] in <filename unknown>:0
  at Do.Interface.AnimationBase.BezelGlassResults.set_Context (IUIContext value) [0x00000] in <filename unknown>:0
  at Do.Interface.AnimationBase.AbstractAnimatedInterface.SetPaneContext (Pane pane, IUIContext context) [0x00000] in <filename unknown>:0
  at Do.Core.Controller.UpdatePane (Pane pane) [0x00000] in <filename unknown>:0
  at Do.Core.Controller.SmartUpdatePane (Pane pane) [0x00000] in <filename unknown>:0
  at Do.Core.Controller.SearchFinished (System.Object o, Do.Interface.SearchFinishState state, Pane pane) [0x00000] in <filename unknown>:0
  at Do.Core.Controller.<Controller>m__2 (System.Object o, Do.Interface.SearchFinishState state) [0x00000] in <filename unknown>:0
  at (wrapper delegate-invoke) <Module>:invoke_void__this___object_SearchFinishState (object,Do.Interface.SearchFinishState)
  at Do.Core.SimpleSearchController.OnSearchFinished (Boolean selection_changed, Boolean query_changed, Do.Universe.Item selection, System.String query) [0x00000] in <filename unknown>:0
  at Do.Core.FirstSearchController.UpdateResults () [0x00000] in <filename unknown>:0
  at Do.Core.SimpleSearchController.AddChar (Char character) [0x00000] in <filename unknown>:0
  at Do.Core.Controller.OnIMCommit (System.Object sender, Gtk.CommitArgs e) [0x00000] in <filename unknown>:0
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <filename unknown>:0
  at System.Delegate.DynamicInvokeImpl (System.Object[] args) [0x00000] in <filename unknown>:0
  at System.MulticastDelegate.DynamicInvokeImpl (System.Object[] args) [0x00000] in <filename unknown>:0
  at System.Delegate.DynamicInvoke (System.Object[] args) [0x00000] in <filename unknown>:0
  at GLib.Signal.ClosureInvokedCB (System.Object o, GLib.ClosureInvokedArgs args) [0x00000] in <filename unknown>:0
  at GLib.SignalClosure.Invoke (GLib.ClosureInvokedArgs args) [0x00000] in <filename unknown>:0
  at GLib.SignalClosure.MarshalCallback (IntPtr raw_closure, IntPtr return_val, UInt32 n_param_vals, IntPtr param_values, IntPtr invocation_hint, IntPtr marshal_data) [0x00000] in <filename unknown>:0
   at GLib.ExceptionManager.RaiseUnhandledException(System.Exception e, Boolean is_terminal)
   at GLib.SignalClosure.MarshalCallback(IntPtr raw_closure, IntPtr return_val, UInt32 n_param_vals, IntPtr param_values, IntPtr invocation_hint, IntPtr marshal_data)
   at Gtk.IMContext.gtk_im_context_filter_keypress(IntPtr , IntPtr )
   at Gtk.IMContext.FilterKeypress(Gdk.EventKey evnt)
   at Do.Core.Controller.OnInputKeyPressEvent(Gdk.EventKey evnt)
   at Do.Core.Controller.KeyPressWrap(Gdk.EventKey evnt)
   at Do.Interface.AnimationBase.AbstractAnimatedInterface.OnKeyPressEvent(Gdk.EventKey evnt)
   at Gtk.Widget.keypressevent_cb(IntPtr widget, IntPtr evnt)
   at Gtk.Application.gtk_main()
   at Gtk.Application.Run()
   at Do.Do.Main(System.String[] args)

Chris Halse Rogers (raof) wrote :

Hm. That's going to be the GNOME special-locations source - I suspect that ~/.config/gtk-3.0/bookmarks contains a Pictures entry? Removing that will probably hide this issue for you.

The File item should probably be more conservative and catch that exception, though.

Changed in do:
importance: Undecided → Medium
status: New → Incomplete
Changed in do:
assignee: nobody → Chris Halse Rogers (raof)
Steven Bell (botsnlinux) wrote :

Thanks. Editing ~/.config/gtk-3.0/bookmarks does in fact work around the problem (and is the right thing to do anyway, if the directories don't exist).

The problem still persists, quite annoying

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers