Title: [185260] trunk/Source
- Revision
- 185260
- Author
- [email protected]
- Date
- 2015-06-05 12:08:47 -0700 (Fri, 05 Jun 2015)
Log Message
[Streams API] ReadableStream should store callbacks as a Deque
https://bugs.webkit.org/show_bug.cgi?id=145641
Reviewed by Darin Adler.
Source/WebCore:
Covered by existing tests.
* Modules/streams/ReadableStream.cpp:
(WebCore::ReadableStream::resolveReadCallback): Use of Deque.takeFirst
* Modules/streams/ReadableStream.h: Using Deque in lieu of Vector for storing callbacks.
Source/WTF:
* wtf/Deque.h:
(WTF::Deque::append): Adding not templated append method, forwarding to templated append method.
Modified Paths
Diff
Modified: trunk/Source/WTF/ChangeLog (185259 => 185260)
--- trunk/Source/WTF/ChangeLog 2015-06-05 18:52:12 UTC (rev 185259)
+++ trunk/Source/WTF/ChangeLog 2015-06-05 19:08:47 UTC (rev 185260)
@@ -1,3 +1,13 @@
+2015-06-05 Xabier Rodriguez Calvar <[email protected]> and Youenn Fablet <[email protected]>
+
+ [Streams API] ReadableStream should store callbacks as a Deque
+ https://bugs.webkit.org/show_bug.cgi?id=145641
+
+ Reviewed by Darin Adler.
+
+ * wtf/Deque.h:
+ (WTF::Deque::append): Adding not templated append method, forwarding to templated append method.
+
2015-06-02 Xabier Rodriguez Calvar <[email protected]> and Youenn Fablet <[email protected]>
[Streams API] Delegate ReadableStreamReader reference counting to ReadableStream
Modified: trunk/Source/WTF/wtf/Deque.h (185259 => 185260)
--- trunk/Source/WTF/wtf/Deque.h 2015-06-05 18:52:12 UTC (rev 185259)
+++ trunk/Source/WTF/wtf/Deque.h 2015-06-05 19:08:47 UTC (rev 185260)
@@ -82,6 +82,7 @@
const T& last() const { ASSERT(m_start != m_end); return *(--end()); }
T takeLast();
+ void append(T&& value) { append<T>(std::forward<T>(value)); }
template<typename U> void append(U&&);
template<typename U> void prepend(U&&);
void removeFirst();
Modified: trunk/Source/WebCore/ChangeLog (185259 => 185260)
--- trunk/Source/WebCore/ChangeLog 2015-06-05 18:52:12 UTC (rev 185259)
+++ trunk/Source/WebCore/ChangeLog 2015-06-05 19:08:47 UTC (rev 185260)
@@ -1,3 +1,16 @@
+2015-06-05 Xabier Rodriguez Calvar <[email protected]> and Youenn Fablet <[email protected]>
+
+ [Streams API] ReadableStream should store callbacks as a Deque
+ https://bugs.webkit.org/show_bug.cgi?id=145641
+
+ Reviewed by Darin Adler.
+
+ Covered by existing tests.
+
+ * Modules/streams/ReadableStream.cpp:
+ (WebCore::ReadableStream::resolveReadCallback): Use of Deque.takeFirst
+ * Modules/streams/ReadableStream.h: Using Deque in lieu of Vector for storing callbacks.
+
2015-06-05 Mark Lam <[email protected]>
finally blocks should not set the exception stack trace when re-throwing the exception.
Modified: trunk/Source/WebCore/Modules/streams/ReadableStream.cpp (185259 => 185260)
--- trunk/Source/WebCore/Modules/streams/ReadableStream.cpp 2015-06-05 18:52:12 UTC (rev 185259)
+++ trunk/Source/WebCore/Modules/streams/ReadableStream.cpp 2015-06-05 19:08:47 UTC (rev 185260)
@@ -167,8 +167,7 @@
if (m_readRequests.isEmpty())
return false;
- m_readRequests.first().successCallback(value);
- m_readRequests.remove(0);
+ m_readRequests.takeFirst().successCallback(value);
return true;
}
Modified: trunk/Source/WebCore/Modules/streams/ReadableStream.h (185259 => 185260)
--- trunk/Source/WebCore/Modules/streams/ReadableStream.h 2015-06-05 18:52:12 UTC (rev 185259)
+++ trunk/Source/WebCore/Modules/streams/ReadableStream.h 2015-06-05 19:08:47 UTC (rev 185260)
@@ -35,9 +35,9 @@
#include "ActiveDOMObject.h"
#include "ScriptWrappable.h"
#include <functional>
+#include <wtf/Deque.h>
#include <wtf/Ref.h>
#include <wtf/RefCounted.h>
-#include <wtf/Vector.h>
namespace JSC {
class JSValue;
@@ -112,7 +112,7 @@
ReadEndCallback endCallback;
FailureCallback failureCallback;
};
- Vector<ReadCallbacks> m_readRequests;
+ Deque<ReadCallbacks> m_readRequests;
bool m_closeRequested { false };
State m_state { State::Readable };
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes