dotgnu-pnet-commits
[Top][All Lists]
Advanced

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

[dotgnu-pnet-commits] pnetlib ChangeLog System.Xml/Private/XmlStreamR...


From: Heiko Weiss
Subject: [dotgnu-pnet-commits] pnetlib ChangeLog System.Xml/Private/XmlStreamR...
Date: Mon, 23 Apr 2007 10:33:56 +0000

CVSROOT:        /sources/dotgnu-pnet
Module name:    pnetlib
Changes by:     Heiko Weiss <brubbel>   07/04/23 10:33:56

Modified files:
        .              : ChangeLog 
        System.Xml/Private: XmlStreamReader.cs 

Log message:
        fixed DetectByteOrder to be more tolerant.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/pnetlib/ChangeLog?cvsroot=dotgnu-pnet&r1=1.2496&r2=1.2497
http://cvs.savannah.gnu.org/viewcvs/pnetlib/System.Xml/Private/XmlStreamReader.cs?cvsroot=dotgnu-pnet&r1=1.3&r2=1.4

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/dotgnu-pnet/pnetlib/ChangeLog,v
retrieving revision 1.2496
retrieving revision 1.2497
diff -u -b -r1.2496 -r1.2497
--- ChangeLog   21 Apr 2007 18:15:25 -0000      1.2496
+++ ChangeLog   23 Apr 2007 10:33:55 -0000      1.2497
@@ -1,3 +1,7 @@
+2007-04-23  Heiko Weiss <address@hidden>
+
+       * System.Xml/Private/XmlStreamReader.cs: fixed DetectByteOrder.
+
 2007-04-21  Radek Polak  <address@hidden>
 
        * pnetlib/System.Windows.Forms/MainMenu.cs,

Index: System.Xml/Private/XmlStreamReader.cs
===================================================================
RCS file: /sources/dotgnu-pnet/pnetlib/System.Xml/Private/XmlStreamReader.cs,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- System.Xml/Private/XmlStreamReader.cs       6 May 2004 14:24:11 -0000       
1.3
+++ System.Xml/Private/XmlStreamReader.cs       23 Apr 2007 10:33:55 -0000      
1.4
@@ -312,6 +312,30 @@
                                        decoder = encoding.GetDecoder();
                                        encodingDetected = true;
                                }
+                               else if(inBufferLen >= 4 &&
+                                                                        
inBuffer[0] == 0x3C &&
+                                                                        
inBuffer[1] == 0x00 &&
+                                                                        
inBuffer[2] == 0x3F &&
+                                                                        
inBuffer[3] == 0x00)
+                               {
+                                       // Little-endian UTF-16, missing FF FE
+                                       encoding = Encoding.Unicode;
+                                       inBufferPosn = 0;
+                                       decoder = encoding.GetDecoder();
+                                       encodingDetected = true;
+                               }
+                               else if(inBufferLen >= 4 &&
+                                                                        
inBuffer[0] == 0x00 &&
+                                                                        
inBuffer[1] == 0x3C &&
+                                                                        
inBuffer[2] == 0x00 &&
+                                                                        
inBuffer[3] == 0x3F)
+                               {
+                                       // Big-endian UTF-16, missing FE FF
+                                       encoding = Encoding.BigEndianUnicode;
+                                       inBufferPosn = 0;
+                                       decoder = encoding.GetDecoder();
+                                       encodingDetected = true;
+                               }
                        }
 
        // Close this stream reader.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]