Title: [275188] trunk/Source/WebKit
- Revision
- 275188
- Author
- achristen...@apple.com
- Date
- 2021-03-29 15:57:19 -0700 (Mon, 29 Mar 2021)
Log Message
[Big Sur arm64] TestWebKitAPI.WebKit.AccessibilityReduceMotion is a flaky crash
https://bugs.webkit.org/show_bug.cgi?id=222824
Reviewed by Tim Horton.
Use smart pointers instead of storing raw ObjC pointers as ivars.
* UIProcess/Cocoa/PreferenceObserver.mm:
(-[WKUserDefaults findPreferenceChangesAndNotifyForKeys:toValuesForKeys:]):
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (275187 => 275188)
--- trunk/Source/WebKit/ChangeLog 2021-03-29 22:55:49 UTC (rev 275187)
+++ trunk/Source/WebKit/ChangeLog 2021-03-29 22:57:19 UTC (rev 275188)
@@ -1,3 +1,15 @@
+2021-03-29 Alex Christensen <achristen...@webkit.org>
+
+ [Big Sur arm64] TestWebKitAPI.WebKit.AccessibilityReduceMotion is a flaky crash
+ https://bugs.webkit.org/show_bug.cgi?id=222824
+
+ Reviewed by Tim Horton.
+
+ Use smart pointers instead of storing raw ObjC pointers as ivars.
+
+ * UIProcess/Cocoa/PreferenceObserver.mm:
+ (-[WKUserDefaults findPreferenceChangesAndNotifyForKeys:toValuesForKeys:]):
+
2021-03-29 Wenson Hsieh <wenson_hs...@apple.com>
Add a way for internal clients to hit-test for selectable text in user agent shadow roots
Modified: trunk/Source/WebKit/UIProcess/Cocoa/PreferenceObserver.mm (275187 => 275188)
--- trunk/Source/WebKit/UIProcess/Cocoa/PreferenceObserver.mm 2021-03-29 22:55:49 UTC (rev 275187)
+++ trunk/Source/WebKit/UIProcess/Cocoa/PreferenceObserver.mm 2021-03-29 22:57:19 UTC (rev 275188)
@@ -28,12 +28,13 @@
#import "WebProcessPool.h"
#import <pal/spi/cocoa/NSUserDefaultsSPI.h>
+#import <wtf/WeakObjCPtr.h>
@interface WKUserDefaults : NSUserDefaults {
@private
- NSString *m_suiteName;
+ RetainPtr<NSString> m_suiteName;
@public
- WKPreferenceObserver *m_observer;
+ WeakObjCPtr<WKPreferenceObserver> m_observer;
}
- (void)findPreferenceChangesAndNotifyForKeys:(NSDictionary<NSString *, id> *)oldValues toValuesForKeys:(NSDictionary<NSString *, id> *)newValues;
@end
@@ -71,7 +72,7 @@
}
auto globalValue = adoptCF(CFPreferencesCopyValue((__bridge CFStringRef)key, kCFPreferencesAnyApplication, kCFPreferencesCurrentUser, kCFPreferencesAnyHost));
- auto domainValue = adoptCF(CFPreferencesCopyValue((__bridge CFStringRef)key, (__bridge CFStringRef)m_suiteName, kCFPreferencesCurrentUser, kCFPreferencesAnyHost));
+ auto domainValue = adoptCF(CFPreferencesCopyValue((__bridge CFStringRef)key, (__bridge CFStringRef)m_suiteName.get(), kCFPreferencesCurrentUser, kCFPreferencesAnyHost));
auto preferenceValuesAreEqual = [] (id a, id b) {
return a == b || [a isEqual:b];
@@ -81,7 +82,7 @@
[m_observer preferenceDidChange:nil key:key encodedValue:encodedString];
if (preferenceValuesAreEqual((__bridge id)domainValue.get(), newValue))
- [m_observer preferenceDidChange:m_suiteName key:key encodedValue:encodedString];
+ [m_observer preferenceDidChange:m_suiteName.get() key:key encodedValue:encodedString];
}
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes