diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2018-10-31 21:03:49 +0100 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2018-10-31 21:03:49 +0100 |
commit | 2a5c9cf0f25e070da5383f1c222052e2e198d236 (patch) | |
tree | 7deb82b44978bd8d11d237fbfa4b9abd841b12a1 /drivers/mbimmodem | |
parent | 2df69194ac4c1e4d96d5ae770c134ce497a1f5c9 (diff) | |
download | ofono-2a5c9cf0f25e070da5383f1c222052e2e198d236.tar.gz |
mbimmodem: Convert back to using __builtin_bswap16 with proper indexing
Diffstat (limited to 'drivers/mbimmodem')
-rw-r--r-- | drivers/mbimmodem/mbim-message.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/mbimmodem/mbim-message.c b/drivers/mbimmodem/mbim-message.c index c725e492..7899bc65 100644 --- a/drivers/mbimmodem/mbim-message.c +++ b/drivers/mbimmodem/mbim-message.c @@ -196,8 +196,10 @@ static bool _iter_copy_string(struct mbim_message_iter *iter, /* Strings are in UTF16-LE, so convert to UTF16-CPU first if needed */ if (L_CPU_TO_LE16(0x8000) != 0x8000) { - for (i = 0; i < len; i+= 2) - l_put_u16(l_get_le16(buf + i), buf + i); + uint16_t *le = (uint16_t *) buf; + + for (i = 0; i < len / 2; i++) + le[i] = __builtin_bswap16(le[i]); } *out = l_utf8_from_utf16(buf, len); |