<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>202077</bug_id>
          
          <creation_ts>2019-09-21 14:16:39 -0700</creation_ts>
          <short_desc>Safari 13 may launch leftover 32-bit plug-in process from Safari 12’s WebKit, which crashes</short_desc>
          <delta_ts>2019-09-21 23:13:29 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Plug-ins</component>
          <version>WebKit Local Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>mitz</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>sam</cc>
    
    <cc>sihui_liu</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1573088</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2019-09-21 14:16:39 -0700</bug_when>
    <thetext>rdar://problem/55547063

On macOS High Sierra, if Safari 13 was installed after Safari 12 had been installed, Safari may end up launching the 32-bit plug-in service left behind in the staged WebKit framework, and the service will crash immediately (because as of Safari 13, its dependencies don’t have a 32-bit slice). This can happen, for example, if there is still a 32-bit plug-in in /Library/Internet Plug-Ins, and the user chooses to manage website data.

This is because even though the 32-bit plug-in service has been removed from WebKit, the code paths that launch it haven’t been removed.

Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573094</commentid>
    <comment_count>1</comment_count>
      <attachid>379323</attachid>
    <who name="">mitz</who>
    <bug_when>2019-09-21 14:32:06 -0700</bug_when>
    <thetext>Created attachment 379323
Remove 32-bit plug-in code paths</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573095</commentid>
    <comment_count>2</comment_count>
      <attachid>379323</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2019-09-21 14:42:46 -0700</bug_when>
    <thetext>Comment on attachment 379323
Remove 32-bit plug-in code paths

View in context: https://bugs.webkit.org/attachment.cgi?id=379323&amp;action=review

&gt; Source/WebKit/UIProcess/Launcher/mac/ProcessLauncherMac.mm:60
&gt;      case ProcessLauncher::ProcessType::Plugin32:

