Changeset 280594 in webkit
- Timestamp:
- Aug 3, 2021, 9:42:24 AM (5 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 5 edited
-
ChangeLog (modified) (1 diff)
-
html/DOMURL.cpp (modified) (1 diff)
-
html/DOMURL.h (modified) (2 diffs)
-
html/URLSearchParams.cpp (modified) (1 diff)
-
html/URLSearchParams.h (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r280593 r280594 1 2021-08-03 Alex Christensen <achristensen@webkit.org> 2 3 Use WeakPtr instead of manual raw pointer management in URLSearchParams 4 https://bugs.webkit.org/show_bug.cgi?id=228723 5 6 Reviewed by Chris Dumez. 7 8 This is less error prone. 9 10 * html/DOMURL.cpp: 11 (WebCore::DOMURL::~DOMURL): Deleted. 12 * html/DOMURL.h: 13 * html/URLSearchParams.cpp: 14 (WebCore::URLSearchParams::URLSearchParams): 15 * html/URLSearchParams.h: 16 (WebCore::URLSearchParams::associatedURLDestroyed): Deleted. 17 1 18 2021-08-03 Youenn Fablet <youenn@apple.com> 2 19 -
trunk/Source/WebCore/html/DOMURL.cpp
r279681 r280594 68 68 } 69 69 70 DOMURL::~DOMURL() 71 { 72 if (m_searchParams) 73 m_searchParams->associatedURLDestroyed(); 74 } 70 DOMURL::~DOMURL() = default; 75 71 76 72 ExceptionOr<void> DOMURL::setHref(const String& url) -
trunk/Source/WebCore/html/DOMURL.h
r266748 r280594 30 30 #include "URLDecomposition.h" 31 31 #include <wtf/URL.h> 32 #include <wtf/WeakPtr.h> 32 33 33 34 namespace WebCore { … … 38 39 class URLSearchParams; 39 40 40 class DOMURL final : public RefCounted<DOMURL>, public URLDecomposition {41 class DOMURL final : public RefCounted<DOMURL>, public CanMakeWeakPtr<DOMURL>, public URLDecomposition { 41 42 public: 42 43 static ExceptionOr<Ref<DOMURL>> create(const String& url, const String& base); -
trunk/Source/WebCore/html/URLSearchParams.cpp
r278253 r280594 32 32 33 33 URLSearchParams::URLSearchParams(const String& init, DOMURL* associatedURL) 34 : m_associatedURL( associatedURL)34 : m_associatedURL(makeWeakPtr(associatedURL)) 35 35 , m_pairs(init.startsWith('?') ? WTF::URLParser::parseURLEncodedForm(StringView(init).substring(1)) : WTF::URLParser::parseURLEncodedForm(init)) 36 36 { -
trunk/Source/WebCore/html/URLSearchParams.h
r278253 r280594 28 28 #include <wtf/Variant.h> 29 29 #include <wtf/Vector.h> 30 #include <wtf/WeakPtr.h> 30 31 #include <wtf/text/WTFString.h> 31 32 … … 42 43 } 43 44 44 void associatedURLDestroyed() { m_associatedURL = nullptr; }45 45 void append(const String& name, const String& value); 46 46 void remove(const String& name); … … 70 70 void updateURL(); 71 71 72 DOMURL* m_associatedURL { nullptr };72 WeakPtr<DOMURL> m_associatedURL; 73 73 Vector<WTF::KeyValuePair<String, String>> m_pairs; 74 74 };
Note:
See TracChangeset
for help on using the changeset viewer.