[Mono-bugs] [Bug 77711][Maj] New - Mono.Data.SqliteClient throws
exception retrieving non-ASCII data
bugzilla-daemon at bugzilla.ximian.com
bugzilla-daemon at bugzilla.ximian.com
Sun Mar 5 19:34:43 EST 2006
Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.
Changed by hackel at walkingfish.com.
http://bugzilla.ximian.com/show_bug.cgi?id=77711
--- shadow/77711 2006-03-05 19:34:43.000000000 -0500
+++ shadow/77711.tmp.7745 2006-03-05 19:34:43.000000000 -0500
@@ -0,0 +1,62 @@
+Bug#: 77711
+Product: Mono: Class Libraries
+Version: 1.1
+OS:
+OS Details: Ubuntu/dapper
+Status: NEW
+Resolution:
+Severity:
+Priority: Major
+Component: Sys.Data.SqlClient
+AssignedTo: tsenganal at novell.com
+ReportedBy: hackel at walkingfish.com
+QAContact: mono-bugs at ximian.com
+TargetMilestone: ---
+URL:
+Cc:
+Summary: Mono.Data.SqliteClient throws exception retrieving non-ASCII data
+
+Mono version: 1.1.13.4-0ubuntu2
+
+I discovered this problem while using f-spot. Within this application, if
+I create a tag with extended characters (e.g. "München") and then restart,
+f-spot will no longer start with the following exception:
+
+Unhandled Exception: System.NullReferenceException: Object reference not
+set to an instance of an object
+in <0x000bd> TagStore:LoadAllTags ()
+in <0x0005c> TagStore:.ctor (Mono.Data.SqliteClient.SqliteConnection
+connection, Boolean is_new)
+in <0x000f9> Db:Init (System.String path, Boolean create_if_missing)
+in <0x0008d> FSpot.Core:.ctor ()
+in <0x00337> FSpot.Driver:Main (System.String[] args)
+
+This is generated by a relatively simple query (clipped from TagStore.cs):
+ private void LoadAllTags ()
+ {
+ SqliteCommand command = new SqliteCommand ();
+ command.Connection = Connection;
+ command.CommandText = "SELECT id, name, is_category,
+sort_priority, icon FROM tags";
+ SqliteDataReader reader = command.ExecuteReader ();
+ while (reader.Read ()) {
+ uint id = Convert.ToUInt32 (reader [0]);
+ string name = reader [1].ToString ();
+ bool is_category = (Convert.ToUInt32 (reader [2])
+!= 0);
+ if (reader [4] != null)
+ SetIconFromString (tag, reader [4].ToString
+());
+ tag.SortPriority = Convert.ToInt32 (reader[3]);
+ }
+
+If I run that query using sqlsharp, the tag in question is returned with
+NULL as its name. If I run the query with the sqlite tool, the name is
+returned properly. If I change the name with sqlite to remove any
+non-ASCII characters, f-spot loads and all is well.
+
+I would consider this to be a very critical issue. I've just run into it
+as an English speaker myself, and so I can't imagine how frustrating it
+must be for a non-English speaker!
+
+Related f-spot bug: http://bugzilla.gnome.org/show_bug.cgi?id=333550
More information about the mono-bugs
mailing list