<?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>177120</bug_id>
          
          <creation_ts>2017-09-18 20:07:57 -0700</creation_ts>
          <short_desc>[WSL] Cannot put templated structs inside structs</short_desc>
          <delta_ts>2018-10-13 19:38:38 -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>WebGPU</component>
          <version>Other</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>
          
          <blocked>176199</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>fpizlo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1350227</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2017-09-18 20:07:57 -0700</bug_when>
    <thetext>&gt;&gt;&gt; prepare(&quot;/internal/test&quot;, 0, &quot;struct Bar&lt;T&gt; { T x; } struct Foo { Bar&lt;int&gt; x; }&quot;)
Exception: Error: Cannot determine if an uninstantiated type is primitive</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1350242</commentid>
    <comment_count>1</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2017-09-18 21:09:35 -0700</bug_when>
    <thetext>Oh man, type instantiation is so confusing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1350244</commentid>
    <comment_count>2</comment_count>
      <attachid>321180</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2017-09-18 21:11:00 -0700</bug_when>
    <thetext>Created attachment 321180
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1350245</commentid>
    <comment_count>3</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2017-09-18 21:16:21 -0700</bug_when>
    <thetext>Landed in https://trac.webkit.org/changeset/222201/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1353415</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-09-27 12:28:43 -0700</bug_when>
    <thetext>&lt;rdar://problem/34693348&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468989</commentid>
    <comment_count>5</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2018-10-13 19:38:38 -0700</bug_when>
    <thetext>Migrated to https://github.com/gpuweb/WHLSL/issues/183</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>321180</attachid>
            <date>2017-09-18 21:11:00 -0700</date>
            <delta_ts>2017-09-18 21:13:58 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>9629</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDIyMjIwMCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwz
