<?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>175366</bug_id>
          
          <creation_ts>2017-08-08 22:08:17 -0700</creation_ts>
          <short_desc>FTL&apos;s compileGetTypedArrayByteOffset needs to do caging</short_desc>
          <delta_ts>2017-08-12 18:59:58 -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>JavaScriptCore</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>
          
          <blocked>174917</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>ggaren</cc>
    
    <cc>jfbastien</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1336858</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2017-08-08 22:08:17 -0700</bug_when>
    <thetext>I think that for primitive gigacage, it has to do it.  The tricky thing about it is that it needs to handle null vectors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1338166</commentid>
    <comment_count>1</comment_count>
      <attachid>317998</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2017-08-12 11:55:29 -0700</bug_when>
    <thetext>Created attachment 317998
maybe the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1338168</commentid>
    <comment_count>2</comment_count>
      <attachid>317999</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2017-08-12 12:26:45 -0700</bug_when>
    <thetext>Created attachment 317999
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1338191</commentid>
    <comment_count>3</comment_count>
      <attachid>317999</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2017-08-12 15:37:53 -0700</bug_when>
    <thetext>Comment on attachment 317999
the patch

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

&gt; Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:11653
&gt; +        LBasicBlock lastNext = m_out.insertNewBlocksBefore(notNull);

