Spintracer treats the web process as hung when it's showing JavaScript dialogs in the UI process
Created attachment 255136 [details] Patch
Comment on attachment 255136 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=255136&action=review > Source/WebKit2/Shared/mac/HangDetectionDisablerMac.mm:38 > + if (CGSCopyConnectionProperty(CGSMainConnectionID(), CGSMainConnectionID(), clientsMayIgnoreEventsKey, &value) != kCGErrorSuccess) Shouldn't we CFRelease value after this copy? Maybe use RetainPtr here? > Source/WebKit2/Shared/mac/WebMemorySampler.mac.mm:-32 > -#import "config.h" > -#import "WebMemorySampler.h" > - > -#if ENABLE(MEMORY_SAMPLER) > - > -#import <JavaScriptCore/MemoryStatistics.h> > -#import <mach/mach.h> Revert?
Created attachment 255138 [details] Patch
Created attachment 255139 [details] Patch
Comment on attachment 255139 [details] Patch r=me
Nice! Do you plan to adopt this for sync XHR, or would you like us to keep receiving reports about those?
<rdar://problem/21449395>
(In reply to comment #6) > Nice! Do you plan to adopt this for sync XHR, or would you like us to keep > receiving reports about those? I talked to Gavin about doing it - it's definitely something we should do. Same thing for window.print.
Committed r185749: <http://trac.webkit.org/changeset/185749>
Comment on attachment 255139 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=255139&action=review > Source/WebKit2/Shared/mac/HangDetectionDisablerMac.mm:47 > + auto value = adoptCF(valuePtr); > + > + if (!value || CFGetTypeID(value.get()) != CFBooleanGetTypeID()) > + return false; > + > + return value == kCFBooleanTrue; I think this one line does the same thing as the above four lines of code. return adoptCF(valuePtr) == kCFBooleanTrue;