ICsxLDM3IEBACisyMDE3LTA5LTE4ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisK
KyAgICAgICAgW1dTTF0gQ2Fubm90IHB1dCB0ZW1wbGF0ZWQgc3RydWN0cyBpbnNpZGUgc3RydWN0
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc3MTIw
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAgIAorICAgICAg
ICBJdCB0dXJucyBvdXQgdGhhdCB3ZSBzdGlsbCBuZWVkIHRvIGluc3RhbnRpYXRlIHN0cnVjdHMg
ZXZlbiBpZiBub3QgcGFzc2luZyB0eXBlIGFyZ3VtZW50cywKKyAgICAgICAgc2luY2UgaXRzIGZp
ZWxkcyBtYXkgbmVlZCB0byBiZSBpbnN0YW50aWF0ZWQuCisgICAgICAgIAorICAgICAgICBUaGlz
IG1ha2VzIE15bGVzJ3MgdGVzdCBjYXNlIHBhc3MuIFdoZW4gd3JpdGluZyB0aGUgdGVzdCBjYXNl
LCBJIGVuY291bnRlcmVkIHBhcnNlciBidWdzLCBhbmQKKyAgICAgICAgSSBmaXhlZCB0aGVtLgor
CisgICAgICAgICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2FsbEZ1bmN0aW9uLmpzOgorICAg
ICAgICAoY2FsbEZ1bmN0aW9uKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9D
aGVja2VyLmpzOgorICAgICAgICAoQ2hlY2tlci5wcm90b3R5cGUudmlzaXRSZWZlcmVuY2VUeXBl
KToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9GdW5jSW5zdGFudGlhdG9yLmpz
OgorICAgICAgICAoRnVuY0luc3RhbnRpYXRvci5wcm90b3R5cGUuZ2V0VW5pcXVlKToKKyAgICAg
ICAgKEZ1bmNJbnN0YW50aWF0b3IpOgorICAgICAgICAqIFdlYkdQVVNoYWRpbmdMYW5ndWFnZVJJ
L1BhcnNlLmpzOgorICAgICAgICAocGFyc2VTdWZmaXhPcGVyYXRvcik6CisgICAgICAgIChwYXJz
ZVBvc3NpYmxlU3VmZml4KToKKyAgICAgICAgKHBhcnNlUG9zdEluY3JlbWVudCk6CisgICAgICAg
ICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3RydWN0VHlwZS5qczoKKyAgICAgICAgKFN0cnVj
dFR5cGUucHJvdG90eXBlLmluc3RhbnRpYXRlKToKKyAgICAgICAgKiBXZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9UZXN0LmpzOgorICAgICAgICAoY2hlY2tOdW1iZXIpOgorICAgICAgICAoY2hlY2tF
bnVtKToKKyAgICAgICAgKFRFU1RfaW5zdGFudGlhdGVTdHJ1Y3RJblN0cnVjdCk6CisgICAgICAg
ICogV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvVHlwZVJlZi5qczoKKyAgICAgICAgKFR5cGVSZWYu
cHJvdG90eXBlLmdldCBpbnN0YW50aWF0ZWRUeXBlKToKKyAgICAgICAgKFR5cGVSZWYucHJvdG90
eXBlLmdldCBpc1ByaW1pdGl2ZSk6CisKIDIwMTctMDktMTggIEZpbGlwIFBpemxvICA8ZnBpemxv
QGFwcGxlLmNvbT4KIAogICAgICAgICBXU0wgc2hvdWxkIHN1cHBvcnQgZW51bQpJbmRleDogVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2FsbEZ1bmN0aW9uLmpzCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NhbGxGdW5jdGlvbi5qcwkocmV2aXNpb24g
MjIyMjAwKQorKysgVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvQ2FsbEZ1bmN0aW9uLmpz
CSh3b3JraW5nIGNvcHkpCkBAIC00MCw2ICs0MCw2IEBAIGZ1bmN0aW9uIGNhbGxGdW5jdGlvbihw
cm9ncmFtLCBuYW1lLCB0eXAKICAgICAgICAgZnVuYy5wYXJhbWV0ZXJzW2ldLmVQdHIuY29weUZy
b20oYXJndW1lbnRMaXN0W2ldLmVQdHIsIHR5cGUuc2l6ZSk7CiAgICAgfQogICAgIGxldCByZXN1
bHQgPSBuZXcgRXZhbHVhdG9yKHByb2dyYW0pLnJ1bkZ1bmMoZnVuYyk7Ci0gICAgcmV0dXJuIG5l
dyBUeXBlZFZhbHVlKGZ1bmMucmV0dXJuVHlwZS51bmlmeU5vZGUsIHJlc3VsdCk7CisgICAgcmV0
dXJuIG5ldyBUeXBlZFZhbHVlKGZ1bmMudW5pbnN0YW50aWF0ZWRSZXR1cm5UeXBlLCByZXN1bHQp
OwogfQogCkluZGV4OiBUb29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9DaGVja2VyLmpzCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NoZWNrZXIuanMJKHJl
dmlzaW9uIDIyMjIwMCkKKysrIFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL0NoZWNrZXIu
anMJKHdvcmtpbmcgY29weSkKQEAgLTE2MCw3ICsxNjAsOCBAQCBjbGFzcyBDaGVja2VyIGV4dGVu
ZHMgVmlzaXRvciB7CiAgICAgICAgIGlmIChub2RlLmFkZHJlc3NTcGFjZSA9PSAidGhyZWFkIikK
ICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgCi0gICAgICAgIGlmICghbm9kZS5lbGVtZW50
VHlwZS5pbnN0YW50aWF0ZWRUeXBlLmlzUHJpbWl0aXZlKQorICAgICAgICBsZXQgaW5zdGFudGlh
dGVkVHlwZSA9IG5vZGUuZWxlbWVudFR5cGUuaW5zdGFudGlhdGVkVHlwZTsKKyAgICAgICAgaWYg
KCFpbnN0YW50aWF0ZWRUeXBlLmlzUHJpbWl0aXZlKQogICAgICAgICAgICAgdGhyb3cgbmV3IFdU
eXBlRXJyb3Iobm9kZS5vcmlnaW4ub3JpZ2luU3RyaW5nLCAiSWxsZWdhbCBwb2ludGVyIHRvIG5v
bi1wcmltaXRpdmUgdHlwZTogIiArIG5vZGUuZWxlbWVudFR5cGUgKyAiIChpbnN0YW50aWF0ZWQg
dG8gIiArIG5vZGUuZWxlbWVudFR5cGUuaW5zdGFudGlhdGVkVHlwZSArICIpIik7CiAgICAgfQog
ICAgIApJbmRleDogVG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvRnVuY0luc3RhbnRpYXRv
ci5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBUb29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9GdW5jSW5z
dGFudGlhdG9yLmpzCShyZXZpc2lvbiAyMjIyMDApCisrKyBUb29scy9XZWJHUFVTaGFkaW5nTGFu
Z3VhZ2VSSS9GdW5jSW5zdGFudGlhdG9yLmpzCSh3b3JraW5nIGNvcHkpCkBAIC0xMTcsNiArMTE3
LDcgQEAgY2xhc3MgRnVuY0luc3RhbnRpYXRvciB7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0K
ICAgICAgICAgbGV0IHJlc3VsdGluZ0Z1bmMgPSBmdW5jLnZpc2l0KG5ldyBJbnN0YW50aWF0ZSgp
KTsKKyAgICAgICAgcmVzdWx0aW5nRnVuYy51bmluc3RhbnRpYXRlZFJldHVyblR5cGUgPSBmdW5j
LnJldHVyblR5cGUudmlzaXQoc3Vic3RpdHV0aW9uKTsKICAgICAgICAgbGV0IGluc3RhbmNlID0g
e2Z1bmM6IHJlc3VsdGluZ0Z1bmMsIHR5cGVBcmd1bWVudHN9OwogICAgICAgICBpbnN0YW5jZXMu
cHVzaChpbnN0YW5jZSk7CiAgICAgICAgIHJldHVybiByZXN1bHRpbmdGdW5jOwpJbmRleDogVG9v
bHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUGFyc2UuanMKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMv
V2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvUGFyc2UuanMJKHJldmlzaW9uIDIyMjIwMCkKKysrIFRv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1BhcnNlLmpzCSh3b3JraW5nIGNvcHkpCkBAIC00
MDAsMjQgKzQwMCwxNCBAQCBmdW5jdGlvbiBwYXJzZShwcm9ncmFtLCBvcmlnaW4sIG9yaWdpbktp
CiAgICAgICAgIHJldHVybiByZWFkTW9kaWZ5V3JpdGU7CiAgICAgfQogICAgIAotICAgIGZ1bmN0
aW9uIHBhcnNlUG9zc2libGVTdWZmaXgoKQorICAgIGZ1bmN0aW9uIHBhcnNlU3VmZml4T3BlcmF0
b3IobGVmdCwgYWNjZXB0YWJsZU9wZXJhdG9ycykKICAgICB7Ci0gICAgICAgIGxldCBhY2NlcHRh
YmxlT3BlcmF0b3JzID0gWyIrKyIsICItLSIsICIuIiwgIi0+IiwgIlsiXTsKLSAgICAgICAgbGV0
IGxpbWl0ZWRPcGVyYXRvcnMgPSBbIi4iLCAiLT4iLCAiWyJdOwotICAgICAgICBsZXQgbGVmdDsK
LSAgICAgICAgaWYgKGlzQ2FsbEV4cHJlc3Npb24oKSkgewotICAgICAgICAgICAgbGVmdCA9IHBh
cnNlQ2FsbEV4cHJlc3Npb24oKTsKLSAgICAgICAgICAgIGFjY2VwdGFibGVPcGVyYXRvcnMgPSBs
aW1pdGVkT3BlcmF0b3JzOwotICAgICAgICB9IGVsc2UKLSAgICAgICAgICAgIGxlZnQgPSBwYXJz
ZVRlcm0oKTsKLSAgICAgICAgCiAgICAgICAgIGxldCB0b2tlbjsKICAgICAgICAgd2hpbGUgKHRv
a2VuID0gdHJ5Q29uc3VtZSguLi5hY2NlcHRhYmxlT3BlcmF0b3JzKSkgewogICAgICAgICAgICAg
c3dpdGNoICh0b2tlbi50ZXh0KSB7CiAgICAgICAgICAgICBjYXNlICIrKyI6CiAgICAgICAgICAg
ICBjYXNlICItLSI6Ci0gICAgICAgICAgICAgICAgbGVmdCA9IGZpbmlzaFBhcnNpbmdQb3N0SW5j
cmVtZW50KHRva2VuLCBsZWZ0KTsKLSAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAg
ICAgICByZXR1cm4gZmluaXNoUGFyc2luZ1Bvc3RJbmNyZW1lbnQodG9rZW4sIGxlZnQpOwogICAg
ICAgICAgICAgY2FzZSAiLiI6CiAgICAgICAgICAgICBjYXNlICItPiI6CiAgICAgICAgICAgICAg
ICAgaWYgKHRva2VuLnRleHQgPT0gIi0+IikKQEAgLTQzMywxMSArNDIzLDI0IEBAIGZ1bmN0aW9u
IHBhcnNlKHByb2dyYW0sIG9yaWdpbiwgb3JpZ2luS2kKICAgICAgICAgICAgIGRlZmF1bHQ6CiAg
ICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJCYWQgdG9rZW46ICIgKyB0b2tlbik7CiAg
ICAgICAgICAgICB9Ci0gICAgICAgICAgICBhY2NlcHRhYmxlT3BlcmF0b3JzID0gbGltaXRlZE9w
ZXJhdG9yczsKICAgICAgICAgfQogICAgICAgICByZXR1cm4gbGVmdDsKICAgICB9CiAgICAgCisg
ICAgZnVuY3Rpb24gcGFyc2VQb3NzaWJsZVN1ZmZpeCgpCisgICAgeworICAgICAgICBsZXQgYWNj
ZXB0YWJsZU9wZXJhdG9ycyA9IFsiKysiLCAiLS0iLCAiLiIsICItPiIsICJbIl07CisgICAgICAg
IGxldCBsaW1pdGVkT3BlcmF0b3JzID0gWyIuIiwgIi0+IiwgIlsiXTsKKyAgICAgICAgbGV0IGxl
ZnQ7CisgICAgICAgIGlmIChpc0NhbGxFeHByZXNzaW9uKCkpIHsKKyAgICAgICAgICAgIGxlZnQg
PSBwYXJzZUNhbGxFeHByZXNzaW9uKCk7CisgICAgICAgICAgICBhY2NlcHRhYmxlT3BlcmF0b3Jz
ID0gbGltaXRlZE9wZXJhdG9yczsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICBsZWZ0ID0g
cGFyc2VUZXJtKCk7CisgICAgICAgIAorICAgICAgICByZXR1cm4gcGFyc2VTdWZmaXhPcGVyYXRv
cihsZWZ0LCBhY2NlcHRhYmxlT3BlcmF0b3JzKTsKKyAgICB9CisgICAgCiAgICAgZnVuY3Rpb24g
ZmluaXNoUGFyc2luZ1ByZUluY3JlbWVudCh0b2tlbiwgbGVmdCwgZXh0cmFBcmcpCiAgICAgewog
ICAgICAgICBsZXQgcmVhZE1vZGlmeVdyaXRlID0gbmV3IFJlYWRNb2RpZnlXcml0ZUV4cHJlc3Np
b24odG9rZW4sIGxlZnQpOwpAQCAtNTY3LDcgKzU3MCw3IEBAIGZ1bmN0aW9uIHBhcnNlKHByb2dy
YW0sIG9yaWdpbiwgb3JpZ2luS2kKICAgICAKICAgICBmdW5jdGlvbiBwYXJzZVBvc3RJbmNyZW1l
bnQoKQogICAgIHsKLSAgICAgICAgbGV0IGxlZnQgPSBwYXJzZVRlcm0oKTsKKyAgICAgICAgbGV0
IGxlZnQgPSBwYXJzZVN1ZmZpeE9wZXJhdG9yKHBhcnNlVGVybSgpLCAiLiIsICItPiIsICJbIik7
CiAgICAgICAgIGxldCB0b2tlbiA9IGNvbnN1bWUoIisrIiwgIi0tIik7CiAgICAgICAgIHJldHVy
biBmaW5pc2hQYXJzaW5nUG9zdEluY3JlbWVudCh0b2tlbiwgbGVmdCk7CiAgICAgfQpJbmRleDog
VG9vbHMvV2ViR1BVU2hhZGluZ0xhbmd1YWdlUkkvU3RydWN0VHlwZS5qcwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBUb29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdHJ1Y3RUeXBlLmpzCShyZXZpc2lvbiAy
MjIyMDApCisrKyBUb29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9TdHJ1Y3RUeXBlLmpzCSh3
b3JraW5nIGNvcHkpCkBAIC02Nyw5ICs2Nyw2IEBAIGNsYXNzIFN0cnVjdFR5cGUgZXh0ZW5kcyBU
eXBlIHsKICAgICAgICAgICAgIGlmICh0eXBlQXJndW1lbnRzLmxlbmd0aCAhPSB0aGlzLnR5cGVQ
YXJhbWV0ZXJzLmxlbmd0aCkKICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgV1R5cGVFcnJvcih0
aGlzLm9yaWdpbi5vcmlnaW5TdHJpbmcsICJXcm9uZyBudW1iZXIgb2YgdHlwZSBhcmd1bWVudHMg
dG8gaW5zdGFudGlhdGlvbiIpOwogICAgICAgICAgICAgCi0gICAgICAgICAgICBpZiAoIXR5cGVB
cmd1bWVudHMubGVuZ3RoKQotICAgICAgICAgICAgICAgIHJldHVybiB0aGlzOwotICAgICAgICAg
ICAgCiAgICAgICAgICAgICBzdWJzdGl0dXRpb24gPSBuZXcgU3Vic3RpdHV0aW9uKHRoaXMudHlw
ZVBhcmFtZXRlcnMsIHR5cGVBcmd1bWVudHMpOwogICAgICAgICAgICAgdHlwZVBhcmFtZXRlcnMg
PSBbXTsKICAgICAgICAgfQpAQCAtODMsNiArODAsNyBAQCBjbGFzcyBTdHJ1Y3RUeXBlIGV4dGVu
ZHMgVHlwZSB7CiAgICAgICAgICAgICBuZXdGaWVsZCA9IG5ld0ZpZWxkLnZpc2l0KGluc3RhbnRp
YXRlSW1tZWRpYXRlcyk7CiAgICAgICAgICAgICByZXN1bHQuYWRkKG5ld0ZpZWxkKTsKICAgICAg
ICAgfQorICAgICAgICAKICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICB9CiAgICAgCkluZGV4
OiBUb29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UZXN0LmpzCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRv
b2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuanMJKHJldmlzaW9uIDIyMjIwMCkKKysr
IFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1Rlc3QuanMJKHdvcmtpbmcgY29weSkKQEAg
LTg4LDcgKzg4LDcgQEAgZnVuY3Rpb24gbWFrZURvdWJsZShwcm9ncmFtLCB2YWx1ZSkKIAogZnVu
Y3Rpb24gY2hlY2tOdW1iZXIocHJvZ3JhbSwgcmVzdWx0LCBleHBlY3RlZCkKIHsKLSAgICBpZiAo
IXJlc3VsdC50eXBlLmlzTnVtYmVyKQorICAgIGlmICghcmVzdWx0LnR5cGUudW5pZnlOb2RlLmlz
TnVtYmVyKQogICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIldyb25nIHJlc3VsdCB0eXBlOyByZXN1
bHQ6ICIgKyByZXN1bHQpOwogICAgIGlmIChyZXN1bHQudmFsdWUgIT0gZXhwZWN0ZWQpCiAgICAg
ICAgIHRocm93IG5ldyBFcnJvcigiV3JvbmcgcmVzdWx0OiAiICsgcmVzdWx0ICsgIiAoZXhwZWN0
ZWQgIiArIGV4cGVjdGVkICsgIikiKTsKQEAgLTEwMyw3ICsxMDMsNyBAQCBmdW5jdGlvbiBjaGVj
a0ludChwcm9ncmFtLCByZXN1bHQsIGV4cGVjCiAKIGZ1bmN0aW9uIGNoZWNrRW51bShwcm9ncmFt
LCByZXN1bHQsIGV4cGVjdGVkKQogewotICAgIGlmICghKHJlc3VsdC50eXBlIGluc3RhbmNlb2Yg
RW51bVR5cGUpKQorICAgIGlmICghKHJlc3VsdC50eXBlLnVuaWZ5Tm9kZSBpbnN0YW5jZW9mIEVu
dW1UeXBlKSkKICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJXcm9uZyByZXN1bHQgdHlwZTsgcmVz
dWx0OiAiICsgcmVzdWx0KTsKICAgICBpZiAocmVzdWx0LnZhbHVlICE9IGV4cGVjdGVkKQogICAg
ICAgICB0aHJvdyBuZXcgRXJyb3IoIldyb25nIHJlc3VsdDogIiArIHJlc3VsdC52YWx1ZSArICIg
KGV4cGVjdGVkICIgKyBleHBlY3RlZCArICIpIik7CkBAIC0zOTAyLDYgKzM5MDIsMjYgQEAgZnVu
Y3Rpb24gVEVTVF9idWlsdGluVmVjdG9ycygpCiAgICAgY2hlY2tCb29sKHByb2dyYW0sIGNhbGxG
dW5jdGlvbihwcm9ncmFtLCAiZm9vZDYiLCBbXSwgW10pLCBmYWxzZSk7CiB9CiAKK2Z1bmN0aW9u
IFRFU1RfaW5zdGFudGlhdGVTdHJ1Y3RJblN0cnVjdCgpCit7CisgICAgbGV0IHByb2dyYW0gPSBk
b1ByZXAoYAorICAgICAgICBzdHJ1Y3QgQmFyPFQ+IHsKKyAgICAgICAgICAgIFQgeDsKKyAgICAg
ICAgfQorICAgICAgICBzdHJ1Y3QgRm9vIHsKKyAgICAgICAgICAgIEJhcjxpbnQ+IHg7CisgICAg
ICAgIH0KKyAgICAgICAgaW50IGZvbygpCisgICAgICAgIHsKKyAgICAgICAgICAgIEZvbyB4Owor
ICAgICAgICAgICAgeC54LnggPSA0MjsKKyAgICAgICAgICAgIHgueC54Kys7CisgICAgICAgICAg
ICByZXR1cm4geC54Lng7CisgICAgICAgIH0KKyAgICBgKTsKKyAgICBjaGVja0ludChwcm9ncmFt
LCBjYWxsRnVuY3Rpb24ocHJvZ3JhbSwgImZvbyIsIFtdLCBbXSksIDQzKTsKK30KKwogZnVuY3Rp
b24gVEVTVF9zaW1wbGVFbnVtKCkKIHsKICAgICBsZXQgcHJvZ3JhbSA9IGRvUHJlcChgCkluZGV4
OiBUb29scy9XZWJHUFVTaGFkaW5nTGFuZ3VhZ2VSSS9UeXBlUmVmLmpzCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1R5cGVSZWYuanMJKHJldmlzaW9uIDIyMjIw
MCkKKysrIFRvb2xzL1dlYkdQVVNoYWRpbmdMYW5ndWFnZVJJL1R5cGVSZWYuanMJKHdvcmtpbmcg
Y29weSkKQEAgLTU3LDEwICs1NywxMSBAQCBjbGFzcyBUeXBlUmVmIGV4dGVuZHMgVHlwZSB7CiAg
ICAgZ2V0IGluc3RhbnRpYXRlZFR5cGUoKQogICAgIHsKICAgICAgICAgbGV0IHR5cGUgPSB0aGlz
LnR5cGUudW5pZnlOb2RlOwotICAgICAgICBpZiAoIXRoaXMudHlwZUFyZ3VtZW50cy5sZW5ndGgp
Ci0gICAgICAgICAgICByZXR1cm4gdHlwZTsKLSAgICAgICAgaWYgKCF0eXBlLmluc3RhbnRpYXRl
KQotICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCJ0eXBlIGRvZXMgbm90IHN1cHBvcnQgaW5z
dGFudGlhdGlvbjogIiArIHR5cGUgKyAiICgiICsgdHlwZS5jb25zdHJ1Y3Rvci5uYW1lICsgIiki
KTsKKyAgICAgICAgaWYgKCF0eXBlLmluc3RhbnRpYXRlKSB7CisgICAgICAgICAgICBpZiAodGhp
cy50eXBlQXJndW1lbnRzLmxlbmd0aCkKKyAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3Io
InR5cGUgZG9lcyBub3Qgc3VwcG9ydCBpbnN0YW50aWF0aW9uOiAiICsgdHlwZSArICIgKCIgKyB0
eXBlLmNvbnN0cnVjdG9yLm5hbWUgKyAiKSIpOworICAgICAgICAgICAgcmV0dXJuIHRoaXM7Cisg
ICAgICAgIH0KICAgICAgICAgcmV0dXJuIHR5cGUuaW5zdGFudGlhdGUodGhpcy50eXBlQXJndW1l
bnRzKTsKICAgICB9CiAgICAgCkBAIC04OSw3ICs5MCw3IEBAIGNsYXNzIFR5cGVSZWYgZXh0ZW5k
cyBUeXBlIHsKICAgICB7CiAgICAgICAgIGlmICghdGhpcy50eXBlQXJndW1lbnRzLmxlbmd0aCkK
ICAgICAgICAgICAgIHJldHVybiB0aGlzLnR5cGUuaXNQcmltaXRpdmU7Ci0gICAgICAgIHRocm93
IG5ldyBFcnJvcigiQ2Fubm90IGRldGVybWluZSBpZiBhbiB1bmluc3RhbnRpYXRlZCB0eXBlIGlz
IHByaW1pdGl2ZSIpOworICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBkZXRlcm1pbmUg
aWYgYW4gdW5pbnN0YW50aWF0ZWQgdHlwZSBpcyBwcmltaXRpdmU6ICIgKyB0aGlzKTsKICAgICB9
CiAgICAgCiAgICAgc2V0VHlwZUFuZEFyZ3VtZW50cyh0eXBlLCB0eXBlQXJndW1lbnRzKQo=
</data>
<flag name="review"
          id="341208"
          type_id="1"
          status="+"
          setter="mmaxfield"
    />
          </attachment>
      

    </bug>

</bugzilla>