| Index: media/blink/key_system_config_selector.cc
|
| diff --git a/media/blink/key_system_config_selector.cc b/media/blink/key_system_config_selector.cc
|
| index ff53449d83c8a3aedf4a83c0f541370be0129cde..29fe49288c50ef1e3352ce6347c3c2b33449e440 100644
|
| --- a/media/blink/key_system_config_selector.cc
|
| +++ b/media/blink/key_system_config_selector.cc
|
| @@ -741,11 +741,15 @@ void KeySystemConfigSelector::SelectConfigInternal(
|
| << "permission was denied.";
|
| continue;
|
| }
|
| - media_permission_->RequestPermission(
|
| - MediaPermission::PROTECTED_MEDIA_IDENTIFIER,
|
| - GURL(request->security_origin.toString()),
|
| - base::Bind(&KeySystemConfigSelector::OnPermissionResult,
|
| - weak_factory_.GetWeakPtr(), base::Passed(&request)));
|
| + {
|
| + // Note: the GURL must not be constructed inline because
|
| + // base::Passed(&request) sets |request| to null.
|
| + GURL security_origin(request->security_origin.toString());
|
| + media_permission_->RequestPermission(
|
| + MediaPermission::PROTECTED_MEDIA_IDENTIFIER, security_origin,
|
| + base::Bind(&KeySystemConfigSelector::OnPermissionResult,
|
| + weak_factory_.GetWeakPtr(), base::Passed(&request)));
|
| + }
|
| return;
|
| case CONFIGURATION_SUPPORTED:
|
| cdm_config.allow_distinctive_identifier =
|
|
|