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

Unified Diff: url/mojo/url_gurl_struct_traits.h

Issue 1966933002: Mojo C++ bindings: switch the existing usage of StructTraits to use the new data view interface. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@26_reader
Patch Set: typeid() is not allowed :/ Created 4 years, 7 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: url/mojo/url_gurl_struct_traits.h
diff --git a/url/mojo/url_gurl_struct_traits.h b/url/mojo/url_gurl_struct_traits.h
index 4bad7d7ef403b9a6caa37dcf31007590d9cb0134..354cc46f1f4de18b8f8b64e3b1db76592079d6c5 100644
--- a/url/mojo/url_gurl_struct_traits.h
+++ b/url/mojo/url_gurl_struct_traits.h
@@ -23,16 +23,18 @@ struct StructTraits<url::mojom::Url, GURL> {
return base::StringPiece(r.possibly_invalid_spec().c_str(),
r.possibly_invalid_spec().length());
}
- static bool Read(url::mojom::Url::Reader r, GURL* out) {
- if (r.url().length() > url::kMaxURLChars) {
- *out = GURL();
+ static bool Read(url::mojom::UrlDataView data, GURL* out) {
+ base::StringPiece url_string;
+ if (!data.ReadUrl(&url_string))
return false;
- }
- *out = GURL(r.url());
- if (!r.url().empty() && !out->is_valid()) {
- *out = GURL();
+
+ if (url_string.length() > url::kMaxURLChars)
return false;
- }
+
+ *out = GURL(url_string);
+ if (!url_string.empty() && !out->is_valid())
+ return false;
+
return true;
}
};
« mojo/public/cpp/bindings/string_traits_string_piece.h ('K') | « url/mojo/origin_struct_traits.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698