<?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>169891</bug_id>
          
          <creation_ts>2017-03-20 14:01:15 -0700</creation_ts>
          <short_desc>Prevent new navigations from onbeforeunload handler</short_desc>
          <delta_ts>2019-02-06 22:02:36 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Page Loading</component>
          <version>WebKit Local Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=19418</see_also>
          <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 name="Daniel Bates">dbates</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>aestes</cc>
    
    <cc>ap</cc>
    
    <cc>beidson</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>japhet</cc>
    
    <cc>lokihardt</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1289566</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-03-20 14:01:15 -0700</bug_when>
    <thetext>We should not allow navigation initiated from an onberforeunload handler.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289567</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-03-20 14:01:57 -0700</bug_when>
    <thetext>&lt;rdar://problem/31155736&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289568</commentid>
    <comment_count>2</comment_count>
      <attachid>304947</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-03-20 14:02:58 -0700</bug_when>
    <thetext>Created attachment 304947
Patch and layout test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289569</commentid>
    <comment_count>3</comment_count>
      <attachid>304947</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-03-20 14:04:33 -0700</bug_when>
    <thetext>Comment on attachment 304947
Patch and layout test

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

&gt; Source/WebCore/ChangeLog:3
&gt; +        onbeforeunload handler may start new navigation

Would be nice to phrase this more actively: &quot;onbeforeunload handler may start new navigation but should not be able to&quot;, or, better, &quot;Prevent new navigations from onbeforeunload handler&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289570</commentid>
    <comment_count>4</comment_count>
      <attachid>304947</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-03-20 14:04:36 -0700</bug_when>
    <thetext>Comment on attachment 304947
Patch and layout test

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

&gt; LayoutTests/fast/events/before-unload-forbidden-navigation.html:15
&gt; +var didFireOnBeforeLoad = false;

Will rename to didFireOnbeforeunloadEvent before landing. I am open to suggestions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289571</commentid>
    <comment_count>5</comment_count>
      <attachid>304948</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-03-20 14:11:22 -0700</bug_when>
    <thetext>Created attachment 304948
Patch and layout test

Updated ChangeLog to reflect updated bug title. Also renamed the variable didFireOnBeforeLoad to didFireBeforeUnloadEvent in the included test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289608</commentid>
    <comment_count>6</comment_count>
      <attachid>304948</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-03-20 16:07:58 -0700</bug_when>
    <thetext>Comment on attachment 304948
Patch and layout test

Clearing flags on attachment: 304948

Committed r214194: &lt;http://trac.webkit.org/changeset/214194&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1289609</commentid>
    <comment_count>7</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2017-03-20 16:08:03 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1311426</commentid>
    <comment_count>8</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2017-05-22 10:49:35 -0700</bug_when>
    <thetext>*** Bug 169833 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1503281</commentid>
    <comment_count>9</comment_count>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2019-02-06 09:18:57 -0800</bug_when>
    <thetext>Mass move bugs into the DOM component.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>304947</attachid>
            <date>2017-03-20 14:02:58 -0700</date>
            <delta_ts>2017-03-20 14:11:14 -0700</delta_ts>
            <desc>Patch and layout test</desc>
            <filename>bug-169891-20170320140258.patch</filename>
            <type>text/plain</type>
            <size>5910</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE0MTg3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmVkZDA3MTM1OGIwYTE4
