Index: third_party/WebKit/Source/modules/presentation/PresentationConnection.h |
diff --git a/third_party/WebKit/Source/modules/presentation/PresentationConnection.h b/third_party/WebKit/Source/modules/presentation/PresentationConnection.h |
index 32438bd0d0523dface0825b1d754084a0e5f7e94..2a94422bfae39ddc437db81980693b36180f4562 100644 |
--- a/third_party/WebKit/Source/modules/presentation/PresentationConnection.h |
+++ b/third_party/WebKit/Source/modules/presentation/PresentationConnection.h |
@@ -49,8 +49,8 @@ |
const WTF::AtomicString& state() const; |
void send(const String& message, ExceptionState&); |
- void send(DOMArrayBuffer*, ExceptionState&); |
- void send(DOMArrayBufferView*, ExceptionState&); |
+ void send(PassRefPtr<DOMArrayBuffer>, ExceptionState&); |
+ void send(PassRefPtr<DOMArrayBufferView>, ExceptionState&); |
void send(Blob*, ExceptionState&); |
void close(); |
void terminate(); |
@@ -95,7 +95,24 @@ |
BinaryTypeArrayBuffer |
}; |
- class Message; |
+ struct Message { |
+ Message(const String& text) |
+ : type(MessageTypeText) |
+ , text(text) { } |
+ |
+ Message(PassRefPtr<DOMArrayBuffer> arrayBuffer) |
+ : type(MessageTypeArrayBuffer) |
+ , arrayBuffer(arrayBuffer) { } |
+ |
+ Message(PassRefPtr<BlobDataHandle> blobDataHandle) |
+ : type(MessageTypeBlob) |
+ , blobDataHandle(blobDataHandle) { } |
+ |
+ MessageType type; |
+ String text; |
+ RefPtr<DOMArrayBuffer> arrayBuffer; |
+ RefPtr<BlobDataHandle> blobDataHandle; |
+ }; |
PresentationConnection(LocalFrame*, const String& id, const String& url); |
@@ -103,7 +120,7 @@ |
void handleMessageQueue(); |
// Callbacks invoked from BlobLoader. |
- void didFinishLoadingBlob(DOMArrayBuffer*); |
+ void didFinishLoadingBlob(PassRefPtr<DOMArrayBuffer>); |
void didFailLoadingBlob(FileError::ErrorCode); |
// Cancel loads and pending messages when the connection is closed. |
@@ -115,7 +132,7 @@ |
// For Blob data handling. |
Member<BlobLoader> m_blobLoader; |
- HeapDeque<Member<Message>> m_messages; |
+ Deque<OwnPtr<Message>> m_messages; |
BinaryType m_binaryType; |
}; |