[Banshee-List] Crashing on non RFC2396 filenames



Hi,

With the latest Banshee git I can no longer startup. I get a lot of
thrown exceptions as the database doesn't seem to have full paths in
it:

[Debug 09:08:14.593] FilenameToUri: localPath Mixture/60ft Dolls -
Talk to Me.ogg
[Debug 09:08:14.593] Caught exception trying to load database column
Uri - System.Reflection.TargetInvocationException: Exception has been
thrown by the target of an invocation. --->
System.ApplicationException: Filename path must be absolute
  at Banshee.Base.SafeUri.FilenameToUri (System.String localPath)
[0x0005c] in /home/alex/src/banshee/banshee.git/src/Core/Banshee.Core/Banshee.Base/SafeUri.cs:91
  at Banshee.Base.SafeUri..ctor (System.String uri) [0x00030] in
/home/alex/src/banshee/banshee.git/src/Core/Banshee.Core/Banshee.Base/SafeUri.cs:55
  at Banshee.Collection.Database.DatabaseTrackInfo.set_UriField
(System.String value) [0x00000] in
/home/alex/src/banshee/banshee.git/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseTrackInfo.cs:373
  at (wrapper managed-to-native)
System.Reflection.MonoMethod:InternalInvoke
(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)
[0x00057] in /var/tmp/portage/dev-lang/mono-2.4.2/work/mono-2.4.2/mcs/class/corlib/System.Reflection/MonoMethod.cs:159
  --- 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)
[0x00071] in /var/tmp/portage/dev-lang/mono-2.4.2/work/mono-2.4.2/mcs/class/corlib/System.Reflection/MonoMethod.cs:169
  at System.Reflection.MonoProperty.SetValue (System.Object obj,
System.Object value, BindingFlags invokeAttr, System.Reflection.Binder
binder, System.Object[] index, System.Globalization.CultureInfo
culture) [0x00064] in
/var/tmp/portage/dev-lang/mono-2.4.2/work/mono-2.4.2/mcs/class/corlib/System.Reflection/MonoProperty.cs:330
  at System.Reflection.PropertyInfo.SetValue (System.Object obj,
System.Object value, System.Object[] index) [0x00000] in
/var/tmp/portage/dev-lang/mono-2.4.2/work/mono-2.4.2/mcs/class/corlib/System.Reflection/PropertyInfo.cs:102
  at Hyena.Data.Sqlite.AbstractDatabaseColumn.SetValue (System.Object
target, System.Object value) [0x0001d] in
/home/alex/src/banshee/banshee.git/src/Libraries/Hyena/Hyena.Data.Sqlite/DatabaseColumn.cs:101
  at Hyena.Data.Sqlite.AbstractDatabaseColumn.SetValue (System.Object
target, IDataReader reader, Int32 column) [0x0001a] in
/home/alex/src/banshee/banshee.git/src/Libraries/Hyena/Hyena.Data.Sqlite/DatabaseColumn.cs:93
  at Hyena.Data.Sqlite.SqliteModelProvider`1[Banshee.Collection.Database.DatabaseTrackInfo].Load
(IDataReader reader, Banshee.Collection.Database.DatabaseTrackInfo
target) [0x00000]
[Debug 09:08:14.845] Starting - Saving Metadata to File
[New Thread 0x2aaab4532950 (LWP 3741)]
[Info  09:08:14.985] nereid Client Started
[Debug 09:08:14.986] Delayed Initializating
Banshee.MediaEngine.PlayerEngineService
[Debug 09:08:15.174] (libbanshee:player) Using system
(gst-plugins-good) equalizer element
[Debug 09:08:15.368] FilenameToUri: localPath Artists/Aphex
Twin/Selected Ambient Works, Vol. II/01 - #1.m4a
[Debug 09:08:15.368] Caught exception trying to load database column
Uri - System.Reflection.TargetInvocationException: Exception has been
thrown by the target of an invocation. --->
System.ApplicationException: Filename path must be absolute
  at Banshee.Base.SafeUri.FilenameToUri (System.String localPath)
[0x0005c] in /home/alex/src/banshee/banshee.git/src/Core/Banshee.Core/Banshee.Base/SafeUri.cs:91
  at Banshee.Base.SafeUri..ctor (System.String uri) [0x00030] in
/home/alex/src/banshee/banshee.git/src/Core/Banshee.Core/Banshee.Base/SafeUri.cs:55
  at Banshee.Collection.Database.DatabaseTrackInfo.set_UriField
(System.String value) [0x00000] in
/home/alex/src/banshee/banshee.git/src/Core/Banshee.Services/Banshee.Collection.Database/DatabaseTrackInfo.cs:373
  at (wrapper managed-to-native)
System.Reflection.MonoMethod:InternalInvoke
(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)
[0x00057] in /var/tmp/portage/dev-lang/mono-2.4.2/work/mono-2.4.2/mcs/class/corlib/System.Reflection/MonoMethod.cs:159
  --- 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)
[0x00071] in /var/tmp/portage/dev-lang/mono-2.4.2/work/mono-2.4.2/mcs/class/corlib/System.Reflection/MonoMethod.cs:169
  at System.Reflection.MonoProperty.SetValue (System.Object obj,
System.Object value, BindingFlags invokeAttr, System.Reflection.Binder
binder, System.Object[] index, System.Globalization.CultureInfo
culture) [0x00064] in
/var/tmp/portage/dev-lang/mono-2.4.2/work/mono-2.4.2/mcs/class/corlib/System.Reflection/MonoProperty.cs:330
  at System.Reflection.PropertyInfo.SetValue (System.Object obj,
System.Object value, System.Object[] index) [0x00000] in
/var/tmp/portage/dev-lang/mono-2.4.2/work/mono-2.4.2/mcs/class/corlib/System.Reflection/PropertyInfo.cs:102
  at Hyena.Data.Sqlite.AbstractDatabaseColumn.SetValue (System.Object
target, System.Object value) [0x0001d] in
/home/alex/src/banshee/banshee.git/src/Libraries/Hyena/Hyena.Data.Sqlite/DatabaseColumn.cs:101
  at Hyena.Data.Sqlite.AbstractDatabaseColumn.SetValue (System.Object
target, IDataReader reader, Int32 column) [0x0001a] in
/home/alex/src/banshee/banshee.git/src/Libraries/Hyena/Hyena.Data.Sqlite/DatabaseColumn.cs:93
  at Hyena.Data.Sqlite.SqliteModelProvider`1[Banshee.Collection.Database.DatabaseTrackInfo].Load
(IDataReader reader, Banshee.Collection.Database.DatabaseTrackInfo
target) [0x00000]
[Debug 09:08:15.369] Saving metadata for  - #1 (on )
<00:07:27.8650000> [<unknown>]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x2aaab4532950 (LWP 3741)]
0x00000000402b6af4 in ?? ()
(gdb) quit

Before finally crashing with a SIGSEGV. I suspect the final crash is
caused by "Artists/Aphex Twin/Selected Ambient Works, Vol. II/01 -
#1.m4a" not having a RFC2396 encodable string in it for
g_filename_to_uri but it's hard to tell in GDB. I tried using the Mono
debugger with no success.

I've since renamed the tracks and can now play them from the command
line with gst-launch but this doesn't really help for Banshee. Will I
have to dump the Banshee database and start again? Is there any way to
save the playlists I've defined before I do this?

-- 
Alex, homepage: http://www.bennee.com/~alex/
http://www.half-llama.co.uk


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]