MjJkOTE3ZjJiYjEwZjliZWZjZmFjYWU2OC4uZjEzNjVhNDkyZGMyN2RkOWEzNTUyOTMxNTEyNzhl
NGY3MDY5YjhhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDE3LTAzLTIwICBEYW5p
ZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBvbmJlZm9yZXVubG9hZCBo
YW5kbGVyIG1heSBzdGFydCBuZXcgbmF2aWdhdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY5ODkxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8z
MTE1NTczNj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBFbnN1cmUgdGhhdCBhbGwgbmF2aWdhdGlvbnMgaW5pdGlhdGVkIGZyb20gYW4gb25iZWZvcmV1
bmxvYWQgaGFuZGxlciBhcmUgZGlzYWxsb3dlZAorICAgICAgICByZWdhcmRsZXNzIG9mIGhvdyB0
aGV5IHdlcmUgc2NoZWR1bGVkLiBTdWNoIG5hdmlnYXRpb25zIGdvIGFnYWluc3QgdGhlIGV4cGVj
dGF0aW9uCisgICAgICAgIG9mIGEgdXNlci4KKworICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRl
ci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6aXNOYXZpZ2F0aW9uQWxsb3dl
ZCk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmxvYWRVUkwpOiBNb2Rp
ZmllZCBjb2RlIHRvIGNhbGwgRnJhbWVMb2FkZXI6OmlzTmF2aWdhdGlvbkFsbG93ZWQoKS4KKyAg
ICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkV2l0aERvY3VtZW50TG9hZGVyKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6c3RvcEFsbExvYWRlcnMpOiBEaXR0
by4KKyAgICAgICAgKiBsb2FkZXIvRnJhbWVMb2FkZXIuaDoKKwogMjAxNy0wMy0yMCAgRXJpYyBD
YXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBbTWVkaWFTdHJlYW1d
IFJlc3BlY3QgY29uc3RyYWludHMgcGFzc2VkIHRvIGdldFVzZXJNZWRpYQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9GcmFtZUxvYWRlci5jcHAKaW5kZXggZjk5MzdjNzVlNjA1NjFiZGMwODc0NmVlOWZmODYw
OTNmYzM2MWRlOS4uODZhNzQwODcxOTU2ZjgxOTIyNzA2YWQwOTI0Mzk4OTAzZDViYzU0NiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCkBAIC0xMjEwLDYgKzEyMTAsMTEgQEAg
c3RhdGljIFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgc2hvdWxkT3BlbkV4dGVybmFsVVJM
c1BvbGljeVRvQXBwbHkoRnJhbWUmIHMKICAgICByZXR1cm4gcHJvcGFnYXRlZFBvbGljeTsKIH0K
IAorYm9vbCBGcmFtZUxvYWRlcjo6aXNOYXZpZ2F0aW9uQWxsb3dlZCgpIGNvbnN0Cit7CisgICAg
cmV0dXJuIG1fcGFnZURpc21pc3NhbEV2ZW50QmVpbmdEaXNwYXRjaGVkID09IFBhZ2VEaXNtaXNz
YWxUeXBlOjpOb25lICYmIE5hdmlnYXRpb25EaXNhYmxlckZvckJlZm9yZVVubG9hZDo6aXNOYXZp
Z2F0aW9uQWxsb3dlZCgpOworfQorCiB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkVVJMKGNvbnN0IEZy
YW1lTG9hZFJlcXVlc3QmIGZyYW1lTG9hZFJlcXVlc3QsIGNvbnN0IFN0cmluZyYgcmVmZXJyZXIs
IEZyYW1lTG9hZFR5cGUgbmV3TG9hZFR5cGUsIEV2ZW50KiBldmVudCwgRm9ybVN0YXRlKiBmb3Jt
U3RhdGUpCiB7CiAgICAgaWYgKG1faW5TdG9wQWxsTG9hZGVycykKQEAgLTEyNDgsNyArMTI1Myw3
IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmxvYWRVUkwoY29uc3QgRnJhbWVMb2FkUmVxdWVzdCYgZnJh
bWVMb2FkUmVxdWVzdCwgY29uc3QgU3RyaW5nCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAg
ICBpZiAobV9wYWdlRGlzbWlzc2FsRXZlbnRCZWluZ0Rpc3BhdGNoZWQgIT0gUGFnZURpc21pc3Nh
bFR5cGU6Ok5vbmUpCisgICAgaWYgKCFpc05hdmlnYXRpb25BbGxvd2VkKCkpCiAgICAgICAgIHJl
dHVybjsKIAogICAgIE5hdmlnYXRpb25BY3Rpb24gYWN0aW9uKHJlcXVlc3QsIG5ld0xvYWRUeXBl
LCBpc0Zvcm1TdWJtaXNzaW9uLCBldmVudCwgZnJhbWVMb2FkUmVxdWVzdC5zaG91bGRPcGVuRXh0
ZXJuYWxVUkxzUG9saWN5KCksIGZyYW1lTG9hZFJlcXVlc3QuZG93bmxvYWRBdHRyaWJ1dGUoKSk7
CkBAIC0xNDUzLDcgKzE0NTgsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkV2l0aERvY3VtZW50
TG9hZGVyKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIEZyYW1lTG9hZFR5cGUgdAogCiAgICAgQVNT
RVJUKG1fZnJhbWUudmlldygpKTsKIAotICAgIGlmIChtX3BhZ2VEaXNtaXNzYWxFdmVudEJlaW5n
RGlzcGF0Y2hlZCAhPSBQYWdlRGlzbWlzc2FsVHlwZTo6Tm9uZSkKKyAgICBpZiAoIWlzTmF2aWdh
dGlvbkFsbG93ZWQoKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKG1fZnJhbWUuZG9jdW1l
bnQoKSkKQEAgLTE2NDgsNyArMTY1Myw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OnJlbG9hZChPcHRp
b25TZXQ8UmVsb2FkT3B0aW9uPiBvcHRpb25zKQogdm9pZCBGcmFtZUxvYWRlcjo6c3RvcEFsbExv
YWRlcnMoQ2xlYXJQcm92aXNpb25hbEl0ZW1Qb2xpY3kgY2xlYXJQcm92aXNpb25hbEl0ZW1Qb2xp
Y3kpCiB7CiAgICAgQVNTRVJUKCFtX2ZyYW1lLmRvY3VtZW50KCkgfHwgbV9mcmFtZS5kb2N1bWVu
dCgpLT5wYWdlQ2FjaGVTdGF0ZSgpICE9IERvY3VtZW50OjpJblBhZ2VDYWNoZSk7Ci0gICAgaWYg
KG1fcGFnZURpc21pc3NhbEV2ZW50QmVpbmdEaXNwYXRjaGVkICE9IFBhZ2VEaXNtaXNzYWxUeXBl
OjpOb25lKQorICAgIGlmICghaXNOYXZpZ2F0aW9uQWxsb3dlZCgpKQogICAgICAgICByZXR1cm47
CiAKICAgICAvLyBJZiB0aGlzIG1ldGhvZCBpcyBjYWxsZWQgZnJvbSB3aXRoaW4gdGhpcyBtZXRo
b2QsIGluZmluaXRlIHJlY3Vyc2lvbiBjYW4gb2NjdXIgKDM0NDIyMTgpLiBBdm9pZCB0aGlzLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmggYi9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaAppbmRleCA3NDFiMGUwNTUwNzIxNTEzNTNlMTEw
NTM0MzllYWRiZGM1MGI0MmNlLi5mZDFiYjE1MDM5NGViODk3YTRjYzllNDBkN2YxZmVmMjdhOGQ1
YzY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaApAQCAtMzg4LDYgKzM4OCw4IEBA
IHByaXZhdGU6CiAKICAgICB2b2lkIGFwcGx5U2hvdWxkT3BlbkV4dGVybmFsVVJMc1BvbGljeVRv
TmV3RG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRMb2FkZXImLCBTaG91bGRPcGVuRXh0ZXJuYWxVUkxz
UG9saWN5IHByb3BhZ2F0ZWRQb2xpY3kpOwogCisgICAgYm9vbCBpc05hdmlnYXRpb25BbGxvd2Vk
KCkgY29uc3Q7CisKICAgICBGcmFtZSYgbV9mcmFtZTsKICAgICBGcmFtZUxvYWRlckNsaWVudCYg
bV9jbGllbnQ7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCBmNWY0NjQyYzM0ZWQzM2Y1MDZhNGRiM2JmMTY3NjUyNjg0ZjI3
OTAwLi41NGMxMTE1NTc1MThjMmQ3ZTcyODg4NWQ4ZjY2YTdjNTYzMWZmZDZjIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTYgQEAKKzIwMTctMDMtMjAgIERhbmllbCBCYXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29t
PgorCisgICAgICAgIG9uYmVmb3JldW5sb2FkIGhhbmRsZXIgbWF5IHN0YXJ0IG5ldyBuYXZpZ2F0
aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjk4
OTEKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzMxMTU1NzM2PgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZSB0ZXN0IHRvIGVuc3VyZSB0aGF0
IHdlIGRpc2FsbG93IG5hdmlnYXRpb24gaW5pdGlhdGVkIHZpYSBhIERPTSBjbGljayBldmVudCBm
cm9tCisgICAgICAgIGFuIG9uYmVmb3JldW5sb2FkIGhhbmRsZXIuCisKKyAgICAgICAgKiBmYXN0
L2V2ZW50cy9iZWZvcmUtdW5sb2FkLWZvcmJpZGRlbi1uYXZpZ2F0aW9uLmh0bWw6CisKIDIwMTct
MDMtMjAgIEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAg
W01lZGlhU3RyZWFtXSBSZXNwZWN0IGNvbnN0cmFpbnRzIHBhc3NlZCB0byBnZXRVc2VyTWVkaWEK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2JlZm9yZS11bmxvYWQtZm9yYmlk
ZGVuLW5hdmlnYXRpb24uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZXZlbnRzL2JlZm9yZS11bmxv
YWQtZm9yYmlkZGVuLW5hdmlnYXRpb24uaHRtbAppbmRleCBjZGJmOWI3MGNkZmU0MDZmNjUzMWJi
NTM1YzY3ZGEzNTVlYjZmN2Q0Li5jYjA2MTcxMWFhODdjODRkNTk3MDE5ODgyYTE1ZDRlNjliNGYy
MTUxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9iZWZvcmUtdW5sb2FkLWZv
cmJpZGRlbi1uYXZpZ2F0aW9uLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvYmVm
b3JlLXVubG9hZC1mb3JiaWRkZW4tbmF2aWdhdGlvbi5odG1sCkBAIC0xMiw2ICsxMiw3IEBAIGlm
ICh3aW5kb3cudGVzdFJ1bm5lcikgewogfQogCiB2YXIgbG9nID0gZG9jdW1lbnQuZ2V0RWxlbWVu
dEJ5SWQoJ2xvZycpOwordmFyIGRpZEZpcmVPbkJlZm9yZUxvYWQgPSBmYWxzZTsKIAogZnVuY3Rp
b24gdGVzdChpZnJhbWUpIHsKICAgICBpZiAoaWZyYW1lLmRvbmUpIHsKQEAgLTI1LDkgKzI2LDIy
IEBAIGZ1bmN0aW9uIHRlc3QoaWZyYW1lKSB7CiAgICAgaWZyYW1lLmNvbnRlbnRXaW5kb3cubG9j
YXRpb24uaHJlZiA9ICdyZXNvdXJjZXMvYmVmb3JlLXVubG9hZC1pbi1zdWJmcmFtZS1jaGlsZC5o
dG1sJzsKIH0KIAorZnVuY3Rpb24gbmF2aWdhdGVCeUNsaWNraW5nSHlwZXJsaW5rKGNvbnRlbnRX
aW5kb3csIHVybCkgeworICAgIHZhciBsaW5rID0gY29udGVudFdpbmRvdy5kb2N1bWVudC5jcmVh
dGVFbGVtZW50KCdhJyk7CisgICAgbGluay5ocmVmID0gdXJsOworICAgIGxpbmsuY2xpY2soKTsK
K30KKwogZnVuY3Rpb24gZmlyZWQoY29udGVudFdpbmRvdykgeworICAgIGlmIChkaWRGaXJlT25C
ZWZvcmVMb2FkKQorICAgICAgICByZXR1cm47CisgICAgZGlkRmlyZU9uQmVmb3JlTG9hZCA9IHRy
dWU7CisKICAgICBsb2NhdGlvbi5ocmVmID0gJ3Jlc291cmNlcy9iZWZvcmUtdW5sb2FkLWluLXN1
YmZyYW1lLWZhaWwuaHRtbCc7CiAgICAgY29udGVudFdpbmRvdy5sb2NhdGlvbi5ocmVmID0gJ3Jl
c291cmNlcy9iZWZvcmUtdW5sb2FkLWluLXN1YmZyYW1lLWZhaWwuaHRtbCc7CisgICAgbmF2aWdh
dGVCeUNsaWNraW5nSHlwZXJsaW5rKGNvbnRlbnRXaW5kb3csICdyZXNvdXJjZXMvYmVmb3JlLXVu
bG9hZC1pbi1zdWJmcmFtZS1mYWlsLmh0bWwnKTsKKyAgICBuYXZpZ2F0ZUJ5Q2xpY2tpbmdIeXBl
cmxpbmsod2luZG93LCAncmVzb3VyY2VzL2JlZm9yZS11bmxvYWQtaW4tc3ViZnJhbWUtZmFpbC5o
dG1sJyk7CisKICAgICBsb2cuaW5uZXJIVE1MID0gJ1BBU1MgMS8yJzsKICAgICBjb250ZW50V2lu
ZG93LmZyYW1lRWxlbWVudC5oYWxmUGFzc2VkID0gdHJ1ZTsKIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>304948</attachid>
            <date>2017-03-20 14:11:22 -0700</date>
            <delta_ts>2017-03-20 16:07:58 -0700</delta_ts>
            <desc>Patch and layout test</desc>
            <filename>bug-169891-20170320141122.patch</filename>
            <type>text/plain</type>
            <size>5945</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE0MTkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjU5MTRkYWZlMWIxNjFl
