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

Unified Diff: ui/display/chromeos/display_configurator.cc

Issue 584533002: Don't enable HDCP again if it is active (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 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 | « no previous file | ui/display/chromeos/display_configurator_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/display/chromeos/display_configurator.cc
diff --git a/ui/display/chromeos/display_configurator.cc b/ui/display/chromeos/display_configurator.cc
index 19e122566e8412af5a1c2d3a5670a1acaeecf42e..a7443d26be80da504455a68c7d10f58cbb965dff 100644
--- a/ui/display/chromeos/display_configurator.cc
+++ b/ui/display/chromeos/display_configurator.cc
@@ -251,12 +251,18 @@ bool DisplayConfigurator::ApplyProtections(const ContentProtections& requests) {
case DISPLAY_CONNECTION_TYPE_DISPLAYPORT:
case DISPLAY_CONNECTION_TYPE_DVI:
case DISPLAY_CONNECTION_TYPE_HDMI: {
- HDCPState new_desired_state =
- (all_desired & CONTENT_PROTECTION_METHOD_HDCP) ?
- HDCP_STATE_DESIRED : HDCP_STATE_UNDESIRED;
- if (!native_display_delegate_->SetHDCPState(*it->display,
- new_desired_state))
+ HDCPState now_state;
Daniel Erat 2014/09/18 14:45:30 nit: current_state
kcwu 2014/09/19 04:39:14 Done.
+ if (!native_display_delegate_->GetHDCPState(*it->display, &now_state))
Daniel Erat 2014/09/18 14:45:30 does this trigger a slow probe of the display?
dnicoara 2014/09/18 15:39:16 crbug.com/374465 tracked an issue where GetHDCP wa
kcwu 2014/09/19 04:39:14 The driver is fixed. See comment #2 in crbug/41284
return false;
+ bool now_desired = (now_state != HDCP_STATE_UNDESIRED);
Daniel Erat 2014/09/18 14:45:30 nit: s/now/current/; "new" and "now" look too simi
kcwu 2014/09/19 04:39:15 Done.
+ bool new_desired = (all_desired & CONTENT_PROTECTION_METHOD_HDCP);
+ // Don't enable again if HDCP is already active.
+ if (now_desired != new_desired) {
+ HDCPState new_state =
+ new_desired ? HDCP_STATE_DESIRED : HDCP_STATE_UNDESIRED;
+ if (!native_display_delegate_->SetHDCPState(*it->display, new_state))
+ return false;
+ }
break;
}
case DISPLAY_CONNECTION_TYPE_INTERNAL:
« no previous file with comments | « no previous file | ui/display/chromeos/display_configurator_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698