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

Unified Diff: chrome/browser/media/router/create_presentation_session_request.cc

Issue 1224093004: [Media Router] 2nd take on fix route response callback lifetime in UI. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix unit test Created 5 years, 5 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: chrome/browser/media/router/create_presentation_session_request.cc
diff --git a/chrome/browser/media/router/create_session_request.cc b/chrome/browser/media/router/create_presentation_session_request.cc
similarity index 69%
rename from chrome/browser/media/router/create_session_request.cc
rename to chrome/browser/media/router/create_presentation_session_request.cc
index c9516cd7e0b43cbea6420fc3e2a98fd9bb0a93f4..49993895b37a6977215d8bd321d31096fc9bb130 100644
--- a/chrome/browser/media/router/create_session_request.cc
+++ b/chrome/browser/media/router/create_presentation_session_request.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "chrome/browser/media/router/create_session_request.h"
+#include "chrome/browser/media/router/create_presentation_session_request.h"
#include "chrome/browser/media/router/media_source_helper.h"
@@ -11,7 +11,7 @@ using content::PresentationError;
namespace media_router {
-CreateSessionRequest::CreateSessionRequest(
+CreatePresentationSessionRequest::CreatePresentationSessionRequest(
const std::string& presentation_url,
const std::string& presentation_id,
const GURL& frame_url,
@@ -23,12 +23,18 @@ CreateSessionRequest::CreateSessionRequest(
success_cb_(success_cb),
error_cb_(error_cb),
cb_invoked_(false) {
+ DCHECK(!success_cb.is_null());
+ DCHECK(!error_cb.is_null());
}
-CreateSessionRequest::~CreateSessionRequest() {
+CreatePresentationSessionRequest::~CreatePresentationSessionRequest() {
+ if (!cb_invoked_) {
+ error_cb_.Run(content::PresentationError(
+ content::PRESENTATION_ERROR_UNKNOWN, "Unknown error."));
+ }
}
-void CreateSessionRequest::MaybeInvokeSuccessCallback(
+void CreatePresentationSessionRequest::MaybeInvokeSuccessCallback(
const MediaRoute::Id& route_id) {
if (!cb_invoked_) {
// Overwrite presentation ID.
@@ -40,7 +46,7 @@ void CreateSessionRequest::MaybeInvokeSuccessCallback(
}
}
-void CreateSessionRequest::MaybeInvokeErrorCallback(
+void CreatePresentationSessionRequest::MaybeInvokeErrorCallback(
const content::PresentationError& error) {
if (!cb_invoked_) {
error_cb_.Run(error);

Powered by Google App Engine
This is Rietveld 408576698