diff --git a/ChangeLog b/ChangeLog
index 5c19b4f4d..c61003082 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2005-03-29  Mike Kestner  <mkestner@novell.com>
+
+	* glib/Marshaller.cs : special case ucs4 "0" conversion.
+	[Fixes #74175]
+
 2005-03-28  Mike Kestner  <mkestner@novell.com>
 
 	* gdk/Pixbuf.custom  : add FromDrawable static method and obsolete
diff --git a/glib/Marshaller.cs b/glib/Marshaller.cs
index 9a67fe199..f4eb3e4b9 100644
--- a/glib/Marshaller.cs
+++ b/glib/Marshaller.cs
@@ -211,6 +211,9 @@ namespace GLib {
 
 		public static char GUnicharToChar (uint ucs4_char)
 		{ 
+			if (ucs4_char == 0)
+				return (char) 0;
+
 			IntPtr raw_ret = gtksharp_unichar_to_utf8_string (ucs4_char);
 			string ret = GLib.Marshaller.PtrToStringGFree(raw_ret);
 			if (ret.Length > 1)