diff options
author | Yalla-One | 2010-05-13 00:29:54 +0200 |
---|---|---|
committer | Robby Workman | 2010-05-13 00:29:54 +0200 |
commit | 70c2e6cd3d22273ed4a27235791ac085ce7fbc1b (patch) | |
tree | b2dac27e5a70ee6aaed732c3ac65beccc5be3864 /libraries/id3lib/patches/id3lib_3.8.3_UTF16_writing_bug.patch | |
parent | 999ac6f32f40e0ad36cfdf923cd24bbd3508b4d6 (diff) | |
download | slackbuilds-70c2e6cd3d22273ed4a27235791ac085ce7fbc1b.tar.gz |
libraries/id3lib: Updated for version 3.8.3
Diffstat (limited to 'libraries/id3lib/patches/id3lib_3.8.3_UTF16_writing_bug.patch')
-rw-r--r-- | libraries/id3lib/patches/id3lib_3.8.3_UTF16_writing_bug.patch | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/libraries/id3lib/patches/id3lib_3.8.3_UTF16_writing_bug.patch b/libraries/id3lib/patches/id3lib_3.8.3_UTF16_writing_bug.patch new file mode 100644 index 0000000000..b05d2cf298 --- /dev/null +++ b/libraries/id3lib/patches/id3lib_3.8.3_UTF16_writing_bug.patch @@ -0,0 +1,39 @@ +diff -ruN id3lib-3.8.3.orig/ChangeLog id3lib-3.8.3/ChangeLog +--- id3lib-3.8.3.orig/ChangeLog 2003-03-02 01:23:00.000000000 +0100 ++++ id3lib-3.8.3/ChangeLog 2006-02-22 00:33:59.946214472 +0100 +@@ -1,3 +1,8 @@ ++2006-02-17 Jerome Couderc ++ ++ * Patch from Spoon to fix UTF-16 writing bug ++ http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979 ++ + 2003-03-02 Sunday 17:38 Thijmen Klok <thijmen@id3lib.org> + + * THANKS (1.20): added more people +diff -ruN id3lib-3.8.3.orig/src/io_helpers.cpp id3lib-3.8.3/src/io_helpers.cpp +--- id3lib-3.8.3.orig/src/io_helpers.cpp 2003-03-02 01:23:00.000000000 +0100 ++++ id3lib-3.8.3/src/io_helpers.cpp 2006-02-22 00:35:02.926639992 +0100 +@@ -363,11 +363,22 @@ + // Write the BOM: 0xFEFF + unicode_t BOM = 0xFEFF; + writer.writeChars((const unsigned char*) &BOM, 2); ++ // Patch from Spoon : 2004-08-25 14:17 ++ // http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979 ++ // Wrong code ++ //for (size_t i = 0; i < size; i += 2) ++ //{ ++ // unicode_t ch = (data[i] << 8) | data[i+1]; ++ // writer.writeChars((const unsigned char*) &ch, 2); ++ //} ++ // Right code ++ unsigned char *pdata = (unsigned char *) data.c_str(); + for (size_t i = 0; i < size; i += 2) + { +- unicode_t ch = (data[i] << 8) | data[i+1]; ++ unicode_t ch = (pdata[i] << 8) | pdata[i+1]; + writer.writeChars((const unsigned char*) &ch, 2); + } ++ // End patch + } + return writer.getCur() - beg; + } |