What is the reason for keeping this enum case at all?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573096</commentid>
    <comment_count>3</comment_count>
    <who name="">mitz</who>
    <bug_when>2019-09-21 14:48:37 -0700</bug_when>
    <thetext>(In reply to Sam Weinig from comment #2)
&gt; Comment on attachment 379323 [details]
&gt; Remove 32-bit plug-in code paths
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=379323&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/UIProcess/Launcher/mac/ProcessLauncherMac.mm:60
&gt; &gt;      case ProcessLauncher::ProcessType::Plugin32:
&gt; 
&gt; What is the reason for keeping this enum case at all?

ProcessType is a cross-platform type, and I didn’t want to expand the scope of this patch beyond Mac code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573097</commentid>
    <comment_count>4</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2019-09-21 14:58:14 -0700</bug_when>
    <thetext>Gotcha.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573098</commentid>
    <comment_count>5</comment_count>
      <attachid>379323</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-21 15:57:53 -0700</bug_when>
    <thetext>Comment on attachment 379323
Remove 32-bit plug-in code paths

Clearing flags on attachment: 379323

Committed r250186: &lt;https://trac.webkit.org/changeset/250186&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573099</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-09-21 15:57:54 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573164</commentid>
    <comment_count>7</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-09-21 23:05:48 -0700</bug_when>
    <thetext>This is causing a lot of crashes on the bots (They exit early):
https://build.webkit.org/results/Apple%20Mojave%20Debug%20WK2%20(Tests)/r250186%20(4826)/results.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573165</commentid>
    <comment_count>8</comment_count>
      <attachid>379323</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-09-21 23:06:53 -0700</bug_when>
    <thetext>Comment on attachment 379323
Remove 32-bit plug-in code paths

View in context: https://bugs.webkit.org/attachment.cgi?id=379323&amp;action=review

&gt; Source/WebKit/UIProcess/Plugins/mac/PluginProcessProxyMac.mm:63
&gt; +    ASSERT(pluginProcessAttributes.moduleInfo.pluginArchitecture == CPU_TYPE_X86);

Looks like this assertion is hitting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573166</commentid>
    <comment_count>9</comment_count>
    <who name="">mitz</who>
    <bug_when>2019-09-21 23:07:27 -0700</bug_when>
    <thetext>(In reply to Chris Dumez from comment #8)
&gt; Comment on attachment 379323 [details]
&gt; Remove 32-bit plug-in code paths
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=379323&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/UIProcess/Plugins/mac/PluginProcessProxyMac.mm:63
&gt; &gt; +    ASSERT(pluginProcessAttributes.moduleInfo.pluginArchitecture == CPU_TYPE_X86);
&gt; 
&gt; Looks like this assertion is hitting.

I’ll see if I can reproduce this locally.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573167</commentid>
    <comment_count>10</comment_count>
    <who name="">mitz</who>
    <bug_when>2019-09-21 23:10:33 -0700</bug_when>
    <thetext>(In reply to mitz from comment #9)
&gt; (In reply to Chris Dumez from comment #8)
&gt; &gt; Comment on attachment 379323 [details]
&gt; &gt; Remove 32-bit plug-in code paths
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=379323&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebKit/UIProcess/Plugins/mac/PluginProcessProxyMac.mm:63
&gt; &gt; &gt; +    ASSERT(pluginProcessAttributes.moduleInfo.pluginArchitecture == CPU_TYPE_X86);

Silly mistake, this should say CPU_TYPE_X86_64. I’ll fix it right away. Thanks for noticing this!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573168</commentid>
    <comment_count>11</comment_count>
      <attachid>379323</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-09-21 23:11:14 -0700</bug_when>
    <thetext>Comment on attachment 379323
Remove 32-bit plug-in code paths

View in context: https://bugs.webkit.org/attachment.cgi?id=379323&amp;action=review

&gt;&gt;&gt; Source/WebKit/UIProcess/Plugins/mac/PluginProcessProxyMac.mm:63
&gt;&gt;&gt; +    ASSERT(pluginProcessAttributes.moduleInfo.pluginArchitecture == CPU_TYPE_X86);
&gt;&gt; 
&gt;&gt; Looks like this assertion is hitting.
&gt; 
&gt; I’ll see if I can reproduce this locally.

Shouldn’t this be != instead of == ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573169</commentid>
    <comment_count>12</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-09-21 23:13:19 -0700</bug_when>
    <thetext>(In reply to mitz from comment #10)
&gt; (In reply to mitz from comment #9)
&gt; &gt; (In reply to Chris Dumez from comment #8)
&gt; &gt; &gt; Comment on attachment 379323 [details]
&gt; &gt; &gt; Remove 32-bit plug-in code paths
&gt; &gt; &gt; 
&gt; &gt; &gt; View in context:
&gt; &gt; &gt; https://bugs.webkit.org/attachment.cgi?id=379323&amp;action=review
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Source/WebKit/UIProcess/Plugins/mac/PluginProcessProxyMac.mm:63
&gt; &gt; &gt; &gt; +    ASSERT(pluginProcessAttributes.moduleInfo.pluginArchitecture == CPU_TYPE_X86);
&gt; 
&gt; Silly mistake, this should say CPU_TYPE_X86_64. I’ll fix it right away.
&gt; Thanks for noticing this!

Oh just saw your comment, glad this is an easy fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1573170</commentid>
    <comment_count>13</comment_count>
    <who name="">mitz</who>
    <bug_when>2019-09-21 23:13:29 -0700</bug_when>
    <thetext>Corrected the assertion in r250197.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>379323</attachid>
            <date>2019-09-21 14:32:06 -0700</date>
            <delta_ts>2019-09-21 15:57:53 -0700</delta_ts>
            <desc>Remove 32-bit plug-in code paths</desc>
            <filename>file_202077.txt</filename>
            <type>text/plain</type>
            <size>3682</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nDQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cJKHJldmlzaW9uIDI1MDE4NSkNCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQ0KQEAgLTEsMyArMSwyMSBAQA0KKzIwMTktMDktMjEgIERhbiBC
ZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNvbT4NCisNCisgICAgICAgIFNhZmFyaSAxMyBtYXkgbGF1
bmNoIGxlZnRvdmVyIDMyLWJpdCBwbHVnLWluIHByb2Nlc3MgZnJvbSBTYWZhcmkgMTLigJlzIFdl
YktpdCwgd2hpY2ggY3Jhc2hlcw0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwMjA3Nw0KKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU1NTQ3MDYzPg0K
Kw0KKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuDQorDQorICAgICAgICAqIFNo
YXJlZC9QbHVnaW5zL05ldHNjYXBlL21hYy9OZXRzY2FwZVBsdWdpbk1vZHVsZU1hYy5tbToNCisg
ICAgICAgIChXZWJLaXQ6OmdldFBsdWdpbkFyY2hpdGVjdHVyZSk6IFJlbW92ZWQgc3VwcG9ydCBm
b3IgaTM4NiBwbHVnLWlucy4NCisNCisgICAgICAgICogVUlQcm9jZXNzL0xhdW5jaGVyL21hYy9Q
cm9jZXNzTGF1bmNoZXJNYWMubW06DQorICAgICAgICAoV2ViS2l0OjpzZXJ2aWNlTmFtZSk6IEFz
c2VydCB0aGF0IHRoZSByZXF1ZXN0ZWQgcHJvY2VzcyB0eXBlIGlzIG5vdCBQbHVnaW4zMi4NCisN
CisgICAgICAgICogVUlQcm9jZXNzL1BsdWdpbnMvbWFjL1BsdWdpblByb2Nlc3NQcm94eU1hYy5t
bToNCisgICAgICAgIChXZWJLaXQ6OlBsdWdpblByb2Nlc3NQcm94eTo6cGxhdGZvcm1HZXRMYXVu
Y2hPcHRpb25zV2l0aEF0dHJpYnV0ZXMpOiBBc3NlcnQgdGhhdCB0aGUNCisgICAgICAgICAgcGx1
Zy1pbiBhcmNoaXRlY3R1cmUgaXMgeDg2XzY0Lg0KKw0KIDIwMTktMDktMjEgIEFudG9pbmUgUXVp
bnQgIDxncmFvdXRzQGFwcGxlLmNvbT4NCiANCiAgICAgICAgIFtQb2ludGVyIEV2ZW50c10gdG91
Y2gtYWN0aW9uIHNldCB0byBwYW4teCBvciBwYW4teSBhbG9uZSBzaG91bGQgZGlzYWJsZSBzY3Jv
bGxpbmcgYWx0b2dldGhlciBpZiB0aGUgaW50aWFsIGdlc3R1cmUgaXMgaW4gdGhlIGRpc2FsbG93
ZWQgZGlyZWN0aW9uDQpJbmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvUGx1Z2lucy9OZXRzY2Fw
ZS9tYWMvTmV0c2NhcGVQbHVnaW5Nb2R1bGVNYWMubW0NCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCi0tLSBTb3VyY2Uv
V2ViS2l0L1NoYXJlZC9QbHVnaW5zL05ldHNjYXBlL21hYy9OZXRzY2FwZVBsdWdpbk1vZHVsZU1h
Yy5tbQkocmV2aXNpb24gMjUwMTg1KQ0KKysrIFNvdXJjZS9XZWJLaXQvU2hhcmVkL1BsdWdpbnMv
TmV0c2NhcGUvbWFjL05ldHNjYXBlUGx1Z2luTW9kdWxlTWFjLm1tCSh3b3JraW5nIGNvcHkpDQpA
QCAtNjAsMTIgKzYwLDYgQEAgc3RhdGljIGJvb2wgZ2V0UGx1Z2luQXJjaGl0ZWN0dXJlKENGQnVu
ZA0KICAgICAgICAgcGx1Z2luLnBsdWdpbkFyY2hpdGVjdHVyZSA9IENQVV9UWVBFX1g4Nl82NDsN
CiAgICAgICAgIHJldHVybiB0cnVlOw0KICAgICB9DQotDQotICAgIC8vIFdlIGFsc28gc3VwcG9y
dCAzMi1iaXQgSW50ZWwgcGx1Zy1pbnMgb24gNjQtYml0IEludGVsLg0KLSAgICBpZiAoYXJjaGl0
ZWN0dXJlcy5jb250YWlucyhrQ0ZCdW5kbGVFeGVjdXRhYmxlQXJjaGl0ZWN0dXJlSTM4NikpIHsN
Ci0gICAgICAgIHBsdWdpbi5wbHVnaW5BcmNoaXRlY3R1cmUgPSBDUFVfVFlQRV9YODY7DQotICAg
ICAgICByZXR1cm4gdHJ1ZTsNCi0gICAgfQ0KICNlbmRpZg0KIA0KICAgICByZXR1cm4gZmFsc2U7
DQpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvTGF1bmNoZXIvbWFjL1Byb2Nlc3NMYXVu
Y2hlck1hYy5tbQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQ0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0xhdW5j
aGVyL21hYy9Qcm9jZXNzTGF1bmNoZXJNYWMubW0JKHJldmlzaW9uIDI1MDE4NSkNCisrKyBTb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9MYXVuY2hlci9tYWMvUHJvY2Vzc0xhdW5jaGVyTWFjLm1tCSh3
b3JraW5nIGNvcHkpDQpAQCAtNTgsNyArNTgsOCBAQCBzdGF0aWMgY29uc3QgY2hhciogc2Vydmlj
ZU5hbWUoY29uc3QgUHJvDQogICAgICAgICByZXR1cm4gImNvbS5hcHBsZS5XZWJLaXQuTmV0d29y
a2luZyI7DQogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQ0KICAgICBjYXNlIFByb2Nl
c3NMYXVuY2hlcjo6UHJvY2Vzc1R5cGU6OlBsdWdpbjMyOg0KLSAgICAgICAgcmV0dXJuICJjb20u
YXBwbGUuV2ViS2l0LlBsdWdpbi4zMiI7DQorICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsN
CisgICAgICAgIHJldHVybiBudWxscHRyOw0KICAgICBjYXNlIFByb2Nlc3NMYXVuY2hlcjo6UHJv
Y2Vzc1R5cGU6OlBsdWdpbjY0Og0KICAgICAgICAgcmV0dXJuICJjb20uYXBwbGUuV2ViS2l0LlBs
dWdpbi42NCI7DQogI2VuZGlmDQpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUGx1Z2lu
cy9tYWMvUGx1Z2luUHJvY2Vzc1Byb3h5TWFjLm1tDQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotLS0gU291cmNlL1dl
YktpdC9VSVByb2Nlc3MvUGx1Z2lucy9tYWMvUGx1Z2luUHJvY2Vzc1Byb3h5TWFjLm1tCShyZXZp
c2lvbiAyNTAxODUpDQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUGx1Z2lucy9tYWMvUGx1
Z2luUHJvY2Vzc1Byb3h5TWFjLm1tCSh3b3JraW5nIGNvcHkpDQpAQCAtNjAsMTAgKzYwLDggQEAg
bmFtZXNwYWNlIFdlYktpdCB7DQogICAgIA0KIHZvaWQgUGx1Z2luUHJvY2Vzc1Byb3h5OjpwbGF0
Zm9ybUdldExhdW5jaE9wdGlvbnNXaXRoQXR0cmlidXRlcyhQcm9jZXNzTGF1bmNoZXI6OkxhdW5j
aE9wdGlvbnMmIGxhdW5jaE9wdGlvbnMsIGNvbnN0IFBsdWdpblByb2Nlc3NBdHRyaWJ1dGVzJiBw
bHVnaW5Qcm9jZXNzQXR0cmlidXRlcykNCiB7DQotICAgIGlmIChwbHVnaW5Qcm9jZXNzQXR0cmli
dXRlcy5tb2R1bGVJbmZvLnBsdWdpbkFyY2hpdGVjdHVyZSA9PSBDUFVfVFlQRV9YODYpDQotICAg
ICAgICBsYXVuY2hPcHRpb25zLnByb2Nlc3NUeXBlID0gUHJvY2Vzc0xhdW5jaGVyOjpQcm9jZXNz
VHlwZTo6UGx1Z2luMzI7DQotICAgIGVsc2UNCi0gICAgICAgIGxhdW5jaE9wdGlvbnMucHJvY2Vz
c1R5cGUgPSBQcm9jZXNzTGF1bmNoZXI6OlByb2Nlc3NUeXBlOjpQbHVnaW42NDsNCisgICAgQVNT
RVJUKHBsdWdpblByb2Nlc3NBdHRyaWJ1dGVzLm1vZHVsZUluZm8ucGx1Z2luQXJjaGl0ZWN0dXJl
ID09IENQVV9UWVBFX1g4Nik7DQorICAgIGxhdW5jaE9wdGlvbnMucHJvY2Vzc1R5cGUgPSBQcm9j
ZXNzTGF1bmNoZXI6OlByb2Nlc3NUeXBlOjpQbHVnaW42NDsNCiANCiAgICAgbGF1bmNoT3B0aW9u
cy5leHRyYUluaXRpYWxpemF0aW9uRGF0YS5hZGQoInBsdWdpbi1wYXRoIiwgcGx1Z2luUHJvY2Vz
c0F0dHJpYnV0ZXMubW9kdWxlSW5mby5wYXRoKTsNCiANCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>