[Patch] multibyte encodings in strings

m4tze@exitno.de m4tze@exitno.de
Tue Nov 13 10:39:00 GMT 2018
Hi Nick,

> I have applied the patch along with a couple of extra updates.  
> Specifically I have created a ChangeLog entry for the patch, and a 
> new test in the binutils testsuite in order to make sure that the
> patch continues to work.

Thanks.
 
> There is one issue however that I would like to check with you.
> The original (unpatched) decoding of the test binary that you
> supplied produces the output: "String2" whereas the patched
> version of string produces: "String1" and "tring2".  Is this
> correct ?  I was kind of expecting the output to be "String1"
> and "String2".

Yes the output should be "String1" and "String2". As I am getting the expected
output on all my systems it is difficult for me to guess what is going wrong.
It looks as if your system accepts "aa53" as a printable utf-16-le char.
Could you please run

    echo "aa53007400720069006e0067003100aa53007400720069006e0067003200bb" | xxd -p -r | ./strings -el | xxd

to check if an additional character gets printed after "String1" and run

    echo "aa53007400720069006e00670031000053007400720069006e0067003200bb" | xxd -p -r | ./strings -el
    echo "aa53007400720069006e0067003100aabbcc53007400720069006e0067003200bb" | xxd -p -r | ./strings -el

to check if these yield the expected results?

Kind regards
Mathias



More information about the Binutils mailing list