Why this instead of relying on the result of appendTo below?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1338208</commentid>
    <comment_count>4</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2017-08-12 18:56:03 -0700</bug_when>
    <thetext>(In reply to Saam Barati from comment #3)
&gt; Comment on attachment 317999 [details]
&gt; the patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=317999&amp;action=review
&gt; 
&gt; &gt; Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:11653
&gt; &gt; +        LBasicBlock lastNext = m_out.insertNewBlocksBefore(notNull);
&gt; 
&gt; Why this instead of relying on the result of appendTo below?

That way, the code that we insert at the end of the current block will do the right thing if it also contains a control flow diamond.

Using the result of appendTo() is only safe if you are absolutely sure that none of the things you did before newBlock and appendTo added any other blocks.  Therefore, although I used to use the result of appendTo() a lot, I don&apos;t think it&apos;s actually safe.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1338209</commentid>
    <comment_count>5</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2017-08-12 18:59:32 -0700</bug_when>
    <thetext>Landed in https://trac.webkit.org/changeset/220628/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1338210</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-08-12 18:59:58 -0700</bug_when>
    <thetext>&lt;rdar://problem/33865694&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>317998</attachid>
            <date>2017-08-12 11:55:29 -0700</date>
            <delta_ts>2017-08-12 12:26:45 -0700</delta_ts>
            <desc>maybe the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>5988</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjIwNjI1KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBA
CisyMDE3LTA4LTEyICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
RlRMJ3MgY29tcGlsZUdldFR5cGVkQXJyYXlCeXRlT2Zmc2V0IG5lZWRzIHRvIGRvIGNhZ2luZwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc1MzY2CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBX
cml0ZSBzb21lIHRoaW5ncyAoT09QUyEpLgorCisgICAgICAgICogZGZnL0RGR1NwZWN1bGF0aXZl
SklULmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZUdldFR5
cGVkQXJyYXlCeXRlT2Zmc2V0KToKKyAgICAgICAgKiBmdGwvRlRMTG93ZXJERkdUb0IzLmNwcDoK
KyAgICAgICAgKEpTQzo6RlRMOjpERkc6Okxvd2VyREZHVG9CMzo6Y29tcGlsZUdldFR5cGVkQXJy
YXlCeXRlT2Zmc2V0KToKKyAgICAgICAgKEpTQzo6RlRMOjpERkc6Okxvd2VyREZHVG9CMzo6Y2Fn
ZWRNYXlCZU51bGwpOgorICAgICAgICAqIHJ1bnRpbWUvQXJyYXlCdWZmZXIuaDoKKyAgICAgICAg
KiBydW50aW1lL0FycmF5QnVmZmVyVmlldy5oOgorICAgICAgICAqIHJ1bnRpbWUvSlNBcnJheUJ1
ZmZlclZpZXcuaDoKKwogMjAxNy0wOC0xMSAgRmlsaXAgUGl6bG8gIDxmcGl6bG9AYXBwbGUuY29t
PgogCiAgICAgICAgIENhZ2luZyBzaG91bGRuJ3QgaGF2ZSB0byB1c2UgYSBwYXRjaHBvaW50IGZv
ciBhZGRpbmcKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVK
SVQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3Vs
YXRpdmVKSVQuY3BwCShyZXZpc2lvbiAyMjA2MjUpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjE5OCw2ICs2MTk4
LDggQEAgdm9pZCBTcGVjdWxhdGl2ZUpJVDo6Y29tcGlsZUdldFR5cGVkQXJyYQogICAgIGNhZ2VU
eXBlZEFycmF5U3RvcmFnZSh2ZWN0b3JHUFIpOwogICAgIG51bGxWZWN0b3IubGluaygmbV9qaXQp
OwogICAgIG1faml0LmxvYWRQdHIoTWFjcm9Bc3NlbWJsZXI6OkFkZHJlc3MoZGF0YUdQUiwgQnV0
dGVyZmx5OjpvZmZzZXRPZkFycmF5QnVmZmVyKCkpLCBkYXRhR1BSKTsKKyAgICAvLyBGSVhNRTog
VGhpcyBuZWVkcyBjYWdpbmcuCisgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE3NTUxNQogICAgIG1faml0LmxvYWRQdHIoTWFjcm9Bc3NlbWJsZXI6OkFkZHJl
c3MoZGF0YUdQUiwgQXJyYXlCdWZmZXI6Om9mZnNldE9mRGF0YSgpKSwgZGF0YUdQUik7CiAgICAg
bV9qaXQuc3ViUHRyKGRhdGFHUFIsIHZlY3RvckdQUik7CiAgICAgCkluZGV4OiBTb3VyY2UvSmF2
YVNjcmlwdENvcmUvZnRsL0ZUTExvd2VyREZHVG9CMy5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwCShyZXZpc2lvbiAyMjA2MjUp
CisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZnRsL0ZUTExvd2VyREZHVG9CMy5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTMzMDksMTEgKzMzMDksMTMgQEAgcHJpdmF0ZToKIAogICAgICAgICBtX291
dC5hcHBlbmRUbyh3YXN0ZWZ1bENhc2UsIGNvbnRpbnVhdGlvbik7CiAKLSAgICAgICAgLy8gRklY
TUU6IFRoaXMgbmVlZHMgdG8gZG8gY2FnaW5nLgotICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc1MzY2Ci0gICAgICAgIExWYWx1ZSB2ZWN0b3JQdHIg
PSBtX291dC5sb2FkUHRyKGJhc2VQdHIsIG1faGVhcHMuSlNBcnJheUJ1ZmZlclZpZXdfdmVjdG9y
KTsKLSAgICAgICAgTFZhbHVlIGJ1dHRlcmZseVB0ciA9IG1fb3V0LmxvYWRQdHIoYmFzZVB0ciwg
bV9oZWFwcy5KU09iamVjdF9idXR0ZXJmbHkpOworICAgICAgICBMVmFsdWUgdmVjdG9yUHRyID0g
Y2FnZWRNYXlCZU51bGwoCisgICAgICAgICAgICBHaWdhY2FnZTo6UHJpbWl0aXZlLAorICAgICAg
ICAgICAgbV9vdXQubG9hZFB0cihiYXNlUHRyLCBtX2hlYXBzLkpTQXJyYXlCdWZmZXJWaWV3X3Zl
Y3RvcikpOworICAgICAgICBMVmFsdWUgYnV0dGVyZmx5UHRyID0gY2FnZWQoR2lnYWNhZ2U6OkpT
VmFsdWUsIG1fb3V0LmxvYWRQdHIoYmFzZVB0ciwgbV9oZWFwcy5KU09iamVjdF9idXR0ZXJmbHkp
KTsKICAgICAgICAgTFZhbHVlIGFycmF5QnVmZmVyUHRyID0gbV9vdXQubG9hZFB0cihidXR0ZXJm
bHlQdHIsIG1faGVhcHMuQnV0dGVyZmx5X2FycmF5QnVmZmVyKTsKKyAgICAgICAgLy8gRklYTUU6
IFRoaXMgbmVlZHMgY2FnaW5nLgorICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTc1NTE1CiAgICAgICAgIExWYWx1ZSBkYXRhUHRyID0gbV9vdXQubG9h
ZFB0cihhcnJheUJ1ZmZlclB0ciwgbV9oZWFwcy5BcnJheUJ1ZmZlcl9kYXRhKTsKIAogICAgICAg
ICBWYWx1ZUZyb21CbG9jayB3YXN0ZWZ1bE91dCA9IG1fb3V0LmFuY2hvcihtX291dC5zdWIodmVj
dG9yUHRyLCBkYXRhUHRyKSk7CkBAIC0xMTY0Myw2ICsxMTY0NSwyNCBAQCBwcml2YXRlOgogICAg
ICAgICByZXR1cm4gbV9vdXQub3BhcXVlKHJlc3VsdCk7CiAgICAgfQogICAgIAorICAgIExWYWx1
ZSBjYWdlZE1heUJlTnVsbChHaWdhY2FnZTo6S2luZCBraW5kLCBMVmFsdWUgcHRyKQorICAgIHsK
KyAgICAgICAgTEJhc2ljQmxvY2sgbm90TnVsbCA9IG1fb3V0Lm5ld0Jsb2NrKCk7CisgICAgICAg
IExCYXNpY0Jsb2NrIGNvbnRpbnVhdGlvbiA9IG1fb3V0Lm5ld0Jsb2NrKCk7CisgICAgICAgIAor
ICAgICAgICBMQmFzaWNCbG9jayBsYXN0TmV4dCA9IG1fb3V0Lmluc2VydE5ld0Jsb2Nrc0JlZm9y
ZShub3ROdWxsKTsKKyAgICAgICAgCisgICAgICAgIFZhbHVlRnJvbUJsb2NrIG51bGxSZXN1bHQg
PSBtX291dC5hbmNob3IocHRyKTsKKyAgICAgICAgbV9vdXQuYnJhbmNoKHB0ciwgdW5zdXJlKG5v
dE51bGwpLCB1bnN1cmUoY29udGludWF0aW9uKSk7CisgICAgICAgIAorICAgICAgICBtX291dC5h
cHBlbmRUbyhub3ROdWxsLCBjb250aW51YXRpb24pOworICAgICAgICBWYWx1ZUZyb21CbG9jayBu
b3ROdWxsUmVzdWx0ID0gbV9vdXQuYW5jaG9yKGNhZ2VkKGtpbmQsIHB0cikpOworICAgICAgICBt
X291dC5qdW1wKGNvbnRpbnVhdGlvbik7CisgICAgICAgIAorICAgICAgICBtX291dC5hcHBlbmRU
byhjb250aW51YXRpb24sIGxhc3ROZXh0KTsKKyAgICAgICAgcmV0dXJuIG1fb3V0LnBoaShwb2lu
dGVyVHlwZSgpLCBudWxsUmVzdWx0LCBub3ROdWxsUmVzdWx0KTsKKyAgICB9CisgICAgCiAgICAg
dm9pZCBidWlsZFN3aXRjaChTd2l0Y2hEYXRhKiBkYXRhLCBMVHlwZSB0eXBlLCBMVmFsdWUgc3dp
dGNoVmFsdWUpCiAgICAgewogICAgICAgICBBU1NFUlQodHlwZSA9PSBwb2ludGVyVHlwZSgpIHx8
IHR5cGUgPT0gSW50MzIpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJy
YXlCdWZmZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9B
cnJheUJ1ZmZlci5oCShyZXZpc2lvbiAyMjA2MjUpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
cnVudGltZS9BcnJheUJ1ZmZlci5oCSh3b3JraW5nIGNvcHkpCkBAIC01MCw2ICs1MCw4IEBAIHB1
YmxpYzoKICAgICB2b2lkKiBkYXRhKCkgY29uc3QgeyByZXR1cm4gbV9kYXRhOyB9CiAgICAgCiBw
cml2YXRlOgorICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCBiZSBDYWdlZFB0cjw+LgorICAgIC8v
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzU1MTUKICAgICB2b2lk
KiBtX2RhdGE7CiAgICAgQXJyYXlCdWZmZXJEZXN0cnVjdG9yRnVuY3Rpb24gbV9kZXN0cnVjdG9y
OwogfTsKQEAgLTk1LDYgKzk3LDggQEAgcHJpdmF0ZToKIAogICAgIEFycmF5QnVmZmVyRGVzdHJ1
Y3RvckZ1bmN0aW9uIG1fZGVzdHJ1Y3RvcjsKICAgICBSZWZQdHI8U2hhcmVkQXJyYXlCdWZmZXJD
b250ZW50cz4gbV9zaGFyZWQ7CisgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIENhZ2VkUHRy
PD4uCisgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NTUx
NQogICAgIHZvaWQqIG1fZGF0YTsKICAgICB1bnNpZ25lZCBtX3NpemVJbkJ5dGVzOwogfTsKSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5QnVmZmVyVmlldy5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5QnVmZmVyVmlldy5o
CShyZXZpc2lvbiAyMjA2MjUpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJh
eUJ1ZmZlclZpZXcuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ3LDYgKzE0Nyw4IEBAIHByb3RlY3Rl
ZDoKICAgICB9CiAKICAgICAvLyBUaGlzIGlzIHRoZSBhZGRyZXNzIG9mIHRoZSBBcnJheUJ1ZmZl
cidzIHN0b3JhZ2UsIHBsdXMgdGhlIGJ5dGUgb2Zmc2V0LgorICAgIC8vIEZJWE1FOiBUaGlzIHNo
b3VsZCBiZSBDYWdlZFB0cjw+LgorICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNzU1MTUKICAgICB2b2lkKiBtX2Jhc2VBZGRyZXNzOwogCiAgICAgdW5zaWdu
ZWQgbV9ieXRlT2Zmc2V0IDogMzE7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0FycmF5QnVmZmVyVmlldy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJWaWV3LmgJKHJldmlzaW9uIDIyMDYyNSkKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJWaWV3LmgJKHdvcmtpbmcgY29w
eSkKQEAgLTE0MCw2ICsxNDAsOCBAQCBwcm90ZWN0ZWQ6CiAgICAgICAgIAogICAgIHByaXZhdGU6
CiAgICAgICAgIFN0cnVjdHVyZSogbV9zdHJ1Y3R1cmU7CisgICAgICAgIC8vIEZJWE1FOiBUaGlz
IHNob3VsZCBiZSBDYWdlZFB0cjw+LgorICAgICAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTc1NTE1CiAgICAgICAgIHZvaWQqIG1fdmVjdG9yOwogICAgICAg
ICB1aW50MzJfdCBtX2xlbmd0aDsKICAgICAgICAgVHlwZWRBcnJheU1vZGUgbV9tb2RlOwpAQCAt
MTkwLDYgKzE5Miw4IEBAIHByb3RlY3RlZDoKIAogICAgIHN0YXRpYyBTdHJpbmcgdG9TdHJpbmdO
YW1lKGNvbnN0IEpTT2JqZWN0KiwgRXhlY1N0YXRlKik7CiAKKyAgICAvLyBGSVhNRTogVGhpcyBz
aG91bGQgYmUgQ2FnZWRCYXJyaWVyUHRyPD4uCisgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE3NTUxNQogICAgIEF1eGlsaWFyeUJhcnJpZXI8dm9pZCo+IG1f
dmVjdG9yOwogICAgIHVpbnQzMl90IG1fbGVuZ3RoOwogICAgIFR5cGVkQXJyYXlNb2RlIG1fbW9k
ZTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>317999</attachid>
            <date>2017-08-12 12:26:45 -0700</date>
            <delta_ts>2017-08-12 15:37:53 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>6151</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjIwNjI1KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIyIEBA
CisyMDE3LTA4LTEyICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
RlRMJ3MgY29tcGlsZUdldFR5cGVkQXJyYXlCeXRlT2Zmc2V0IG5lZWRzIHRvIGRvIGNhZ2luZwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc1MzY2CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAgICBX
aGlsZSBpbXBsZW1lbnRpbmcgYm94aW5nIGluIHRoZSBERkcsIEkgbm90aWNlZCB0aGF0IHRoZXJl
IHdhcyBzb21lIG1pc3NpbmcgYm94aW5nIGluIHRoZSBGVEwuIFRoaXMKKyAgICAgICAgZml4ZXMg
dGhlIGNhc2UgaW4gR2V0VHlwZWRBcnJheUJ5dGVPZmZzZXQsIGFuZCBmaWxlcyBGSVhNRXMgZm9y
IG1vcmUgc3VjaCBjYXNlcy4KKworICAgICAgICAqIGRmZy9ERkdTcGVjdWxhdGl2ZUpJVC5jcHA6
CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVHZXRUeXBlZEFycmF5
Qnl0ZU9mZnNldCk6CisgICAgICAgICogZnRsL0ZUTExvd2VyREZHVG9CMy5jcHA6CisgICAgICAg
IChKU0M6OkZUTDo6REZHOjpMb3dlckRGR1RvQjM6OmNvbXBpbGVHZXRUeXBlZEFycmF5Qnl0ZU9m
ZnNldCk6CisgICAgICAgIChKU0M6OkZUTDo6REZHOjpMb3dlckRGR1RvQjM6OmNhZ2VkTWF5QmVO
dWxsKToKKyAgICAgICAgKiBydW50aW1lL0FycmF5QnVmZmVyLmg6CisgICAgICAgICogcnVudGlt
ZS9BcnJheUJ1ZmZlclZpZXcuaDoKKyAgICAgICAgKiBydW50aW1lL0pTQXJyYXlCdWZmZXJWaWV3
Lmg6CisKIDIwMTctMDgtMTEgIEZpbGlwIFBpemxvICA8ZnBpemxvQGFwcGxlLmNvbT4KIAogICAg
ICAgICBDYWdpbmcgc2hvdWxkbid0IGhhdmUgdG8gdXNlIGEgcGF0Y2hwb2ludCBmb3IgYWRkaW5n
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklULmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklU
LmNwcAkocmV2aXNpb24gMjIwNjI1KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdT
cGVjdWxhdGl2ZUpJVC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTYxOTgsNiArNjE5OCw4IEBAIHZv
aWQgU3BlY3VsYXRpdmVKSVQ6OmNvbXBpbGVHZXRUeXBlZEFycmEKICAgICBjYWdlVHlwZWRBcnJh
eVN0b3JhZ2UodmVjdG9yR1BSKTsKICAgICBudWxsVmVjdG9yLmxpbmsoJm1faml0KTsKICAgICBt
X2ppdC5sb2FkUHRyKE1hY3JvQXNzZW1ibGVyOjpBZGRyZXNzKGRhdGFHUFIsIEJ1dHRlcmZseTo6
b2Zmc2V0T2ZBcnJheUJ1ZmZlcigpKSwgZGF0YUdQUik7CisgICAgLy8gRklYTUU6IFRoaXMgbmVl
ZHMgY2FnaW5nLgorICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xNzU1MTUKICAgICBtX2ppdC5sb2FkUHRyKE1hY3JvQXNzZW1ibGVyOjpBZGRyZXNzKGRhdGFH
UFIsIEFycmF5QnVmZmVyOjpvZmZzZXRPZkRhdGEoKSksIGRhdGFHUFIpOwogICAgIG1faml0LnN1
YlB0cihkYXRhR1BSLCB2ZWN0b3JHUFIpOwogICAgIApJbmRleDogU291cmNlL0phdmFTY3JpcHRD
b3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9mdGwvRlRMTG93ZXJERkdUb0IzLmNwcAkocmV2aXNpb24gMjIwNjI1KQorKysgU291
cmNlL0phdmFTY3JpcHRDb3JlL2Z0bC9GVExMb3dlckRGR1RvQjMuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0zMzA5LDExICszMzA5LDEzIEBAIHByaXZhdGU6CiAKICAgICAgICAgbV9vdXQuYXBwZW5k
VG8od2FzdGVmdWxDYXNlLCBjb250aW51YXRpb24pOwogCi0gICAgICAgIC8vIEZJWE1FOiBUaGlz
IG5lZWRzIHRvIGRvIGNhZ2luZy4KLSAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE3NTM2NgotICAgICAgICBMVmFsdWUgdmVjdG9yUHRyID0gbV9vdXQu
bG9hZFB0cihiYXNlUHRyLCBtX2hlYXBzLkpTQXJyYXlCdWZmZXJWaWV3X3ZlY3Rvcik7Ci0gICAg
ICAgIExWYWx1ZSBidXR0ZXJmbHlQdHIgPSBtX291dC5sb2FkUHRyKGJhc2VQdHIsIG1faGVhcHMu
SlNPYmplY3RfYnV0dGVyZmx5KTsKKyAgICAgICAgTFZhbHVlIHZlY3RvclB0ciA9IGNhZ2VkTWF5
QmVOdWxsKAorICAgICAgICAgICAgR2lnYWNhZ2U6OlByaW1pdGl2ZSwKKyAgICAgICAgICAgIG1f
b3V0LmxvYWRQdHIoYmFzZVB0ciwgbV9oZWFwcy5KU0FycmF5QnVmZmVyVmlld192ZWN0b3IpKTsK
KyAgICAgICAgTFZhbHVlIGJ1dHRlcmZseVB0ciA9IGNhZ2VkKEdpZ2FjYWdlOjpKU1ZhbHVlLCBt
X291dC5sb2FkUHRyKGJhc2VQdHIsIG1faGVhcHMuSlNPYmplY3RfYnV0dGVyZmx5KSk7CiAgICAg
ICAgIExWYWx1ZSBhcnJheUJ1ZmZlclB0ciA9IG1fb3V0LmxvYWRQdHIoYnV0dGVyZmx5UHRyLCBt
X2hlYXBzLkJ1dHRlcmZseV9hcnJheUJ1ZmZlcik7CisgICAgICAgIC8vIEZJWE1FOiBUaGlzIG5l
ZWRzIGNhZ2luZy4KKyAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE3NTUxNQogICAgICAgICBMVmFsdWUgZGF0YVB0ciA9IG1fb3V0LmxvYWRQdHIoYXJy
YXlCdWZmZXJQdHIsIG1faGVhcHMuQXJyYXlCdWZmZXJfZGF0YSk7CiAKICAgICAgICAgVmFsdWVG
cm9tQmxvY2sgd2FzdGVmdWxPdXQgPSBtX291dC5hbmNob3IobV9vdXQuc3ViKHZlY3RvclB0ciwg
ZGF0YVB0cikpOwpAQCAtMTE2NDMsNiArMTE2NDUsMjQgQEAgcHJpdmF0ZToKICAgICAgICAgcmV0
dXJuIG1fb3V0Lm9wYXF1ZShyZXN1bHQpOwogICAgIH0KICAgICAKKyAgICBMVmFsdWUgY2FnZWRN
YXlCZU51bGwoR2lnYWNhZ2U6OktpbmQga2luZCwgTFZhbHVlIHB0cikKKyAgICB7CisgICAgICAg
IExCYXNpY0Jsb2NrIG5vdE51bGwgPSBtX291dC5uZXdCbG9jaygpOworICAgICAgICBMQmFzaWNC
bG9jayBjb250aW51YXRpb24gPSBtX291dC5uZXdCbG9jaygpOworICAgICAgICAKKyAgICAgICAg
TEJhc2ljQmxvY2sgbGFzdE5leHQgPSBtX291dC5pbnNlcnROZXdCbG9ja3NCZWZvcmUobm90TnVs
bCk7CisgICAgICAgIAorICAgICAgICBWYWx1ZUZyb21CbG9jayBudWxsUmVzdWx0ID0gbV9vdXQu
YW5jaG9yKHB0cik7CisgICAgICAgIG1fb3V0LmJyYW5jaChwdHIsIHVuc3VyZShub3ROdWxsKSwg
dW5zdXJlKGNvbnRpbnVhdGlvbikpOworICAgICAgICAKKyAgICAgICAgbV9vdXQuYXBwZW5kVG8o
bm90TnVsbCwgY29udGludWF0aW9uKTsKKyAgICAgICAgVmFsdWVGcm9tQmxvY2sgbm90TnVsbFJl
c3VsdCA9IG1fb3V0LmFuY2hvcihjYWdlZChraW5kLCBwdHIpKTsKKyAgICAgICAgbV9vdXQuanVt
cChjb250aW51YXRpb24pOworICAgICAgICAKKyAgICAgICAgbV9vdXQuYXBwZW5kVG8oY29udGlu
dWF0aW9uLCBsYXN0TmV4dCk7CisgICAgICAgIHJldHVybiBtX291dC5waGkocG9pbnRlclR5cGUo
KSwgbnVsbFJlc3VsdCwgbm90TnVsbFJlc3VsdCk7CisgICAgfQorICAgIAogICAgIHZvaWQgYnVp
bGRTd2l0Y2goU3dpdGNoRGF0YSogZGF0YSwgTFR5cGUgdHlwZSwgTFZhbHVlIHN3aXRjaFZhbHVl
KQogICAgIHsKICAgICAgICAgQVNTRVJUKHR5cGUgPT0gcG9pbnRlclR5cGUoKSB8fCB0eXBlID09
IEludDMyKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FycmF5QnVmZmVy
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlCdWZm
ZXIuaAkocmV2aXNpb24gMjIwNjI1KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUv
QXJyYXlCdWZmZXIuaAkod29ya2luZyBjb3B5KQpAQCAtNTAsNiArNTAsOCBAQCBwdWJsaWM6CiAg
ICAgdm9pZCogZGF0YSgpIGNvbnN0IHsgcmV0dXJuIG1fZGF0YTsgfQogICAgIAogcHJpdmF0ZToK
KyAgICAvLyBGSVhNRTogVGhpcyBzaG91bGQgYmUgQ2FnZWRQdHI8Pi4KKyAgICAvLyBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc1NTE1CiAgICAgdm9pZCogbV9kYXRh
OwogICAgIEFycmF5QnVmZmVyRGVzdHJ1Y3RvckZ1bmN0aW9uIG1fZGVzdHJ1Y3RvcjsKIH07CkBA
IC05NSw2ICs5Nyw4IEBAIHByaXZhdGU6CiAKICAgICBBcnJheUJ1ZmZlckRlc3RydWN0b3JGdW5j
dGlvbiBtX2Rlc3RydWN0b3I7CiAgICAgUmVmUHRyPFNoYXJlZEFycmF5QnVmZmVyQ29udGVudHM+
IG1fc2hhcmVkOworICAgIC8vIEZJWE1FOiBUaGlzIHNob3VsZCBiZSBDYWdlZFB0cjw+LgorICAg
IC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzU1MTUKICAgICB2
b2lkKiBtX2RhdGE7CiAgICAgdW5zaWduZWQgbV9zaXplSW5CeXRlczsKIH07CkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUJ1ZmZlclZpZXcuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9BcnJheUJ1ZmZlclZpZXcuaAkocmV2aXNp
b24gMjIwNjI1KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQXJyYXlCdWZmZXJW
aWV3LmgJKHdvcmtpbmcgY29weSkKQEAgLTE0Nyw2ICsxNDcsOCBAQCBwcm90ZWN0ZWQ6CiAgICAg
fQogCiAgICAgLy8gVGhpcyBpcyB0aGUgYWRkcmVzcyBvZiB0aGUgQXJyYXlCdWZmZXIncyBzdG9y
YWdlLCBwbHVzIHRoZSBieXRlIG9mZnNldC4KKyAgICAvLyBGSVhNRTogVGhpcyBzaG91bGQgYmUg
Q2FnZWRQdHI8Pi4KKyAgICAvLyBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTc1NTE1CiAgICAgdm9pZCogbV9iYXNlQWRkcmVzczsKIAogICAgIHVuc2lnbmVkIG1fYnl0
ZU9mZnNldCA6IDMxOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJh
eUJ1ZmZlclZpZXcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU0FycmF5QnVmZmVyVmlldy5oCShyZXZpc2lvbiAyMjA2MjUpCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU0FycmF5QnVmZmVyVmlldy5oCSh3b3JraW5nIGNvcHkpCkBAIC0x
NDAsNiArMTQwLDggQEAgcHJvdGVjdGVkOgogICAgICAgICAKICAgICBwcml2YXRlOgogICAgICAg
ICBTdHJ1Y3R1cmUqIG1fc3RydWN0dXJlOworICAgICAgICAvLyBGSVhNRTogVGhpcyBzaG91bGQg
YmUgQ2FnZWRQdHI8Pi4KKyAgICAgICAgLy8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE3NTUxNQogICAgICAgICB2b2lkKiBtX3ZlY3RvcjsKICAgICAgICAgdWludDMy
X3QgbV9sZW5ndGg7CiAgICAgICAgIFR5cGVkQXJyYXlNb2RlIG1fbW9kZTsKQEAgLTE5MCw2ICsx
OTIsOCBAQCBwcm90ZWN0ZWQ6CiAKICAgICBzdGF0aWMgU3RyaW5nIHRvU3RyaW5nTmFtZShjb25z
dCBKU09iamVjdCosIEV4ZWNTdGF0ZSopOwogCisgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJl
IENhZ2VkQmFycmllclB0cjw+LgorICAgIC8vIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNzU1MTUKICAgICBBdXhpbGlhcnlCYXJyaWVyPHZvaWQqPiBtX3ZlY3RvcjsK
ICAgICB1aW50MzJfdCBtX2xlbmd0aDsKICAgICBUeXBlZEFycmF5TW9kZSBtX21vZGU7Cg==
</data>
<flag name="review"
          id="338476"
          type_id="1"
          status="+"
          setter="saam"
    />
          </attachment>
      

    </bug>

</bugzilla>