Uwe, can you try the attached patch? It works for me when I replace all occurrences of data, see attached.
regards Uwe
Index: unicode.cpp =================================================================== --- unicode.cpp (revision 29738) +++ unicode.cpp (working copy) @@ -230,13 +230,13 @@ if (outbuf.size() < maxoutbufsize) outbuf.resize(maxoutbufsize); - int bytes = processor.convert(inbuf, inbytesleft, outbuf.data(), outbuf.size()); + int bytes = processor.convert(inbuf, inbytesleft, &outbuf[0], outbuf.size()); if (bytes <= 0) // Conversion failed // FIXME Maybe throw an exception and handle that in the caller? return vector<RetType>(); - RetType const * tmp = reinterpret_cast<RetType const *>(outbuf.data()); + RetType const * tmp = reinterpret_cast<RetType const *>(&outbuf[0]); return vector<RetType>(tmp, tmp + bytes / sizeof(RetType)); }