| Index: webkit/glue/webframe_impl.cc
|
| ===================================================================
|
| --- webkit/glue/webframe_impl.cc (revision 4729)
|
| +++ webkit/glue/webframe_impl.cc (working copy)
|
| @@ -125,6 +125,7 @@
|
| MSVC_POP_WARNING();
|
|
|
| #undef LOG
|
| +#include "base/basictypes.h"
|
| #include "base/gfx/bitmap_platform_device.h"
|
| #include "base/gfx/platform_canvas.h"
|
| #include "base/gfx/rect.h"
|
| @@ -223,7 +224,7 @@
|
| // size and also copy the results directly into a wstring, avoiding the
|
| // string conversion.
|
| for (TextIterator it(range.get()); !it.atEnd(); it.advance()) {
|
| - const wchar_t* chars = reinterpret_cast<const wchar_t*>(it.characters());
|
| + const uint16* chars = reinterpret_cast<const uint16*>(it.characters());
|
| if (!chars) {
|
| if (it.length() != 0) {
|
| // It appears from crash reports that an iterator can get into a state
|
| @@ -246,7 +247,9 @@
|
| }
|
| int to_append = std::min(it.length(),
|
| max_chars - static_cast<int>(output->size()));
|
| - output->append(chars, to_append);
|
| + std::wstring wstr;
|
| + UTF16ToWide(reinterpret_cast<const char16*>(chars), to_append, &wstr);
|
| + output->append(wstr.c_str(), to_append);
|
| if (output->size() >= static_cast<size_t>(max_chars))
|
| return; // Filled up the buffer.
|
| }
|
|
|