WebKit Bugzilla
Attachment 340719 Details for
Bug 185775
: Convert ProcessPrivilege assertions to regular debug-only assertions
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-185775-20180518114152.patch (text/plain), 19.36 KB, created by
Brent Fulgham
on 2018-05-18 11:41:53 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Brent Fulgham
Created:
2018-05-18 11:41:53 PDT
Size:
19.36 KB
patch
obsolete
>Subversion Revision: 231968 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 3b01181ae0635e99fa621cf23536730c9bd021a1..7f2876a8a862bf9cd58e531a7ce61ef14692775d 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,29 @@ >+2018-05-18 Brent Fulgham <bfulgham@apple.com> >+ >+ Convert ProcessPrivilege assertions to regular debug-only assertions >+ https://bugs.webkit.org/show_bug.cgi?id=185775 >+ <rdar://problem/40372286> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ In Bug 184322 I added a number of RELEASE_ASSERT checks that certain >+ UI-only calls were not being made in the WebContent process. >+ >+ Measurements have shown that these RELEASE_ASSERTs have regressed performance >+ by around 1% on some benchmarks, so we should convert them to normal asserts. >+ >+ This patch changes the RELEASE_ASSERTs into ASSERTs. >+ >+ * platform/mac/PasteboardMac.mm: >+ (WebCore::Pasteboard::setDragImage): >+ * platform/mac/PlatformScreenMac.mm: >+ (WebCore::displayID): >+ (WebCore::firstScreen): >+ (WebCore::window): >+ (WebCore::screen): >+ (WebCore::getScreenProperties): >+ (WebCore::screenIsMonochrome): >+ > 2018-05-18 Basuke Suzuki <Basuke.Suzuki@sony.com> > > [Curl] Bug fix on suspend/resume behavior. >diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog >index c9708127fb65bd2483faf297634a57512b19340d..de0fb4643b3bed86d637f9ffc32061f7cf892970 100644 >--- a/Source/WebKit/ChangeLog >+++ b/Source/WebKit/ChangeLog >@@ -1,3 +1,47 @@ >+2018-05-18 Brent Fulgham <bfulgham@apple.com> >+ >+ Convert ProcessPrivilege assertions to regular debug-only assertions >+ https://bugs.webkit.org/show_bug.cgi?id=185775 >+ <rdar://problem/40372286> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ In Bug 184322 I added a number of RELEASE_ASSERT checks that certain >+ UI-only calls were not being made in the WebContent process. >+ >+ Measurements have shown that these RELEASE_ASSERTs have regressed performance >+ by around 1% on some benchmarks, so we should convert them to normal asserts. >+ >+ This patch changes the RELEASE_ASSERTs into ASSERTs. >+ >+ * UIProcess/Cocoa/WebProcessPoolCocoa.mm: >+ (WebKit::WebProcessPool::platformInitializeWebProcess): >+ * UIProcess/Cocoa/WebViewImpl.mm: >+ (WebKit::WebViewImpl::WebViewImpl): >+ (WebKit::WebViewImpl::becomeFirstResponder): >+ (WebKit::WebViewImpl::pluginFocusOrWindowFocusChanged): >+ (WebKit::WebViewImpl::validateUserInterfaceItem): >+ (WebKit::WebViewImpl::startSpeaking): >+ (WebKit::WebViewImpl::stopSpeaking): >+ (WebKit::applicationFlagsForDrag): >+ (WebKit::WebViewImpl::doneWithKeyEvent): >+ * UIProcess/Gamepad/mac/UIGamepadProviderMac.mm: >+ (WebKit::UIGamepadProvider::platformWebPageProxyForGamepadInput): >+ * UIProcess/Plugins/mac/PluginProcessProxyMac.mm: >+ (WebKit::PluginProcessProxy::enterFullscreen): >+ (WebKit::PluginProcessProxy::beginModal): >+ (WebKit::PluginProcessProxy::endModal): >+ * UIProcess/mac/DisplayLink.cpp: >+ (WebKit::DisplayLink::DisplayLink): >+ (WebKit::DisplayLink::~DisplayLink): >+ * UIProcess/mac/WebPageProxyMac.mm: >+ (WebKit::WebPageProxy::getIsSpeaking): >+ (WebKit::WebPageProxy::speak): >+ (WebKit::WebPageProxy::stopSpeaking): >+ (WebKit::WebPageProxy::startDisplayLink): >+ * UIProcess/mac/WebPopupMenuProxyMac.mm: >+ (WebKit::WebPopupMenuProxyMac::showPopupMenu): >+ > 2018-05-18 Wenson Hsieh <wenson_hsieh@apple.com> > > [Extra zoom mode] Clearing text fields should dispatch input events of type "deleteContent" >diff --git a/Source/WebCore/platform/mac/PasteboardMac.mm b/Source/WebCore/platform/mac/PasteboardMac.mm >index 6582af3b069f96c14e8da3c0ba9b453ed18f4ba9..47636c57ab936eeb1aae66529e310d903f4b5332 100644 >--- a/Source/WebCore/platform/mac/PasteboardMac.mm >+++ b/Source/WebCore/platform/mac/PasteboardMac.mm >@@ -676,7 +676,7 @@ void Pasteboard::setDragImage(DragImage image, const IntPoint& location) > // This is only relevant in WK1. Do not execute in the WebContent process, since it is now using > // NSRunLoop, and not the NSApplication run loop. > if ([NSApp isRunning]) { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > NSEvent* event = [NSEvent mouseEventWithType:NSEventTypeMouseMoved location:NSZeroPoint > modifierFlags:0 timestamp:0 windowNumber:0 context:nil eventNumber:0 clickCount:0 pressure:0]; > [NSApp postEvent:event atStart:YES]; >diff --git a/Source/WebCore/platform/mac/PlatformScreenMac.mm b/Source/WebCore/platform/mac/PlatformScreenMac.mm >index f47951905363747b6121203c61b3e38ddaa84439..c31add9174d3104e67fcfc9c59bdc6944102dd1b 100644 >--- a/Source/WebCore/platform/mac/PlatformScreenMac.mm >+++ b/Source/WebCore/platform/mac/PlatformScreenMac.mm >@@ -48,7 +48,7 @@ namespace WebCore { > > static PlatformDisplayID displayID(NSScreen *screen) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > return [[[screen deviceDescription] objectForKey:@"NSScreenNumber"] intValue]; > } > >@@ -71,7 +71,7 @@ static PlatformDisplayID displayID(Widget* widget) > // Screen containing the menubar. > static NSScreen *firstScreen() > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > NSArray *screens = [NSScreen screens]; > if (![screens count]) > return nil; >@@ -80,7 +80,7 @@ static NSScreen *firstScreen() > > static NSWindow *window(Widget* widget) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > if (!widget) > return nil; > return widget->platformWidget().window; >@@ -88,7 +88,7 @@ static NSWindow *window(Widget* widget) > > static NSScreen *screen(Widget* widget) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > // If the widget is in a window, use that, otherwise use the display ID from the host window. > // First case is for when the NSWindow is in the same process, second case for when it's not. > if (auto screenFromWindow = window(widget).screen) >@@ -110,7 +110,7 @@ static PlatformDisplayID& primaryScreenDisplayID() > > std::pair<PlatformDisplayID, HashMap<PlatformDisplayID, ScreenProperties>> getScreenProperties() > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > > HashMap<PlatformDisplayID, ScreenProperties> screenProperties; > std::optional<PlatformDisplayID> firstScreen; >@@ -171,7 +171,7 @@ bool screenIsMonochrome(Widget* widget) > return getScreenProperties(widget).screenIsMonochrome; > > // This is a system-wide accessibility setting, same on all screens. >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > return CGDisplayUsesForceToGray(); > } > >@@ -246,13 +246,13 @@ FloatRect screenAvailableRect(Widget* widget) > > NSScreen *screen(NSWindow *window) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > return [window screen] ?: firstScreen(); > } > > NSScreen *screen(PlatformDisplayID displayID) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > for (NSScreen *screen in [NSScreen screens]) { > if (WebCore::displayID(screen) == displayID) > return screen; >diff --git a/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm b/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm >index 894dc9ede6aaa0f2d4d11fdae0d5a98be0f9073e..3823945d17dc20d71b7b14c20521d482545f9a6a 100644 >--- a/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm >+++ b/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm >@@ -180,7 +180,7 @@ void WebProcessPool::platformInitializeWebProcess(WebProcessCreationParameters& > #if PLATFORM(MAC) > #pragma clang diagnostic push > #pragma clang diagnostic ignored "-Wdeprecated-declarations" >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > parameters.accessibilityEnhancedUserInterfaceEnabled = [[NSApp accessibilityAttributeValue:@"AXEnhancedUserInterface"] boolValue]; > #pragma clang diagnostic pop > #else >diff --git a/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm b/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm >index 5d1ffd6a42a932c2ee2633d45dbc352e8ff3721c..591b02e1b9a0f373159b0f99da92c67c220d5a67 100644 >--- a/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm >+++ b/Source/WebKit/UIProcess/Cocoa/WebViewImpl.mm >@@ -1295,7 +1295,7 @@ WebViewImpl::WebViewImpl(NSView <WebViewImplDelegate> *view, WKWebView *outerWeb > { > static_cast<PageClientImpl&>(*m_pageClient).setImpl(*this); > >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > [NSApp registerServicesMenuSendTypes:PasteboardTypes::forSelection() returnTypes:PasteboardTypes::forEditing()]; > > [view addTrackingArea:m_primaryTrackingArea.get()]; >@@ -1429,7 +1429,7 @@ bool WebViewImpl::acceptsFirstResponder() > > bool WebViewImpl::becomeFirstResponder() > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > // If we just became first responder again, there is no need to do anything, > // since resignFirstResponder has correctly detected this situation. > if (m_willBecomeFirstResponderAgain) { >@@ -2386,7 +2386,7 @@ bool WebViewImpl::tryHandlePluginComplexTextInputKeyDown(NSEvent *event) > > void WebViewImpl::pluginFocusOrWindowFocusChanged(bool pluginHasFocusAndWindowHasFocus, uint64_t pluginComplexTextInputIdentifier) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > BOOL inputSourceChanged = m_pluginComplexTextInputIdentifier; > > if (pluginHasFocusAndWindowHasFocus) { >@@ -2696,7 +2696,7 @@ static NSToolbarItem *toolbarItem(id <NSValidatedUserInterfaceItem> item) > > bool WebViewImpl::validateUserInterfaceItem(id <NSValidatedUserInterfaceItem> item) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > SEL action = [item action]; > > if (action == @selector(showGuessPanel:)) { >@@ -2818,7 +2818,7 @@ void WebViewImpl::setUserInterfaceItemState(NSString *commandName, bool enabled, > > void WebViewImpl::startSpeaking() > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > m_page->getSelectionOrContentsAsString([](const String& string, WebKit::CallbackBase::Error error) { > if (error != WebKit::CallbackBase::Error::None) > return; >@@ -2831,7 +2831,7 @@ void WebViewImpl::startSpeaking() > > void WebViewImpl::stopSpeaking(id sender) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > [NSApp stopSpeaking:sender]; > } > >@@ -3639,7 +3639,7 @@ void WebViewImpl::draggedImage(NSImage *image, CGPoint endPoint, NSDragOperation > > static WebCore::DragApplicationFlags applicationFlagsForDrag(NSView *view, id <NSDraggingInfo> draggingInfo) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > uint32_t flags = 0; > if ([NSApp modalWindow]) > flags = WebCore::DragApplicationIsModal; >@@ -4252,7 +4252,7 @@ void WebViewImpl::didRestoreScrollPosition() > > void WebViewImpl::doneWithKeyEvent(NSEvent *event, bool eventWasHandled) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > if ([event type] != NSEventTypeKeyDown) > return; > >diff --git a/Source/WebKit/UIProcess/Gamepad/mac/UIGamepadProviderMac.mm b/Source/WebKit/UIProcess/Gamepad/mac/UIGamepadProviderMac.mm >index a6aff8478360aee7b035b8605047527a4edf0ca9..895d42c9117a9934bdb3b2219f740567d312b6e4 100644 >--- a/Source/WebKit/UIProcess/Gamepad/mac/UIGamepadProviderMac.mm >+++ b/Source/WebKit/UIProcess/Gamepad/mac/UIGamepadProviderMac.mm >@@ -38,7 +38,7 @@ namespace WebKit { > > WebPageProxy* UIGamepadProvider::platformWebPageProxyForGamepadInput() > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > auto responder = [[NSApp keyWindow] firstResponder]; > > #if WK_API_ENABLED >diff --git a/Source/WebKit/UIProcess/Plugins/mac/PluginProcessProxyMac.mm b/Source/WebKit/UIProcess/Plugins/mac/PluginProcessProxyMac.mm >index 73a132e9761c5406a2f7867c06a6c2bd83e88f5f..25ace26f6ca160a0b76e51f71df7051e920d8b66 100644 >--- a/Source/WebKit/UIProcess/Plugins/mac/PluginProcessProxyMac.mm >+++ b/Source/WebKit/UIProcess/Plugins/mac/PluginProcessProxyMac.mm >@@ -132,7 +132,7 @@ void PluginProcessProxy::setFullscreenWindowIsShowing(bool fullscreenWindowIsSho > > void PluginProcessProxy::enterFullscreen() > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > // Get the current presentation options. > m_preFullscreenAppPresentationOptions = [NSApp presentationOptions]; > >@@ -193,7 +193,7 @@ void PluginProcessProxy::beginModal() > { > ASSERT(!m_placeholderWindow); > ASSERT(!m_activationObserver); >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > > m_placeholderWindow = adoptNS([[WKPlaceholderModalWindow alloc] initWithContentRect:NSMakeRect(0, 0, 1, 1) styleMask:NSWindowStyleMaskBorderless backing:NSBackingStoreBuffered defer:YES]); > [m_placeholderWindow setReleasedWhenClosed:NO]; >@@ -215,7 +215,7 @@ void PluginProcessProxy::endModal() > { > ASSERT(m_placeholderWindow); > ASSERT(m_activationObserver); >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > > [[NSNotificationCenter defaultCenter] removeObserver:m_activationObserver.get()]; > m_activationObserver = nullptr; >diff --git a/Source/WebKit/UIProcess/mac/DisplayLink.cpp b/Source/WebKit/UIProcess/mac/DisplayLink.cpp >index a2ff561a1c5ecde6d156cd7d7f87d45fd376f2d8..c3b0c2d1de570da196ab6c93eda0e105dfa715b6 100644 >--- a/Source/WebKit/UIProcess/mac/DisplayLink.cpp >+++ b/Source/WebKit/UIProcess/mac/DisplayLink.cpp >@@ -37,7 +37,7 @@ namespace WebKit { > > DisplayLink::DisplayLink(WebCore::PlatformDisplayID displayID, WebPageProxy& webPageProxy) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > CVReturn error = CVDisplayLinkCreateWithCGDisplay(displayID, &m_displayLink); > if (error) { > WTFLogAlways("Could not create a display link: %d", error); >@@ -57,7 +57,7 @@ DisplayLink::DisplayLink(WebCore::PlatformDisplayID displayID, WebPageProxy& web > > DisplayLink::~DisplayLink() > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > ASSERT(m_displayLink); > if (!m_displayLink) > return; >diff --git a/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm b/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm >index f62f1690a6ff7aa5df32fa84135d891a0f4c8813..37af08c143577fd5615e12229d91b96f36459fdc 100644 >--- a/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm >+++ b/Source/WebKit/UIProcess/mac/WebPageProxyMac.mm >@@ -133,19 +133,19 @@ String WebPageProxy::standardUserAgent(const String& applicationNameForUserAgent > > void WebPageProxy::getIsSpeaking(bool& isSpeaking) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > isSpeaking = [NSApp isSpeaking]; > } > > void WebPageProxy::speak(const String& string) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > [NSApp speakString:nsStringFromWebCoreString(string)]; > } > > void WebPageProxy::stopSpeaking() > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > [NSApp stopSpeaking:nil]; > } > >@@ -684,7 +684,7 @@ _WKRemoteObjectRegistry *WebPageProxy::remoteObjectRegistry() > #if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101400 > void WebPageProxy::startDisplayLink(unsigned observerID) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > if (!m_displayLink) { > uint32_t displayID = [[[[platformWindow() screen] deviceDescription] objectForKey:@"NSScreenNumber"] intValue]; > m_displayLink = std::make_unique<DisplayLink>(displayID, *this); >diff --git a/Source/WebKit/UIProcess/mac/WebPopupMenuProxyMac.mm b/Source/WebKit/UIProcess/mac/WebPopupMenuProxyMac.mm >index 6374159ddd923ef88973506ea5cc5454eb2766ea..bda42bc8e4eac1fb1820ce8e769253b230eb989c 100644 >--- a/Source/WebKit/UIProcess/mac/WebPopupMenuProxyMac.mm >+++ b/Source/WebKit/UIProcess/mac/WebPopupMenuProxyMac.mm >@@ -99,7 +99,7 @@ void WebPopupMenuProxyMac::populate(const Vector<WebPopupItem>& items, NSFont *f > > void WebPopupMenuProxyMac::showPopupMenu(const IntRect& rect, TextDirection textDirection, double pageScaleFactor, const Vector<WebPopupItem>& items, const PlatformPopupMenuData& data, int32_t selectedIndex) > { >- RELEASE_ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); >+ ASSERT(hasProcessPrivilege(ProcessPrivilege::CanCommunicateWithWindowServer)); > NSFont *font; > if (data.fontInfo.fontAttributeDictionary) { > NSFontDescriptor *fontDescriptor = [NSFontDescriptor fontDescriptorWithFontAttributes:(NSDictionary *)data.fontInfo.fontAttributeDictionary.get()];
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 185775
: 340719