Bug 213173

Summary: REGRESSION(r262994): [GTK] More than 100 tests are failing
Product: WebKit Reporter: Diego Pino <dpino>
Component: New BugsAssignee: Diego Pino <dpino>
Status: RESOLVED FIXED    
Severity: Normal CC: ddkilzer, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=206738
Bug Depends on: 211988    
Bug Blocks:    
Attachments:
Description Flags
Patch
none
Patch none

Description Diego Pino 2020-06-13 14:02:30 PDT
Many tests started failing in GTK Release (Tests) build #14065 (https://build.webkit.org/builders/GTK%20Linux%2064-bit%20Release%20%28Tests%29/builds/14065)

https://build.webkit.org/results/GTK%20Linux%2064-bit%20Release%20(Tests)/r262995%20(14065)/results.html

There are only two revisions in the build. I bisected the revisions and verified the failures started happening in r262994.
Comment 1 Diego Pino 2020-06-14 04:07:07 PDT
https://build.webkit.org/results/GTK%20Linux%2064-bit%20Debug%20(Tests)/r263006%20(6439)/fast/loader/javascript-url-in-embed-crash-log.txt

STDERR: 
STDERR: warning: core file may not match specified executable file.
STDERR: ASSERTION FAILED: WTF::isValidEnum<E>(WTF::enumToUnderlyingType<E>(enumValue))
STDERR: ../../Source/WebKit/Platform/IPC/Encoder.h(108) : void IPC::Encoder::encode(E) [with E = WebCore::PluginLoadClientPolicy; std::enable_if_t<std::is_enum<_Tp>::value>* <anonymous> = 0]
STDERR: 1   0x7f70a743bb63 WTFCrash
Comment 2 David Kilzer (:ddkilzer) 2020-06-16 21:52:05 PDT
Sorry, just noticed this.  Will look into it tomorrow.  (Also forgot that GTK tests aren't run by EWS.)
Comment 3 David Kilzer (:ddkilzer) 2020-06-16 22:01:19 PDT
I wonder if we just need to provide a default initializer for WebCore::PluginInfo::clientLoadPolicy (and ::isApplicationPlugin while we're here):

diff --git a/Source/WebCore/plugins/PluginData.h b/Source/WebCore/plugins/PluginData.h
index 259e3dc847e..1ca828883cc 100644
--- a/Source/WebCore/plugins/PluginData.h
+++ b/Source/WebCore/plugins/PluginData.h
@@ -67,7 +67,7 @@ struct PluginInfo {
     Vector<MimeClassInfo> mimes;
-    bool isApplicationPlugin;
+    bool isApplicationPlugin { false };
 
-    PluginLoadClientPolicy clientLoadPolicy;
+    PluginLoadClientPolicy clientLoadPolicy { PluginLoadClientPolicy::Undefined };
 
     String bundleIdentifier;
 #if PLATFORM(MAC)
Comment 4 Diego Pino 2020-06-17 00:26:25 PDT
Created attachment 402085 [details]
Patch
Comment 5 Diego Pino 2020-06-17 00:28:37 PDT
Created attachment 402086 [details]
Patch
Comment 6 Diego Pino 2020-06-17 01:17:56 PDT
Committed r263139: <https://trac.webkit.org/changeset/263139>
Comment 7 Radar WebKit Bug Importer 2020-06-17 01:18:16 PDT
<rdar://problem/64439668>
Comment 8 Diego Pino 2020-06-17 01:18:59 PDT
Thank you David. Your patch fixed the regression (I run the tests locally to verify it).
Comment 9 David Kilzer (:ddkilzer) 2020-06-17 09:20:56 PDT
(In reply to Diego Pino from comment #8)
> Thank you David. Your patch fixed the regression (I run the tests locally to
> verify it).

Great!  Thanks for testing the fix and committing it.