| Index: ppapi/native_client/src/trusted/plugin/pnacl_translate_thread.cc
|
| diff --git a/ppapi/native_client/src/trusted/plugin/pnacl_translate_thread.cc b/ppapi/native_client/src/trusted/plugin/pnacl_translate_thread.cc
|
| index fff5382ce2e6a30fb1b0966d84d4604edec24941..7247f39193a6a32c17486d699465beabf02b59f3 100644
|
| --- a/ppapi/native_client/src/trusted/plugin/pnacl_translate_thread.cc
|
| +++ b/ppapi/native_client/src/trusted/plugin/pnacl_translate_thread.cc
|
| @@ -111,27 +111,15 @@ void PnaclTranslateThread::RunTranslate(
|
| }
|
|
|
| // Called from main thread to send bytes to the translator.
|
| -void PnaclTranslateThread::PutBytes(std::vector<char>* bytes, int count) {
|
| - PLUGIN_PRINTF(("PutBytes (this=%p, bytes=%p, size=%" NACL_PRIuS
|
| - ", count=%d)\n",
|
| - this, bytes, bytes ? bytes->size() : 0, count));
|
| - size_t buffer_size = 0;
|
| +void PnaclTranslateThread::PutBytes(const void* bytes, int32_t count) {
|
| CHECK(bytes != NULL);
|
| - // Ensure that the buffer we send to the translation thread is the right size
|
| - // (count can be < the buffer size). This can be done without the lock.
|
| - buffer_size = bytes->size();
|
| - bytes->resize(count);
|
| -
|
| NaClXMutexLock(&cond_mu_);
|
| -
|
| data_buffers_.push_back(std::vector<char>());
|
| - bytes->swap(data_buffers_.back()); // Avoid copying the buffer data.
|
| -
|
| + data_buffers_.back().insert(data_buffers_.back().end(),
|
| + static_cast<const char*>(bytes),
|
| + static_cast<const char*>(bytes) + count);
|
| NaClXCondVarSignal(&buffer_cond_);
|
| NaClXMutexUnlock(&cond_mu_);
|
| -
|
| - // Ensure the buffer we send back to the coordinator is the expected size
|
| - bytes->resize(buffer_size);
|
| }
|
|
|
| void PnaclTranslateThread::EndStream() {
|
|
|