class Protocol::HPACK::Decompressor
def read_string
-
(CompressionError)
- when input is malformed
Returns:
-
(String)
- UTF-8 encoded string
def read_string huffman = (peek_byte & 0x80) == 0x80 length = read_integer(7) raise CompressionError, "Invalid string length!" unless length string = read_bytes(length) raise CompressionError, "Invalid string length, got #{string.bytesize}, expecting #{length}!" unless string.bytesize == length string = Huffman.decode(string) if huffman return string.force_encoding(Encoding::UTF_8) end