id3lib - patch UTF16 writing bug
Inviato: mer 22 ago 2007, 16:10
La versione 3.8.3 di id3lib presenta questo bug (segnalato nel tracker #1016290) che mi si è presentato parecchie volte mentre riorganizzavo la collezione musicale.
Ecco il contenuto del patch file per sistemare il problema:
Per applicarlo usate il solito metodo e ricompilate.
PS: Se volete utilizzare lo slackbuild basta modifcarlo per far "patchare" il file prima della compilazione.
Ecco il contenuto del patch file per sistemare il problema:
Codice: Seleziona tutto
--- io_helpers.cpp_ORIG 2007-08-22 15:41:49.000000000 +0200
+++ io_helpers.cpp 2007-08-22 15:44:12.000000000 +0200
@@ -363,9 +363,10 @@
// Write the BOM: 0xFEFF
unicode_t BOM = 0xFEFF;
writer.writeChars((const unsigned char*) &BOM, 2);
+ 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);
}
}
Codice: Seleziona tutto
patch -p0 <patch_id3lib_3.8.3_UTF16_writing_bug.diffPS: Se volete utilizzare lo slackbuild basta modifcarlo per far "patchare" il file prima della compilazione.