Contents of /trunk/id3lib/patches/id3lib-3.8.3-unicode16.patch
Parent Directory | Revision Log
Revision 144 -
(show annotations)
(download)
Tue May 8 20:06:05 2007 UTC (17 years, 4 months ago) by niro
File size: 1542 byte(s)
Tue May 8 20:06:05 2007 UTC (17 years, 4 months ago) by niro
File size: 1542 byte(s)
-import
1 | diff -ruN id3lib-3.8.3.orig/ChangeLog id3lib-3.8.3/ChangeLog |
2 | --- id3lib-3.8.3.orig/ChangeLog 2003-03-02 01:23:00.000000000 +0100 |
3 | +++ id3lib-3.8.3/ChangeLog 2006-02-22 00:33:59.946214472 +0100 |
4 | @@ -1,3 +1,8 @@ |
5 | +2006-02-17 Jerome Couderc |
6 | + |
7 | + * Patch from Spoon to fix UTF-16 writing bug |
8 | + http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979 |
9 | + |
10 | 2003-03-02 Sunday 17:38 Thijmen Klok <thijmen@id3lib.org> |
11 | |
12 | * THANKS (1.20): added more people |
13 | diff -ruN id3lib-3.8.3.orig/src/io_helpers.cpp id3lib-3.8.3/src/io_helpers.cpp |
14 | --- id3lib-3.8.3.orig/src/io_helpers.cpp 2003-03-02 01:23:00.000000000 +0100 |
15 | +++ id3lib-3.8.3/src/io_helpers.cpp 2006-02-22 00:35:02.926639992 +0100 |
16 | @@ -363,11 +363,22 @@ |
17 | // Write the BOM: 0xFEFF |
18 | unicode_t BOM = 0xFEFF; |
19 | writer.writeChars((const unsigned char*) &BOM, 2); |
20 | + // Patch from Spoon : 2004-08-25 14:17 |
21 | + // http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979 |
22 | + // Wrong code |
23 | + //for (size_t i = 0; i < size; i += 2) |
24 | + //{ |
25 | + // unicode_t ch = (data[i] << 8) | data[i+1]; |
26 | + // writer.writeChars((const unsigned char*) &ch, 2); |
27 | + //} |
28 | + // Right code |
29 | + unsigned char *pdata = (unsigned char *) data.c_str(); |
30 | for (size_t i = 0; i < size; i += 2) |
31 | { |
32 | - unicode_t ch = (data[i] << 8) | data[i+1]; |
33 | + unicode_t ch = (pdata[i] << 8) | pdata[i+1]; |
34 | writer.writeChars((const unsigned char*) &ch, 2); |
35 | } |
36 | + // End patch |
37 | } |
38 | return writer.getCur() - beg; |
39 | } |