OGJhODNmOGFiMTliOGFiOWVmNjk3Y2U1Yi4uOWFmNzBiMzg0OTVlMThiNTRkNzQ3NDQ4OWRjYWQx
NjhlNjkzNDI3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDE3LTAzLTIwICBEYW5p
ZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBQcmV2ZW50IG5ldyBuYXZp
Z2F0aW9ucyBmcm9tIG9uYmVmb3JldW5sb2FkIGhhbmRsZXIKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2OTg5MQorICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vMzExNTU3MzY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgRW5zdXJlIHRoYXQgYWxsIG5hdmlnYXRpb25zIGluaXRpYXRlZCBmcm9tIGFuIG9uYmVm
b3JldW5sb2FkIGhhbmRsZXIgYXJlIGRpc2FsbG93ZWQKKyAgICAgICAgcmVnYXJkbGVzcyBvZiBo
b3cgdGhleSB3ZXJlIHNjaGVkdWxlZC4gU3VjaCBuYXZpZ2F0aW9ucyBnbyBhZ2FpbnN0IHRoZSBl
eHBlY3RhdGlvbgorICAgICAgICBvZiBhIHVzZXIuCisKKyAgICAgICAgKiBsb2FkZXIvRnJhbWVM
b2FkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OmlzTmF2aWdhdGlvbkFs
bG93ZWQpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyOjpsb2FkVVJMKTog
TW9kaWZpZWQgY29kZSB0byBjYWxsIEZyYW1lTG9hZGVyOjppc05hdmlnYXRpb25BbGxvd2VkKCku
CisgICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlcjo6bG9hZFdpdGhEb2N1bWVudExvYWRlcik6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVMb2FkZXI6OnN0b3BBbGxMb2FkZXJzKTog
RGl0dG8uCisgICAgICAgICogbG9hZGVyL0ZyYW1lTG9hZGVyLmg6CisKIDIwMTctMDMtMjAgIEFs
ZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KIAogICAgICAgICBQcmVw
YXJlIFNvY2tldFN0cmVhbUhhbmRsZSBmb3IgYmVpbmcgY3JlYXRlZCBmcm9tIFdLMgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKaW5kZXggZjk5MzdjNzVlNjA1NjFiZGMwODc0NmVl
OWZmODYwOTNmYzM2MWRlOS4uODZhNzQwODcxOTU2ZjgxOTIyNzA2YWQwOTI0Mzk4OTAzZDViYzU0
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCkBAIC0xMjEwLDYgKzEyMTAs
MTEgQEAgc3RhdGljIFNob3VsZE9wZW5FeHRlcm5hbFVSTHNQb2xpY3kgc2hvdWxkT3BlbkV4dGVy
bmFsVVJMc1BvbGljeVRvQXBwbHkoRnJhbWUmIHMKICAgICByZXR1cm4gcHJvcGFnYXRlZFBvbGlj
eTsKIH0KIAorYm9vbCBGcmFtZUxvYWRlcjo6aXNOYXZpZ2F0aW9uQWxsb3dlZCgpIGNvbnN0Cit7
CisgICAgcmV0dXJuIG1fcGFnZURpc21pc3NhbEV2ZW50QmVpbmdEaXNwYXRjaGVkID09IFBhZ2VE
aXNtaXNzYWxUeXBlOjpOb25lICYmIE5hdmlnYXRpb25EaXNhYmxlckZvckJlZm9yZVVubG9hZDo6
aXNOYXZpZ2F0aW9uQWxsb3dlZCgpOworfQorCiB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkVVJMKGNv
bnN0IEZyYW1lTG9hZFJlcXVlc3QmIGZyYW1lTG9hZFJlcXVlc3QsIGNvbnN0IFN0cmluZyYgcmVm
ZXJyZXIsIEZyYW1lTG9hZFR5cGUgbmV3TG9hZFR5cGUsIEV2ZW50KiBldmVudCwgRm9ybVN0YXRl
KiBmb3JtU3RhdGUpCiB7CiAgICAgaWYgKG1faW5TdG9wQWxsTG9hZGVycykKQEAgLTEyNDgsNyAr
MTI1Myw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmxvYWRVUkwoY29uc3QgRnJhbWVMb2FkUmVxdWVz
dCYgZnJhbWVMb2FkUmVxdWVzdCwgY29uc3QgU3RyaW5nCiAgICAgICAgIHJldHVybjsKICAgICB9
CiAKLSAgICBpZiAobV9wYWdlRGlzbWlzc2FsRXZlbnRCZWluZ0Rpc3BhdGNoZWQgIT0gUGFnZURp
c21pc3NhbFR5cGU6Ok5vbmUpCisgICAgaWYgKCFpc05hdmlnYXRpb25BbGxvd2VkKCkpCiAgICAg
ICAgIHJldHVybjsKIAogICAgIE5hdmlnYXRpb25BY3Rpb24gYWN0aW9uKHJlcXVlc3QsIG5ld0xv
YWRUeXBlLCBpc0Zvcm1TdWJtaXNzaW9uLCBldmVudCwgZnJhbWVMb2FkUmVxdWVzdC5zaG91bGRP
cGVuRXh0ZXJuYWxVUkxzUG9saWN5KCksIGZyYW1lTG9hZFJlcXVlc3QuZG93bmxvYWRBdHRyaWJ1
dGUoKSk7CkBAIC0xNDUzLDcgKzE0NTgsNyBAQCB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkV2l0aERv
Y3VtZW50TG9hZGVyKERvY3VtZW50TG9hZGVyKiBsb2FkZXIsIEZyYW1lTG9hZFR5cGUgdAogCiAg
ICAgQVNTRVJUKG1fZnJhbWUudmlldygpKTsKIAotICAgIGlmIChtX3BhZ2VEaXNtaXNzYWxFdmVu
dEJlaW5nRGlzcGF0Y2hlZCAhPSBQYWdlRGlzbWlzc2FsVHlwZTo6Tm9uZSkKKyAgICBpZiAoIWlz
TmF2aWdhdGlvbkFsbG93ZWQoKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKG1fZnJhbWUu
ZG9jdW1lbnQoKSkKQEAgLTE2NDgsNyArMTY1Myw3IEBAIHZvaWQgRnJhbWVMb2FkZXI6OnJlbG9h
ZChPcHRpb25TZXQ8UmVsb2FkT3B0aW9uPiBvcHRpb25zKQogdm9pZCBGcmFtZUxvYWRlcjo6c3Rv
cEFsbExvYWRlcnMoQ2xlYXJQcm92aXNpb25hbEl0ZW1Qb2xpY3kgY2xlYXJQcm92aXNpb25hbEl0
ZW1Qb2xpY3kpCiB7CiAgICAgQVNTRVJUKCFtX2ZyYW1lLmRvY3VtZW50KCkgfHwgbV9mcmFtZS5k
b2N1bWVudCgpLT5wYWdlQ2FjaGVTdGF0ZSgpICE9IERvY3VtZW50OjpJblBhZ2VDYWNoZSk7Ci0g
ICAgaWYgKG1fcGFnZURpc21pc3NhbEV2ZW50QmVpbmdEaXNwYXRjaGVkICE9IFBhZ2VEaXNtaXNz
YWxUeXBlOjpOb25lKQorICAgIGlmICghaXNOYXZpZ2F0aW9uQWxsb3dlZCgpKQogICAgICAgICBy
ZXR1cm47CiAKICAgICAvLyBJZiB0aGlzIG1ldGhvZCBpcyBjYWxsZWQgZnJvbSB3aXRoaW4gdGhp
cyBtZXRob2QsIGluZmluaXRlIHJlY3Vyc2lvbiBjYW4gb2NjdXIgKDM0NDIyMTgpLiBBdm9pZCB0
aGlzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaAppbmRleCA3NDFiMGUwNTUwNzIxNTEz
NTNlMTEwNTM0MzllYWRiZGM1MGI0MmNlLi5mZDFiYjE1MDM5NGViODk3YTRjYzllNDBkN2YxZmVm
MjdhOGQ1YzY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaApAQCAtMzg4LDYgKzM4
OCw4IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIGFwcGx5U2hvdWxkT3BlbkV4dGVybmFsVVJMc1Bv
bGljeVRvTmV3RG9jdW1lbnRMb2FkZXIoRG9jdW1lbnRMb2FkZXImLCBTaG91bGRPcGVuRXh0ZXJu
YWxVUkxzUG9saWN5IHByb3BhZ2F0ZWRQb2xpY3kpOwogCisgICAgYm9vbCBpc05hdmlnYXRpb25B
bGxvd2VkKCkgY29uc3Q7CisKICAgICBGcmFtZSYgbV9mcmFtZTsKICAgICBGcmFtZUxvYWRlckNs
aWVudCYgbV9jbGllbnQ7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA1ZjczYTM0MWZhZTJiZTg1ZTQ0YWQxMjJlZjZiYjAz
ODkyNzkzOGU2Li4xMmVmMjI1MTRhYmRhZWZhNzliZjAwZjJlNmFkNjUxZGE0NWVkYjFiIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMTYgQEAKKzIwMTctMDMtMjAgIERhbmllbCBCYXRlcyAgPGRhYmF0ZXNAYXBw
bGUuY29tPgorCisgICAgICAgIFByZXZlbnQgbmV3IG5hdmlnYXRpb25zIGZyb20gb25iZWZvcmV1
bmxvYWQgaGFuZGxlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTY5ODkxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zMTE1NTczNj4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGUgdGVzdCB0byBl
bnN1cmUgdGhhdCB3ZSBkaXNhbGxvdyBuYXZpZ2F0aW9uIGluaXRpYXRlZCB2aWEgYSBET00gY2xp
Y2sgZXZlbnQgZnJvbQorICAgICAgICBhbiBvbmJlZm9yZXVubG9hZCBoYW5kbGVyLgorCisgICAg
ICAgICogZmFzdC9ldmVudHMvYmVmb3JlLXVubG9hZC1mb3JiaWRkZW4tbmF2aWdhdGlvbi5odG1s
OgorCiAyMDE3LTAzLTIwICBBbmR5IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbUXVpY2tMb29rXSBTdWJyZXNvdXJjZXMgc2hvdWxkIGJlIGluIHRoZSBzYW1lIG9yaWdpbiBh
cyB0aGUgbWFpbiBkb2N1bWVudApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMv
YmVmb3JlLXVubG9hZC1mb3JiaWRkZW4tbmF2aWdhdGlvbi5odG1sIGIvTGF5b3V0VGVzdHMvZmFz
dC9ldmVudHMvYmVmb3JlLXVubG9hZC1mb3JiaWRkZW4tbmF2aWdhdGlvbi5odG1sCmluZGV4IGNk
YmY5YjcwY2RmZTQwNmY2NTMxYmI1MzVjNjdkYTM1NWViNmY3ZDQuLjkzYWRlMjgzMzQ2MDhjN2M3
YmI5ODM5MWQzZjdjYTNlNGM4MmM5YTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZXZl
bnRzL2JlZm9yZS11bmxvYWQtZm9yYmlkZGVuLW5hdmlnYXRpb24uaHRtbAorKysgYi9MYXlvdXRU
ZXN0cy9mYXN0L2V2ZW50cy9iZWZvcmUtdW5sb2FkLWZvcmJpZGRlbi1uYXZpZ2F0aW9uLmh0bWwK
QEAgLTEyLDYgKzEyLDcgQEAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CiB9CiAKIHZhciBsb2cg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbG9nJyk7Cit2YXIgZGlkRmlyZUJlZm9yZVVubG9h
ZEV2ZW50ID0gZmFsc2U7CiAKIGZ1bmN0aW9uIHRlc3QoaWZyYW1lKSB7CiAgICAgaWYgKGlmcmFt
ZS5kb25lKSB7CkBAIC0yNSw5ICsyNiwyMiBAQCBmdW5jdGlvbiB0ZXN0KGlmcmFtZSkgewogICAg
IGlmcmFtZS5jb250ZW50V2luZG93LmxvY2F0aW9uLmhyZWYgPSAncmVzb3VyY2VzL2JlZm9yZS11
bmxvYWQtaW4tc3ViZnJhbWUtY2hpbGQuaHRtbCc7CiB9CiAKK2Z1bmN0aW9uIG5hdmlnYXRlQnlD
bGlja2luZ0h5cGVybGluayhjb250ZW50V2luZG93LCB1cmwpIHsKKyAgICB2YXIgbGluayA9IGNv
bnRlbnRXaW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpOworICAgIGxpbmsuaHJlZiA9
IHVybDsKKyAgICBsaW5rLmNsaWNrKCk7Cit9CisKIGZ1bmN0aW9uIGZpcmVkKGNvbnRlbnRXaW5k
b3cpIHsKKyAgICBpZiAoZGlkRmlyZUJlZm9yZVVubG9hZEV2ZW50KQorICAgICAgICByZXR1cm47
CisgICAgZGlkRmlyZUJlZm9yZVVubG9hZEV2ZW50ID0gdHJ1ZTsKKwogICAgIGxvY2F0aW9uLmhy
ZWYgPSAncmVzb3VyY2VzL2JlZm9yZS11bmxvYWQtaW4tc3ViZnJhbWUtZmFpbC5odG1sJzsKICAg
ICBjb250ZW50V2luZG93LmxvY2F0aW9uLmhyZWYgPSAncmVzb3VyY2VzL2JlZm9yZS11bmxvYWQt
aW4tc3ViZnJhbWUtZmFpbC5odG1sJzsKKyAgICBuYXZpZ2F0ZUJ5Q2xpY2tpbmdIeXBlcmxpbmso
Y29udGVudFdpbmRvdywgJ3Jlc291cmNlcy9iZWZvcmUtdW5sb2FkLWluLXN1YmZyYW1lLWZhaWwu
aHRtbCcpOworICAgIG5hdmlnYXRlQnlDbGlja2luZ0h5cGVybGluayh3aW5kb3csICdyZXNvdXJj
ZXMvYmVmb3JlLXVubG9hZC1pbi1zdWJmcmFtZS1mYWlsLmh0bWwnKTsKKwogICAgIGxvZy5pbm5l
ckhUTUwgPSAnUEFTUyAxLzInOwogICAgIGNvbnRlbnRXaW5kb3cuZnJhbWVFbGVtZW50LmhhbGZQ
YXNzZWQgPSB0cnVlOwogfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>