Title: [230805] trunk/Source/WebCore
Revision
230805
Author
commit-qu...@webkit.org
Date
2018-04-19 09:01:09 -0700 (Thu, 19 Apr 2018)

Log Message

Change MediaSource WebCore to return NewObject for SourceBuffers
https://bugs.webkit.org/show_bug.cgi?id=184642

Patch by Eric Stobbart <ericstobb...@gmail.com> on 2018-04-19
Reviewed by Chris Dumez.

Minor change inline with IDL documentation

* Modules/mediasource/MediaSource.cpp:
(WebCore::MediaSource::addSourceBuffer):
(): Deleted.
* Modules/mediasource/MediaSource.h:
* Modules/mediasource/MediaSource.idl:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (230804 => 230805)


--- trunk/Source/WebCore/ChangeLog	2018-04-19 15:58:30 UTC (rev 230804)
+++ trunk/Source/WebCore/ChangeLog	2018-04-19 16:01:09 UTC (rev 230805)
@@ -1,3 +1,18 @@
+2018-04-19  Eric Stobbart  <ericstobb...@gmail.com>
+
+        Change MediaSource WebCore to return NewObject for SourceBuffers
+        https://bugs.webkit.org/show_bug.cgi?id=184642
+
+        Reviewed by Chris Dumez.
+
+        Minor change inline with IDL documentation
+
+        * Modules/mediasource/MediaSource.cpp:
+        (WebCore::MediaSource::addSourceBuffer):
+        (): Deleted.
+        * Modules/mediasource/MediaSource.h:
+        * Modules/mediasource/MediaSource.idl:
+
 2018-04-19  Yusuke Suzuki  <utatane....@gmail.com>
 
         Unreviewed, build fix for Ubuntu LTS GCC

Modified: trunk/Source/WebCore/Modules/mediasource/MediaSource.cpp (230804 => 230805)


--- trunk/Source/WebCore/Modules/mediasource/MediaSource.cpp	2018-04-19 15:58:30 UTC (rev 230804)
+++ trunk/Source/WebCore/Modules/mediasource/MediaSource.cpp	2018-04-19 16:01:09 UTC (rev 230805)
@@ -623,7 +623,7 @@
     }
 }
 
-ExceptionOr<SourceBuffer&> MediaSource::addSourceBuffer(const String& type)
+ExceptionOr<Ref<SourceBuffer>> MediaSource::addSourceBuffer(const String& type)
 {
     LOG(MediaSource, "MediaSource::addSourceBuffer(%s) %p", type.ascii().data(), this);
 
@@ -669,14 +669,12 @@
     // ↳ Set the mode attribute on the new object to "segments".
     buffer->setMode(shouldGenerateTimestamps ? SourceBuffer::AppendMode::Sequence : SourceBuffer::AppendMode::Segments);
 
-    auto& result = buffer.get();
-
     // 8. Add the new object to sourceBuffers and fire a addsourcebuffer on that object.
-    m_sourceBuffers->add(WTFMove(buffer));
+    m_sourceBuffers->add(buffer.copyRef());
     regenerateActiveSourceBuffers();
 
     // 9. Return the new object to the caller.
-    return result;
+    return WTFMove(buffer);
 }
 
 ExceptionOr<void> MediaSource::removeSourceBuffer(SourceBuffer& buffer)

Modified: trunk/Source/WebCore/Modules/mediasource/MediaSource.h (230804 => 230805)


--- trunk/Source/WebCore/Modules/mediasource/MediaSource.h	2018-04-19 15:58:30 UTC (rev 230804)
+++ trunk/Source/WebCore/Modules/mediasource/MediaSource.h	2018-04-19 16:01:09 UTC (rev 230805)
@@ -91,7 +91,7 @@
 
     SourceBufferList* sourceBuffers() { return m_sourceBuffers.get(); }
     SourceBufferList* activeSourceBuffers() { return m_activeSourceBuffers.get(); }
-    ExceptionOr<SourceBuffer&> addSourceBuffer(const String& type);
+    ExceptionOr<Ref<SourceBuffer>> addSourceBuffer(const String& type);
     ExceptionOr<void> removeSourceBuffer(SourceBuffer&);
     static bool isTypeSupported(const String& type);
 

Modified: trunk/Source/WebCore/Modules/mediasource/MediaSource.idl (230804 => 230805)


--- trunk/Source/WebCore/Modules/mediasource/MediaSource.idl	2018-04-19 15:58:30 UTC (rev 230804)
+++ trunk/Source/WebCore/Modules/mediasource/MediaSource.idl	2018-04-19 16:01:09 UTC (rev 230805)
@@ -54,7 +54,7 @@
 
     attribute unrestricted double duration;
 
-    [MayThrowException] SourceBuffer addSourceBuffer(DOMString type);
+    [NewObject, MayThrowException] SourceBuffer addSourceBuffer(DOMString type);
     [MayThrowException] void removeSourceBuffer(SourceBuffer buffer);
 
     readonly attribute ReadyState readyState;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to