Title: [287986] trunk/Source
Revision
287986
Author
timothy_hor...@apple.com
Date
2022-01-13 12:22:50 -0800 (Thu, 13 Jan 2022)

Log Message

Fix a few Objective-C object leaks due to early returns in `init`
https://bugs.webkit.org/show_bug.cgi?id=235162
<rdar://problem/87489048>

Reviewed by Wenson Hsieh.

Source/_javascript_Core:

* API/JSValue.mm:
(-[JSValue initWithValue:inContext:]):

Source/WebCore:

* platform/ios/WebAVPlayerController.mm:
(-[WebAVPlayerController init]):

Source/WebKit:

* UIProcess/ios/WKHoverPlatter.mm:
(-[WKHoverPlatter initWithView:delegate:]):

Source/WebKitLegacy/mac:

* Storage/WebDatabaseQuotaManager.mm:
(WebCore::if):

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/API/JSValue.mm (287985 => 287986)


--- trunk/Source/_javascript_Core/API/JSValue.mm	2022-01-13 20:10:09 UTC (rev 287985)
+++ trunk/Source/_javascript_Core/API/JSValue.mm	2022-01-13 20:22:50 UTC (rev 287986)
@@ -1108,8 +1108,10 @@
 
 - (JSValue *)initWithValue:(JSValueRef)value inContext:(JSContext *)context
 {
-    if (!value || !context)
+    if (!value || !context) {
+        [self release];
         return nil;
+    }
 
     self = [super init];
     if (!self)

Modified: trunk/Source/_javascript_Core/ChangeLog (287985 => 287986)


--- trunk/Source/_javascript_Core/ChangeLog	2022-01-13 20:10:09 UTC (rev 287985)
+++ trunk/Source/_javascript_Core/ChangeLog	2022-01-13 20:22:50 UTC (rev 287986)
@@ -1,3 +1,14 @@
+2022-01-13  Tim Horton  <timothy_hor...@apple.com>
+
+        Fix a few Objective-C object leaks due to early returns in `init`
+        https://bugs.webkit.org/show_bug.cgi?id=235162
+        <rdar://problem/87489048>
+
+        Reviewed by Wenson Hsieh.
+
+        * API/JSValue.mm:
+        (-[JSValue initWithValue:inContext:]):
+
 2022-01-12  Mark Lam  <mark....@apple.com>
 
         [Re-landing] Update hashThreadState() to exclude __opaque_flags.

Modified: trunk/Source/WebCore/ChangeLog (287985 => 287986)


--- trunk/Source/WebCore/ChangeLog	2022-01-13 20:10:09 UTC (rev 287985)
+++ trunk/Source/WebCore/ChangeLog	2022-01-13 20:22:50 UTC (rev 287986)
@@ -1,3 +1,14 @@
+2022-01-13  Tim Horton  <timothy_hor...@apple.com>
+
+        Fix a few Objective-C object leaks due to early returns in `init`
+        https://bugs.webkit.org/show_bug.cgi?id=235162
+        <rdar://problem/87489048>
+
+        Reviewed by Wenson Hsieh.
+
+        * platform/ios/WebAVPlayerController.mm:
+        (-[WebAVPlayerController init]):
+
 2022-01-13  Alejandro G. Castro  <a...@igalia.com>
 
         Remove the code inside USE(OPENGL) && ENABLE(WEBGL2)

Modified: trunk/Source/WebCore/platform/ios/WebAVPlayerController.mm (287985 => 287986)


--- trunk/Source/WebCore/platform/ios/WebAVPlayerController.mm	2022-01-13 20:10:09 UTC (rev 287985)
+++ trunk/Source/WebCore/platform/ios/WebAVPlayerController.mm	2022-01-13 20:22:50 UTC (rev 287986)
@@ -66,8 +66,10 @@
 
 - (instancetype)init
 {
-    if (!getAVPlayerControllerClass())
+    if (!getAVPlayerControllerClass()) {
+        [self release];
         return nil;
+    }
 
     if (!(self = [super init]))
         return self;

Modified: trunk/Source/WebKit/ChangeLog (287985 => 287986)


--- trunk/Source/WebKit/ChangeLog	2022-01-13 20:10:09 UTC (rev 287985)
+++ trunk/Source/WebKit/ChangeLog	2022-01-13 20:22:50 UTC (rev 287986)
@@ -1,3 +1,14 @@
+2022-01-13  Tim Horton  <timothy_hor...@apple.com>
+
+        Fix a few Objective-C object leaks due to early returns in `init`
+        https://bugs.webkit.org/show_bug.cgi?id=235162
+        <rdar://problem/87489048>
+
+        Reviewed by Wenson Hsieh.
+
+        * UIProcess/ios/WKHoverPlatter.mm:
+        (-[WKHoverPlatter initWithView:delegate:]):
+
 2022-01-13  Patrick Angle  <pan...@apple.com>
 
         Web Inspector: Implement `frameURL` option for `devtools.inspectedWindow.eval` command

Modified: trunk/Source/WebKit/UIProcess/ios/WKHoverPlatter.mm (287985 => 287986)


--- trunk/Source/WebKit/UIProcess/ios/WKHoverPlatter.mm	2022-01-13 20:10:09 UTC (rev 287985)
+++ trunk/Source/WebKit/UIProcess/ios/WKHoverPlatter.mm	2022-01-13 20:22:50 UTC (rev 287986)
@@ -93,8 +93,10 @@
 - (instancetype)initWithView:(UIView *)view delegate:(id <WKHoverPlatterDelegate>)delegate
 {
     auto parameters = WKHoverPlatterDomain.rootSettings;
-    if (!parameters.platterEnabledForMouse && !parameters.platterEnabledForHover)
+    if (!parameters.platterEnabledForMouse && !parameters.platterEnabledForHover) {
+        [self release];
         return nil;
+    }
 
     self = [super init];
     if (!self)

Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (287985 => 287986)


--- trunk/Source/WebKitLegacy/mac/ChangeLog	2022-01-13 20:10:09 UTC (rev 287985)
+++ trunk/Source/WebKitLegacy/mac/ChangeLog	2022-01-13 20:22:50 UTC (rev 287986)
@@ -1,3 +1,14 @@
+2022-01-13  Tim Horton  <timothy_hor...@apple.com>
+
+        Fix a few Objective-C object leaks due to early returns in `init`
+        https://bugs.webkit.org/show_bug.cgi?id=235162
+        <rdar://problem/87489048>
+
+        Reviewed by Wenson Hsieh.
+
+        * Storage/WebDatabaseQuotaManager.mm:
+        (WebCore::if):
+
 2022-01-12  Matt Woodrow  <mattwood...@apple.com>
 
         _paintBehaviorForDestinationContext should consider kCGContextTypeDisplayList type contexts as potentially being snapshots

Modified: trunk/Source/WebKitLegacy/mac/Storage/WebDatabaseQuotaManager.mm (287985 => 287986)


--- trunk/Source/WebKitLegacy/mac/Storage/WebDatabaseQuotaManager.mm	2022-01-13 20:10:09 UTC (rev 287985)
+++ trunk/Source/WebKitLegacy/mac/Storage/WebDatabaseQuotaManager.mm	2022-01-13 20:22:50 UTC (rev 287986)
@@ -35,8 +35,10 @@
 
 - (id)initWithOrigin:(WebSecurityOrigin *)origin
 {
-    if (!origin)
+    if (!origin) {
+        [self release];
         return nil;
+    }
 
     self = [super init];
     if (!self)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to