Skip to content

Commit 7803fbd

Browse files
Plug some leaks in TestController and UIScriptContext.
<https://webkit.org/b/167839> Reviewed by Alexey Proskuryakov. Fix a couple of the leaks seen on the leaks bot. * TestRunnerShared/UIScriptContext/UIScriptContext.cpp: (UIScriptContext::runUIScript): * WebKitTestRunner/TestController.cpp: (WTR::TestController::handleCheckOfUserMediaPermissionForOrigin): (WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@211674 268f45cc-cd09-0410-ab3c-d52691b4dbfc
1 parent d5daa15 commit 7803fbd

File tree

3 files changed

+23
-6
lines changed

3 files changed

+23
-6
lines changed

Tools/ChangeLog

+15
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,18 @@
1+
2017-02-04 Andreas Kling <[email protected]>
2+
3+
Plug some leaks in TestController and UIScriptContext.
4+
<https://webkit.org/b/167839>
5+
6+
Reviewed by Alexey Proskuryakov.
7+
8+
Fix a couple of the leaks seen on the leaks bot.
9+
10+
* TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
11+
(UIScriptContext::runUIScript):
12+
* WebKitTestRunner/TestController.cpp:
13+
(WTR::TestController::handleCheckOfUserMediaPermissionForOrigin):
14+
(WTR::TestController::decidePolicyForUserMediaPermissionRequestIfPossible):
15+
116
2017-02-03 Jeremy Jones <[email protected]>
217

318
WK1 mouse events are missing movementX and movementY for pointerlock.

Tools/TestRunnerShared/UIScriptContext/UIScriptContext.cpp

+2-1
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,8 @@ void UIScriptContext::runUIScript(const String& script, unsigned scriptCallbackI
6767

6868
if (!hasOutstandingAsyncTasks()) {
6969
JSValueRef stringifyException = nullptr;
70-
requestUIScriptCompletion(JSValueToStringCopy(m_context.get(), result, &stringifyException));
70+
JSRetainPtr<JSStringRef> stringified(Adopt, JSValueToStringCopy(m_context.get(), result, &stringifyException));
71+
requestUIScriptCompletion(stringified.get());
7172
tryToCompleteUIScriptForCurrentParentCallback();
7273
}
7374
}

Tools/WebKitTestRunner/TestController.cpp

+6-5
Original file line numberDiff line numberDiff line change
@@ -1959,8 +1959,9 @@ void TestController::handleCheckOfUserMediaPermissionForOrigin(WKFrameRef frame,
19591959
{
19601960
auto originHash = userMediaOriginHash(userMediaDocumentOrigin, topLevelDocumentOrigin);
19611961
auto salt = saltForOrigin(frame, originHash);
1962+
WKRetainPtr<WKStringRef> saltString = adoptWK(WKStringCreateWithUTF8CString(salt.utf8().data()));
19621963

1963-
WKUserMediaPermissionCheckSetUserMediaAccessInfo(checkRequest, WKStringCreateWithUTF8CString(salt.utf8().data()), settingsForOrigin(originHash).persistentPermission());
1964+
WKUserMediaPermissionCheckSetUserMediaAccessInfo(checkRequest, saltString.get(), settingsForOrigin(originHash).persistentPermission());
19641965
}
19651966

19661967
void TestController::handleUserMediaPermissionRequest(WKFrameRef frame, WKSecurityOriginRef userMediaDocumentOrigin, WKSecurityOriginRef topLevelDocumentOrigin, WKUserMediaPermissionRequestRef request)
@@ -2010,8 +2011,8 @@ void TestController::decidePolicyForUserMediaPermissionRequestIfPossible()
20102011
continue;
20112012
}
20122013

2013-
WKRetainPtr<WKArrayRef> audioDeviceUIDs = WKUserMediaPermissionRequestAudioDeviceUIDs(request);
2014-
WKRetainPtr<WKArrayRef> videoDeviceUIDs = WKUserMediaPermissionRequestVideoDeviceUIDs(request);
2014+
WKRetainPtr<WKArrayRef> audioDeviceUIDs = adoptWK(WKUserMediaPermissionRequestAudioDeviceUIDs(request));
2015+
WKRetainPtr<WKArrayRef> videoDeviceUIDs = adoptWK(WKUserMediaPermissionRequestVideoDeviceUIDs(request));
20152016

20162017
if (!WKArrayGetSize(videoDeviceUIDs.get()) && !WKArrayGetSize(audioDeviceUIDs.get())) {
20172018
WKUserMediaPermissionRequestDeny(request, kWKNoConstraints);
@@ -2022,13 +2023,13 @@ void TestController::decidePolicyForUserMediaPermissionRequestIfPossible()
20222023
if (WKArrayGetSize(videoDeviceUIDs.get()))
20232024
videoDeviceUID = reinterpret_cast<WKStringRef>(WKArrayGetItemAtIndex(videoDeviceUIDs.get(), 0));
20242025
else
2025-
videoDeviceUID = WKStringCreateWithUTF8CString("");
2026+
videoDeviceUID = adoptWK(WKStringCreateWithUTF8CString(""));
20262027

20272028
WKRetainPtr<WKStringRef> audioDeviceUID;
20282029
if (WKArrayGetSize(audioDeviceUIDs.get()))
20292030
audioDeviceUID = reinterpret_cast<WKStringRef>(WKArrayGetItemAtIndex(audioDeviceUIDs.get(), 0));
20302031
else
2031-
audioDeviceUID = WKStringCreateWithUTF8CString("");
2032+
audioDeviceUID = adoptWK(WKStringCreateWithUTF8CString(""));
20322033

20332034
WKUserMediaPermissionRequestAllow(request, audioDeviceUID.get(), videoDeviceUID.get());
20342035
}

0 commit comments

Comments
 (0)