Error when parsing soft hyphens
eteubert opened this issue · comments
Eric Teubert commented
iex ▶ '\u00AD'
[173]
iex ▶ Poison.encode(<<173, 144>>)
▶▶▶
** (FunctionClauseError) no function clause matching in Poison.Encoder.BitString.chunk_size/3
The following arguments were given to Poison.Encoder.BitString.chunk_size/3:
# 1
<<173, 144>>
# 2
nil
# 3
0
Attempted function clauses (showing 7 out of 7):
defp chunk_size(<<char::integer(), _::binary()>>, _mode, acc) when char <= 31 or (char === 92 or char === 34)
defp chunk_size(<<char::integer(), rest::binary()>>, mode, acc) when char < 128
defp chunk_size(<<_::utf8(), _::binary()>>, :unicode, acc)
defp chunk_size(<<char::utf8(), _::binary()>>, :javascript, acc) when char === 8233 or char === 8232
defp chunk_size(<<codepoint::utf8(), rest::binary()>>, mode, acc)
defp chunk_size(<<char::integer()>>, _, _)
defp chunk_size("", _, acc)
(poison) lib/poison/encoder.ex:139: Poison.Encoder.BitString.chunk_size/3
(poison) lib/poison/encoder.ex:134: Poison.Encoder.BitString.escape/2
(poison) lib/poison/encoder.ex:88: Poison.Encoder.BitString.encode/2
(poison) lib/poison.ex:41: Poison.encode!/2
(poison) lib/poison.ex:15: Poison.encode/2