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 [EMAIL PROTECTED] http://bugzilla.ximian.com/show_bug.cgi?id=80082 --- shadow/80082 2006-11-28 17:00:20.000000000 -0500 +++ shadow/80082.tmp.19605 2006-11-28 17:00:20.000000000 -0500 @@ -0,0 +1,72 @@ +Bug#: 80082 +Product: Mono: Class Libraries +Version: 1.1 +OS: +OS Details: +Status: NEW +Resolution: +Severity: +Priority: Normal +Component: CORLIB +AssignedTo: [EMAIL PROTECTED] +ReportedBy: [EMAIL PROTECTED] +QAContact: [EMAIL PROTECTED] +TargetMilestone: --- +URL: +Cc: +Summary: [2.0] CompareInfo binary serialization not compatible with MS + +MS introduced CompareInfo.Name in .NET 2.0, which results in an additional +field that is serialized (m_name). + +This field is not available in Mono. We do appear to have an icu_name +field, but I'm not sure if the semantics of these fields match. + +I also noticed that MS allows deserialization of a .NET 1.1 CompareInfo +blob on .NET 2.0, even though m_name is not serialized in .NET 1.1. MS +might be using its newly introduced Version Tolereant Serialization +mechanism here. + +I've added deserialization unit tests for CaseInsensitiveComparer which +fails as a result of this issue. + +Attempting to deserialize an MS.NET 2.0 CompareInfo blob results in the +following exception: + +System.Runtime.Serialization.SerializationException : Field "m_name" not +found in class System.Globalization.CompareInfo + at +System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadTypeMetadata +(System.IO.BinaryReader reader, Boolean isRuntimeObject, Boolean +hasTypeInfo) [0x0029a] in +/home/monohead/mono/mcs/class/corlib/System.Runtime.Serialization.Formatters.Binary/ObjectReader.cs:687 + at +System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadObjectInstance +(System.IO.BinaryReader reader, Boolean isRuntimeObject, Boolean +hasTypeInfo, System.Int64& objectId, System.Object& value, +System.Runtime.Serialization.SerializationInfo& info) [0x0000a] in +/home/monohead/mono/mcs/class/corlib/System.Runtime.Serialization.Formatters.Binary/ObjectReader.cs:239 + at System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadObject +(BinaryElement element, System.IO.BinaryReader reader, System.Int64& +objectId, System.Object& value, +System.Runtime.Serialization.SerializationInfo& info) [0x0008a] in +/home/monohead/mono/mcs/class/corlib/System.Runtime.Serialization.Formatters.Binary/ObjectReader.cs:161 + at +System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadNextObject +(System.IO.BinaryReader reader) [0x00027] in +/home/monohead/mono/mcs/class/corlib/System.Runtime.Serialization.Formatters.Binary/ObjectReader.cs:124 + at +System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadObjectGraph +(System.IO.BinaryReader reader, Boolean readHeaders, System.Object& result, +System.Runtime.Remoting.Messaging.Header[]& headers) [0x00044] in +/home/monohead/mono/mcs/class/corlib/System.Runtime.Serialization.Formatters.Binary/ObjectReader.cs:105 + at +System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.NoCheckDeserialize +(System.IO.Stream serializationStream, +System.Runtime.Remoting.Messaging.HeaderHandler handler) [0x00079] in +/home/monohead/mono/mcs/class/corlib/System.Runtime.Serialization.Formatters.Binary/BinaryFormatter.cs:172 + at +System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize +(System.IO.Stream serializationStream) [0x00000] in +/home/monohead/mono/mcs/class/corlib/System.Runtime.Serialization.Formatters.Binary/BinaryFormatter.cs:129 +.... _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
