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

Unified Diff: mojo/services/network/net_adapters.cc

Issue 933973002: Return errors from the Mojo network service using an enum. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Generate the static_asserts using a macro. Created 5 years, 10 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: mojo/services/network/net_adapters.cc
diff --git a/mojo/services/network/net_adapters.cc b/mojo/services/network/net_adapters.cc
index 551481d38810370c9968a546fdf5492b2896ab27..e74bcc152d3c91eb44158290312444b8151b9789 100644
--- a/mojo/services/network/net_adapters.cc
+++ b/mojo/services/network/net_adapters.cc
@@ -108,8 +108,23 @@ MojoToNetIOBuffer::~MojoToNetIOBuffer() {
// -----------------------------------------------------------------------------
NetworkErrorPtr MakeNetworkError(int error_code) {
+ // The NetworkCode enum values defined in network_error.mojom should match net
+ // error codes from net/net_errors.h.
+ static_assert(NETWORK_CODE_OK == static_cast<NetworkCode>(net::OK),
+ "Network code enum mismatch.");
+ static_assert(
+ NETWORK_CODE_IO_PENDING == static_cast<NetworkCode>(net::ERR_IO_PENDING),
+ "Network code enum mismatch.");
+#define NET_ERROR(label, value) \
+ static_assert( \
+ NETWORK_CODE_ ## label == \
+ static_cast<NetworkCode>(net::ERR_ ## label), \
+ "Network code enum mismatch.");
+#include "net/base/net_error_list.h"
+#undef NET_ERROR
+
NetworkErrorPtr error = NetworkError::New();
- error->code = error_code;
+ error->code = static_cast<NetworkCode>(error_code);
if (error_code <= 0)
error->description = net::ErrorToString(error_code);
return error.Pass();
« no previous file with comments | « mojo/services/html_viewer/weburlloader_impl.cc ('k') | mojo/services/network/public/interfaces/network_error.mojom » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698