Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(324)

Side by Side Diff: Source/modules/mediastream/RTCSessionDescriptionRequestImpl.h

Issue 329093002: Allow PeerConnection to be garbage collected after close(). (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Rebase Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2012 Google Inc. All rights reserved. 2 * Copyright (C) 2012 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 7 *
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 30 matching lines...) Expand all
41 } 41 }
42 42
43 namespace WebCore { 43 namespace WebCore {
44 44
45 class RTCErrorCallback; 45 class RTCErrorCallback;
46 class RTCPeerConnection; 46 class RTCPeerConnection;
47 class RTCSessionDescriptionCallback; 47 class RTCSessionDescriptionCallback;
48 48
49 class RTCSessionDescriptionRequestImpl FINAL : public RTCSessionDescriptionReque st, public ActiveDOMObject { 49 class RTCSessionDescriptionRequestImpl FINAL : public RTCSessionDescriptionReque st, public ActiveDOMObject {
50 public: 50 public:
51 static PassRefPtr<RTCSessionDescriptionRequestImpl> create(ExecutionContext* , PassOwnPtr<RTCSessionDescriptionCallback>, PassOwnPtr<RTCErrorCallback>); 51 static PassRefPtr<RTCSessionDescriptionRequestImpl> create(ExecutionContext* , PassRefPtr<RTCPeerConnection>, PassOwnPtr<RTCSessionDescriptionCallback>, Pass OwnPtr<RTCErrorCallback>);
haraken 2014/06/15 13:43:57 RTCPeerConnection is already on oilpan's heap, so
Henrik Grunell 2014/06/16 07:49:00 I don't know much about oilpan. You know that bett
52 virtual ~RTCSessionDescriptionRequestImpl(); 52 virtual ~RTCSessionDescriptionRequestImpl();
53 53
54 virtual void requestSucceeded(const blink::WebRTCSessionDescription&) OVERRI DE; 54 virtual void requestSucceeded(const blink::WebRTCSessionDescription&) OVERRI DE;
55 virtual void requestFailed(const String& error) OVERRIDE; 55 virtual void requestFailed(const String& error) OVERRIDE;
56 56
57 // ActiveDOMObject 57 // ActiveDOMObject
58 virtual void stop() OVERRIDE; 58 virtual void stop() OVERRIDE;
59 59
60 private: 60 private:
61 RTCSessionDescriptionRequestImpl(ExecutionContext*, PassOwnPtr<RTCSessionDes criptionCallback>, PassOwnPtr<RTCErrorCallback>); 61 RTCSessionDescriptionRequestImpl(ExecutionContext*, PassRefPtr<RTCPeerConnec tion>, PassOwnPtr<RTCSessionDescriptionCallback>, PassOwnPtr<RTCErrorCallback>);
haraken 2014/06/15 13:43:57 PassRefPtrWillBeRawPtr
Henrik Grunell 2014/06/16 07:49:00 Done.
62 62
63 void clear(); 63 void clear();
64 64
65 OwnPtr<RTCSessionDescriptionCallback> m_successCallback; 65 OwnPtr<RTCSessionDescriptionCallback> m_successCallback;
66 OwnPtr<RTCErrorCallback> m_errorCallback; 66 OwnPtr<RTCErrorCallback> m_errorCallback;
67
68 RefPtr<RTCPeerConnection> m_requester;
haraken 2014/06/15 13:43:57 RefPtrWillBePersistent
Henrik Grunell 2014/06/16 07:49:00 Done.
67 }; 69 };
68 70
69 } // namespace WebCore 71 } // namespace WebCore
70 72
71 #endif // RTCSessionDescriptionRequestImpl_h 73 #endif // RTCSessionDescriptionRequestImpl_h
72
73
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698