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

Unified Diff: extensions/browser/api/guest_view/web_view/web_view_internal_api.cc

Issue 2630753003: Separate validation failures from other failures in ExecuteCodeFunction. (Closed)
Patch Set: address comments Created 3 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
« no previous file with comments | « extensions/browser/api/guest_view/web_view/web_view_internal_api.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: extensions/browser/api/guest_view/web_view/web_view_internal_api.cc
diff --git a/extensions/browser/api/guest_view/web_view/web_view_internal_api.cc b/extensions/browser/api/guest_view/web_view/web_view_internal_api.cc
index 790f767efa33d5bd512a4b60ae2c7842afbb7251..179e68e2f8eb62764b9d4e96338ff8d740a5af08 100644
--- a/extensions/browser/api/guest_view/web_view/web_view_internal_api.cc
+++ b/extensions/browser/api/guest_view/web_view/web_view_internal_api.cc
@@ -365,19 +365,16 @@ WebViewInternalExecuteCodeFunction::WebViewInternalExecuteCodeFunction()
WebViewInternalExecuteCodeFunction::~WebViewInternalExecuteCodeFunction() {
}
-bool WebViewInternalExecuteCodeFunction::Init() {
- if (details_.get())
- return true;
+ExecuteCodeFunction::InitResult WebViewInternalExecuteCodeFunction::Init() {
+ if (init_result_)
+ return init_result_.value();
- if (!args_->GetInteger(0, &guest_instance_id_))
- return false;
-
- if (!guest_instance_id_)
- return false;
+ if (!args_->GetInteger(0, &guest_instance_id_) || !guest_instance_id_)
+ return set_init_result(VALIDATION_FAILURE);
std::string src;
if (!args_->GetString(1, &src))
- return false;
+ return set_init_result(VALIDATION_FAILURE);
// Set |guest_src_| here, but do not return false if it is invalid.
// Instead, let it continue with the normal page load sequence,
@@ -387,25 +384,25 @@ bool WebViewInternalExecuteCodeFunction::Init() {
base::DictionaryValue* details_value = NULL;
if (!args_->GetDictionary(2, &details_value))
- return false;
+ return set_init_result(VALIDATION_FAILURE);
std::unique_ptr<InjectDetails> details(new InjectDetails());
if (!InjectDetails::Populate(*details_value, details.get()))
- return false;
+ return set_init_result(VALIDATION_FAILURE);
details_ = std::move(details);
if (extension()) {
set_host_id(HostID(HostID::EXTENSIONS, extension()->id()));
- return true;
+ return set_init_result(SUCCESS);
}
WebContents* web_contents = GetSenderWebContents();
if (web_contents && web_contents->GetWebUI()) {
const GURL& url = render_frame_host()->GetSiteInstance()->GetSiteURL();
set_host_id(HostID(HostID::WEBUI, url.spec()));
- return true;
+ return set_init_result(SUCCESS);
}
- return false;
+ return set_init_result_error(""); // TODO(lazyboy): error?
}
bool WebViewInternalExecuteCodeFunction::ShouldInsertCSS() const {
« no previous file with comments | « extensions/browser/api/guest_view/web_view/web_view_internal_api.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698