rexcardan / Evil-DICOM

A C# DICOM Library
168 stars 98 forks source link

BigEndian SequenceItem length is read as LittleEndian #71

Closed Recomia closed 4 years ago

Recomia commented 4 years ago

From: SequenceItemReader.cs

public static DICOMObject ReadBigEndian(DICOMBinaryReader dr, TransferSyntax syntax, StringEncoding enc)
        {
            DICOMObject d;
            //Skip tag
            dr.Skip(4);
            var length = LengthReader.ReadLittleEndian(VR.Null, dr);
            if (LengthReader.IsIndefinite(length))
                d = ReadIndefiniteBigEndian(dr, syntax, enc);
            else
                d = DICOMObjectReader.ReadObject(dr.ReadBytes(length), syntax);

            return d;
        }

This might be related to #66

rexcardan commented 4 years ago

Patched in 2.0.5.2