Merge pull request #7980 from EMQ-YangM/fix_zero_padding
fix: zero padding should be to the MSB side
This commit is contained in:
commit
bf552f2c4b
|
@ -333,8 +333,7 @@ hexstr_to_bin(B, Size) when is_binary(B) ->
|
|||
0 ->
|
||||
make_binary(B);
|
||||
8 ->
|
||||
<<BH:((Size - 8) div 8)/binary, BL:8>> = B,
|
||||
<<(make_binary(BH))/binary, <<(hexchar2int(BL) * 16)>>/binary>>;
|
||||
make_binary(<<"0", B/binary>>);
|
||||
_ ->
|
||||
throw({unsupport_hex_string, B, Size})
|
||||
end.
|
||||
|
|
|
@ -171,10 +171,10 @@ t_term_encode(_) ->
|
|||
).
|
||||
|
||||
t_hexstr2bin(_) ->
|
||||
?assertEqual(<<99, 100, 240>>, emqx_rule_funcs:hexstr2bin(<<"6364f">>)),
|
||||
?assertEqual(<<160>>, emqx_rule_funcs:hexstr2bin(<<"a">>)),
|
||||
?assertEqual(<<240>>, emqx_rule_funcs:hexstr2bin(<<"f">>)),
|
||||
?assertEqual(<<80>>, emqx_rule_funcs:hexstr2bin(<<"5">>)),
|
||||
?assertEqual(<<6, 54, 79>>, emqx_rule_funcs:hexstr2bin(<<"6364f">>)),
|
||||
?assertEqual(<<10>>, emqx_rule_funcs:hexstr2bin(<<"a">>)),
|
||||
?assertEqual(<<15>>, emqx_rule_funcs:hexstr2bin(<<"f">>)),
|
||||
?assertEqual(<<5>>, emqx_rule_funcs:hexstr2bin(<<"5">>)),
|
||||
?assertEqual(<<1, 2>>, emqx_rule_funcs:hexstr2bin(<<"0102">>)),
|
||||
?assertEqual(<<17, 33>>, emqx_rule_funcs:hexstr2bin(<<"1121">>)).
|
||||
|
||||
|
|
Loading…
Reference in New Issue