@@ -1350,14 +1350,14 @@ private unsafe int ReadArray(float[] array, int offset, int count)
13501350
13511351 public override int ReadArray ( string localName , string namespaceUri , float [ ] array , int offset , int count )
13521352 {
1353- if ( IsStartArray ( localName , namespaceUri , XmlBinaryNodeType . FloatTextWithEndElement ) )
1353+ if ( IsStartArray ( localName , namespaceUri , XmlBinaryNodeType . FloatTextWithEndElement ) && BitConverter . IsLittleEndian )
13541354 return ReadArray ( array , offset , count ) ;
13551355 return base . ReadArray ( localName , namespaceUri , array , offset , count ) ;
13561356 }
13571357
13581358 public override int ReadArray ( XmlDictionaryString localName , XmlDictionaryString namespaceUri , float [ ] array , int offset , int count )
13591359 {
1360- if ( IsStartArray ( localName , namespaceUri , XmlBinaryNodeType . FloatTextWithEndElement ) )
1360+ if ( IsStartArray ( localName , namespaceUri , XmlBinaryNodeType . FloatTextWithEndElement ) && BitConverter . IsLittleEndian )
13611361 return ReadArray ( array , offset , count ) ;
13621362 return base . ReadArray ( localName , namespaceUri , array , offset , count ) ;
13631363 }
@@ -1373,14 +1373,14 @@ private unsafe int ReadArray(double[] array, int offset, int count)
13731373
13741374 public override int ReadArray ( string localName , string namespaceUri , double [ ] array , int offset , int count )
13751375 {
1376- if ( IsStartArray ( localName , namespaceUri , XmlBinaryNodeType . DoubleTextWithEndElement ) )
1376+ if ( IsStartArray ( localName , namespaceUri , XmlBinaryNodeType . DoubleTextWithEndElement ) && BitConverter . IsLittleEndian )
13771377 return ReadArray ( array , offset , count ) ;
13781378 return base . ReadArray ( localName , namespaceUri , array , offset , count ) ;
13791379 }
13801380
13811381 public override int ReadArray ( XmlDictionaryString localName , XmlDictionaryString namespaceUri , double [ ] array , int offset , int count )
13821382 {
1383- if ( IsStartArray ( localName , namespaceUri , XmlBinaryNodeType . DoubleTextWithEndElement ) )
1383+ if ( IsStartArray ( localName , namespaceUri , XmlBinaryNodeType . DoubleTextWithEndElement ) && BitConverter . IsLittleEndian )
13841384 return ReadArray ( array , offset , count ) ;
13851385 return base . ReadArray ( localName , namespaceUri , array , offset , count ) ;
13861386 }
@@ -1396,14 +1396,14 @@ private unsafe int ReadArray(decimal[] array, int offset, int count)
13961396
13971397 public override int ReadArray ( string localName , string namespaceUri , decimal [ ] array , int offset , int count )
13981398 {
1399- if ( IsStartArray ( localName , namespaceUri , XmlBinaryNodeType . DecimalTextWithEndElement ) )
1399+ if ( IsStartArray ( localName , namespaceUri , XmlBinaryNodeType . DecimalTextWithEndElement ) && BitConverter . IsLittleEndian )
14001400 return ReadArray ( array , offset , count ) ;
14011401 return base . ReadArray ( localName , namespaceUri , array , offset , count ) ;
14021402 }
14031403
14041404 public override int ReadArray ( XmlDictionaryString localName , XmlDictionaryString namespaceUri , decimal [ ] array , int offset , int count )
14051405 {
1406- if ( IsStartArray ( localName , namespaceUri , XmlBinaryNodeType . DecimalTextWithEndElement ) )
1406+ if ( IsStartArray ( localName , namespaceUri , XmlBinaryNodeType . DecimalTextWithEndElement ) && BitConverter . IsLittleEndian )
14071407 return ReadArray ( array , offset , count ) ;
14081408 return base . ReadArray ( localName , namespaceUri , array , offset , count ) ;
14091409 }
0 commit comments