summaryrefslogtreecommitdiff
path: root/chromium/third_party/blink/renderer/core/html/media/html_media_element.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/blink/renderer/core/html/media/html_media_element.h')
-rw-r--r--chromium/third_party/blink/renderer/core/html/media/html_media_element.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/chromium/third_party/blink/renderer/core/html/media/html_media_element.h b/chromium/third_party/blink/renderer/core/html/media/html_media_element.h
index ea0853391dd..1584d203b97 100644
--- a/chromium/third_party/blink/renderer/core/html/media/html_media_element.h
+++ b/chromium/third_party/blink/renderer/core/html/media/html_media_element.h
@@ -143,6 +143,17 @@ class CORE_EXPORT HTMLMediaElement
void SetSrc(const AtomicString&);
void SetSrc(const USVStringOrTrustedURL&, ExceptionState&);
const KURL& currentSrc() const { return current_src_; }
+
+ // Return the URL to be used for downloading the media.
+ const KURL& downloadURL() const {
+ // If we didn't get a redirected URL from the player, then use the original.
+ if (current_src_after_redirects_.IsNull() ||
+ current_src_after_redirects_.IsEmpty()) {
+ return currentSrc();
+ }
+ return current_src_after_redirects_;
+ }
+
void SetSrcObject(MediaStreamDescriptor*);
MediaStreamDescriptor* GetSrcObject() const { return src_object_.Get(); }
@@ -572,6 +583,7 @@ class CORE_EXPORT HTMLMediaElement
ReadyState ready_state_;
ReadyState ready_state_maximum_;
KURL current_src_;
+ KURL current_src_after_redirects_;
Member<MediaStreamDescriptor> src_object_;
Member<MediaError> error_;