View | Details | Raw Unified
Collapse All | Expand All

(-) id3lib-3.8.3.orig/ChangeLog (+5 lines)
 Lines 1-3    Link Here 
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>
2003-03-02 Sunday 17:38   Thijmen Klok <thijmen@id3lib.org>
	* THANKS (1.20): added more people 
	* THANKS (1.20): added more people 
(-) id3lib-3.8.3.orig/src/io_helpers.cpp (-1 / +12 lines)
 Lines 363-373    Link Here 
    // Write the BOM: 0xFEFF
    // Write the BOM: 0xFEFF
    unicode_t BOM = 0xFEFF;
    unicode_t BOM = 0xFEFF;
    writer.writeChars((const unsigned char*) &BOM, 2);
    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)
    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);
      writer.writeChars((const unsigned char*) &ch, 2);
    }
    }
    // End patch
  }
  }
  return writer.getCur() - beg;
  return writer.getCur() - beg;
}
}