After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 620242 - dealing with invalid URIs isn't robust and prevents launching f-spot
dealing with invalid URIs isn't robust and prevents launching f-spot
Status: RESOLVED FIXED
Product: f-spot
Classification: Other
Component: General
GIT
Other Linux
: Normal critical
: 0.7.0
Assigned To: F-spot maintainers
F-spot maintainers
Depends on:
Blocks:
 
 
Reported: 2010-06-01 10:46 UTC by Jakub Steiner
Modified: 2010-06-08 09:44 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Fix folder tree parsing for broken Uris. (3.71 KB, patch)
2010-06-02 08:45 UTC, Ruben Vermeersch
committed Details | Review

Description Jakub Steiner 2010-06-01 10:46:56 UTC
I have ended up with a photos.db that f-spot now fails to parse:

[Warn  12:23:41.415] Caught an exception - System.UriFormatException: URI scheme must start with a letter and must consist of one of alphabet, digits, '+', '-' or '.' character. (in `System')
  at System.Uri.Parse (UriKind kind, System.String uriString) [0x00000] 
  at System.Uri.ParseUri (UriKind kind) [0x00000] 
  at System.Uri..ctor (System.Uri baseUri, System.String relativeUri, Boolean dontEscape) [0x00000] 
  at System.Uri..ctor (System.Uri baseUri, System.String relativeUri) [0x00000] 
  at FSpot.Widgets.FolderTreeModel.UpdateFolderTree () [0x00000] 
  at FSpot.Widgets.FolderTreeModel..ctor () [0x00000] 
  at FSpot.Widgets.FolderTreeView..ctor () [0x00000] 
  at FSpot.Widgets.FolderTreePage..ctor () [0x00000] 
  at (wrapper managed-to-native) System.Reflection.MonoCMethod:InternalInvoke (object,object[],System.Exception&)
  at System.Reflection.MonoCMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] 
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. (in `mscorlib')
  at System.Reflection.MonoCMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] 
  at System.Reflection.MonoCMethod.Invoke (BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] 
  at System.Reflection.ConstructorInfo.Invoke (System.Object[] parameters) [0x00000] 
  at System.Activator.CreateInstance (System.Type type, Boolean nonPublic) [0x00000] 
  at Mono.Addins.RuntimeAddin.CreateInstance (System.String typeName, Boolean throwIfNotFound) [0x00000] 
  at Mono.Addins.RuntimeAddin.CreateInstance (System.String typeName) [0x00000] 
  at FSpot.Extensions.SidebarPageNode.GetPage () [0x00000] 
  at FSpot.MainWindow.OnSidebarExtensionChanged (System.Object s, Mono.Addins.ExtensionNodeEventArgs args) [0x00000] 
  at Mono.Addins.ExtensionNode.OnChildNodeAdded (Mono.Addins.ExtensionNode node) [0x00000] 
  at Mono.Addins.ExtensionNode.NotifyChildChanged () [0x00000] 
  at Mono.Addins.TreeNode.NotifyChildrenChanged () [0x00000] 
  at Mono.Addins.ExtensionContext.NotifyConditionChanged (Mono.Addins.ConditionType cond) [0x00000] 
  at Mono.Addins.ExtensionContext.OnConditionChanged (System.Object s, System.EventArgs a) [0x00000] 
  at Mono.Addins.ConditionType.NotifyChanged () [0x00000] 
  at FSpot.Extensions.ViewModeCondition.<ViewModeCondition>m__8 () [0x00000] 
  at FSpot.Extensions.ViewModeCondition.set_Mode (ViewMode value) [0x00000] 
  at FSpot.Widgets.Sidebar.HandleContextChanged (System.Object sender, System.EventArgs args) [0x00000] 
  at FSpot.Widgets.Sidebar.set_Context (ViewContext value) [0x00000] 
  at FSpot.MainWindow..ctor (.Db db) [0x00000] 
  at FSpot.App.get_Organizer () [0x00000] 
  at FSpot.App.HandleOrganize () [0x00000] 
  at FSpot.App.Organize () [0x00000] 
  at FSpot.Driver.Main (System.String[] args) [0x00000]
Comment 1 Ruben Vermeersch 2010-06-02 08:45:23 UTC
Created attachment 162517 [details] [review]
Fix folder tree parsing for broken Uris.

Thanks to Mike for helping to figure this out.
Comment 2 Ruben Vermeersch 2010-06-02 08:46:54 UTC
Attachment 162517 [details] pushed as 70abe8e - Fix folder tree parsing for broken Uris.

Should be fixed in master, please reopen if you still encounter it. Thanks for
reporting this!