Merge "Reflect changes to libweave in weaved"
diff --git a/buffet/manager.cc b/buffet/manager.cc
index f5874f4..d5caf0c 100644
--- a/buffet/manager.cc
+++ b/buffet/manager.cc
@@ -89,7 +89,7 @@
device_->Start(options, config_.get(), task_runner_.get(), http_client_.get(),
network_client_.get(), mdns_client_.get(),
- web_serv_client_.get());
+ web_serv_client_.get(), nullptr);
command_dispatcher_.reset(new DBusCommandDispacher{
dbus_object_.GetObjectManager(), device_->GetCommands()});
diff --git a/buffet/socket_stream.cc b/buffet/socket_stream.cc
index 7941a92..9ce56bf 100644
--- a/buffet/socket_stream.cc
+++ b/buffet/socket_stream.cc
@@ -12,6 +12,7 @@
#include <base/bind.h>
#include <base/files/file_util.h>
+#include <base/message_loop/message_loop.h>
#include <chromeos/streams/file_stream.h>
#include <chromeos/streams/tls_stream.h>
@@ -68,35 +69,35 @@
} // namespace
-bool SocketStream::ReadAsync(
+void SocketStream::ReadAsync(
void* buffer,
size_t size_to_read,
const base::Callback<void(size_t)>& success_callback,
- const base::Callback<void(const weave::Error*)>& error_callback,
- weave::ErrorPtr* error) {
+ const base::Callback<void(const weave::Error*)>& error_callback) {
chromeos::ErrorPtr chromeos_error;
if (!ptr_->ReadAsync(buffer, size_to_read, success_callback,
base::Bind(&OnError, error_callback), &chromeos_error)) {
- ConvertError(*chromeos_error, error);
- return false;
+ weave::ErrorPtr error;
+ ConvertError(*chromeos_error, &error);
+ base::MessageLoop::current()->PostTask(
+ FROM_HERE, base::Bind(error_callback, base::Owned(error.release())));
}
- return true;
}
-bool SocketStream::WriteAllAsync(
+void SocketStream::WriteAllAsync(
const void* buffer,
size_t size_to_write,
const base::Closure& success_callback,
- const base::Callback<void(const weave::Error*)>& error_callback,
- weave::ErrorPtr* error) {
+ const base::Callback<void(const weave::Error*)>& error_callback) {
chromeos::ErrorPtr chromeos_error;
if (!ptr_->WriteAllAsync(buffer, size_to_write, success_callback,
base::Bind(&OnError, error_callback),
&chromeos_error)) {
- ConvertError(*chromeos_error, error);
- return false;
+ weave::ErrorPtr error;
+ ConvertError(*chromeos_error, &error);
+ base::MessageLoop::current()->PostTask(
+ FROM_HERE, base::Bind(error_callback, base::Owned(error.release())));
}
- return true;
}
void SocketStream::CancelPendingAsyncOperations() {
diff --git a/buffet/socket_stream.h b/buffet/socket_stream.h
index 9574a1a..757190c 100644
--- a/buffet/socket_stream.h
+++ b/buffet/socket_stream.h
@@ -20,19 +20,17 @@
~SocketStream() override = default;
- bool ReadAsync(
+ void ReadAsync(
void* buffer,
size_t size_to_read,
const base::Callback<void(size_t)>& success_callback,
- const base::Callback<void(const weave::Error*)>& error_callback,
- weave::ErrorPtr* error) override;
+ const base::Callback<void(const weave::Error*)>& error_callback) override;
- bool WriteAllAsync(
+ void WriteAllAsync(
const void* buffer,
size_t size_to_write,
const base::Closure& success_callback,
- const base::Callback<void(const weave::Error*)>& error_callback,
- weave::ErrorPtr* error) override;
+ const base::Callback<void(const weave::Error*)>& error_callback) override;
void CancelPendingAsyncOperations() override;