Mercurial > projects > dil
changeset 362:1b6e61915858
- Fix: casting ubyte[] to ushort[] and uint[] respectively.
author | aziz |
---|---|
date | Thu, 30 Aug 2007 10:47:03 +0000 |
parents | d93dd84cd5f2 |
children | 2b387a3c6b58 |
files | trunk/src/dil/File.d |
diffstat | 1 files changed, 2 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/trunk/src/dil/File.d Tue Aug 28 15:29:01 2007 +0000 +++ b/trunk/src/dil/File.d Thu Aug 30 10:47:03 2007 +0000 @@ -109,7 +109,7 @@ wchar[] result = cast(wchar[]) new ubyte[data.length]; assert(result.length*2 == data.length); // BE to LE "1A 2B" -> "2B 1A" - foreach (i, c; cast(wchar[]) data) + foreach (i, c; cast(ushort[]) data) result[i] = (c << 8) | (c >> 8); return cast(ubyte[]) result; } @@ -121,7 +121,7 @@ dchar[] result = cast(dchar[]) new ubyte[data.length]; assert(result.length*4 == data.length); // BE to LE "1A 2B 3C 4D" -> "4D 3C 2B 1A" - foreach (i, c; cast(dchar[]) data) + foreach (i, c; cast(uint[]) data) result[i] = ((c & 0xFF)) | ((c >> 8) & 0xFF) | ((c >> 16) & 0xFF) |