ReadProperties() unconditionally stripped a trailing 0x00 from all records. This is correct for text records where 0x00 is a string terminator, but binary (compressed) records can legitimately end with 0x00. Stripping the byte truncated the zlib payload, causing ReadFullPascalString() to throw out_of_range on certain .SchLib files. Only strip the null byte for non-binary records. Fixes https://gitlab.com/kicad/code/kicad/-/issues/23013