Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(274)

Unified Diff: extensions/browser/api/serial/serial_connection.cc

Issue 820673004: json_schema_compiler: Use std::vector<char> for binary values. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@simplify_json_schema
Patch Set: Fix merge error. Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: extensions/browser/api/serial/serial_connection.cc
diff --git a/extensions/browser/api/serial/serial_connection.cc b/extensions/browser/api/serial/serial_connection.cc
index 1f42318b35ecded25dc8e0dab9fbd980bae4c904..d4e6f5d7bd3b7a0c0f5deee993b6a43e909b8bb9 100644
--- a/extensions/browser/api/serial/serial_connection.cc
+++ b/extensions/browser/api/serial/serial_connection.cc
@@ -5,10 +5,12 @@
#include "extensions/browser/api/serial/serial_connection.h"
#include <string>
+#include <vector>
#include "base/files/file_path.h"
#include "base/lazy_instance.h"
#include "base/message_loop/message_loop.h"
+#include "base/stl_util.h"
#include "extensions/browser/api/api_resource_manager.h"
#include "extensions/common/api/serial.h"
@@ -137,11 +139,11 @@ device::serial::StopBits ConvertStopBitsToMojo(
class SendBuffer : public device::ReadOnlyBuffer {
public:
SendBuffer(
- const std::string& data,
+ const std::vector<char>& data,
const base::Callback<void(int, device::serial::SendError)>& callback)
: data_(data), callback_(callback) {}
~SendBuffer() override {}
- const char* GetData() override { return data_.c_str(); }
+ const char* GetData() override { return vector_as_array(&data_); }
uint32_t GetSize() override { return static_cast<uint32_t>(data_.size()); }
void Done(uint32_t bytes_read) override {
callback_.Run(bytes_read, device::serial::SEND_ERROR_NONE);
@@ -151,7 +153,7 @@ class SendBuffer : public device::ReadOnlyBuffer {
}
private:
- const std::string data_;
+ const std::vector<char> data_;
const base::Callback<void(int, device::serial::SendError)> callback_;
};
@@ -261,7 +263,7 @@ bool SerialConnection::Receive(const ReceiveCompleteCallback& callback) {
return true;
}
-bool SerialConnection::Send(const std::string& data,
+bool SerialConnection::Send(const std::vector<char>& data,
const SendCompleteCallback& callback) {
DCHECK_CURRENTLY_ON(BrowserThread::IO);
if (!send_complete_.is_null())
@@ -363,7 +365,8 @@ void SerialConnection::OnAsyncReadComplete(int bytes_read,
ReceiveCompleteCallback callback = receive_complete_;
receive_complete_.Reset();
receive_timeout_task_.reset();
- callback.Run(std::string(receive_buffer_->data(), bytes_read),
+ callback.Run(std::vector<char>(receive_buffer_->data(),
+ receive_buffer_->data() + bytes_read),
ConvertReceiveErrorFromMojo(error));
receive_buffer_ = NULL;
}
« no previous file with comments | « extensions/browser/api/serial/serial_connection.h ('k') | extensions/browser/api/serial/serial_event_dispatcher.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698