On 03.03.2018 20:18, James McCoy wrote:
> This test has been failing for some time on Debian's alpha buildd[0].
> One of the alpha porters looked into it and gave a thorough diagnosis[1]
> of the issue which basically boils down to: using a char* as
> apr_uint16_t*/apr_int32_t* is going to result in unaligned access.
>
> In a (much belated) reply[2], I proposed the attached patch which
> memcpy()s the string to an array of the appropriate type before passing
> it through to svn_utf__utf{16,32}_to_utf8(). I also took the
> opportunity to consolidate the handing of counted and non-counted
> conversions.
>
> Does this look appropriate? If so, I can commit to trunk and nominate
> for 1.10.
So it's a case of the Alpha compiler not aligning static string
constants to struct boundary? I wouldn't have expected that ... but I
believe the compiler is correct as per standard.
In any case: please use sizeof() and strlen() instead of explicit
numbers in the test data and buffer sizes.
-- Brane
Received on 2018-03-03 20:28:21 CET