<?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>163713</bug_id>
          
          <creation_ts>2016-10-19 17:41:36 -0700</creation_ts>
          <short_desc>Add convenience function that combines WTF::visit(...) with WTF::makeVisitor(...)</short_desc>
          <delta_ts>2016-10-20 11:31:49 -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>New Bugs</component>
          <version>WebKit Nightly 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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1242222</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2016-10-19 17:41:36 -0700</bug_when>
    <thetext>Add convenience function that combines WTF::visit(...) with WTF::makeVisitor(...)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1242225</commentid>
    <comment_count>1</comment_count>
      <attachid>292133</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2016-10-19 17:48:08 -0700</bug_when>
    <thetext>Created attachment 292133
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1242228</commentid>
    <comment_count>2</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2016-10-19 17:51:39 -0700</bug_when>
    <thetext>I went with WTF::switchOn(...) for this, but other names that were considered were:

    attend()
    walk()
    switchOver()
    route()
    choose()
    access()
    vary()
    match()
    pick()

My top two favorites were switchOn(...) and match(...).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1242498</commentid>
    <comment_count>3</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2016-10-20 11:30:12 -0700</bug_when>
    <thetext>Committed r207627: &lt;http://trac.webkit.org/changeset/207627&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>292133</attachid>
            <date>2016-10-19 17:48:08 -0700</date>
            <delta_ts>2016-10-20 11:31:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-163713-20161019174432.patch</filename>
            <type>text/plain</type>
            <size>9656</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyMDc1NzQpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDE2LTEwLTE5ICBTYW0gV2VpbmlnICA8c2FtQHdl
YmtpdC5vcmc+CisKKyAgICAgICAgQWRkIGNvbnZlbmllbmNlIGZ1bmN0aW9uIHRoYXQgY29tYmlu
ZXMgV1RGOjp2aXNpdCguLi4pIHdpdGggV1RGOjptYWtlVmlzaXRvciguLi4pCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjM3MTMKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAtIEFkZCBXVEY6OnN3aXRjaE9u
IHdoaWNoIG1lcmdlcyBXVEY6OnZpc2l0IHdpdGggV1RGOjptYWtlVmlzaXRvciBpbiB0aGUgZm9s
bG93aW5nCisgICAgICAgICAgd2F5OgorICAgICAgICAgICAgICAgIFdURjo6dmlzaXQoV1RGOjpt
YWtlVmlzaXRvciguLi4pLCB2YXJpYW50KQorCisgICAgICAgICogd3RmL1ZhcmlhbnQuaDoKKyAg
ICAgICAgKFdURjo6c3dpdGNoT24pOgorCiAyMDE2LTEwLTE5ICBGaWxpcCBQaXpsbyAgPGZwaXps
b0BhcHBsZS5jb20+CiAKICAgICAgICAgQmFzZWxpbmUgSklUIHNob3VsZCB1c2UgQXV0b21hdGlj
VGhyZWFkCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9WYXJpYW50LmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dURi93dGYvVmFyaWFudC5oCShyZXZpc2lvbiAyMDc1NzQpCisrKyBTb3VyY2UvV1RGL3d0
Zi9WYXJpYW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTQ4LDYgKzQ4LDcgQEAKICNpbmNsdWRlIDx0
eXBlX3RyYWl0cz4KICNpbmNsdWRlIDx1dGlsaXR5PgogI2luY2x1ZGUgPHd0Zi9Db21waWxlci5o
PgorI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4KIAogI2lmIENPTVBJTEVSKE1TVkMpCiAj
cHJhZ21hIHdhcm5pbmcocHVzaCkKQEAgLTIwNDAsNiArMjA0MSwxNCBAQCBzdHJ1Y3QgX19oYXNo
X3Zpc2l0b3J7CiAgICAgfQogfTsKIAorLy8gLS0gV2ViS2l0IEFkZGl0aW9ucyAtLQorCit0ZW1w
bGF0ZTxjbGFzcyBWLCBjbGFzcy4uLiBGPgorYXV0byBzd2l0Y2hPbihWJiYgdiwgRiYmLi4uIGYp
IC0+IGRlY2x0eXBlKHZpc2l0KG1ha2VWaXNpdG9yKHN0ZDo6Zm9yd2FyZDxGPihmKS4uLiksIHN0
ZDo6Zm9yd2FyZDxWPih2KSkpCit7CisgICAgcmV0dXJuIHZpc2l0KG1ha2VWaXNpdG9yKHN0ZDo6
Zm9yd2FyZDxGPihmKS4uLiksIHN0ZDo6Zm9yd2FyZDxWPih2KSk7Cit9CisKIH0gLy8gbmFtZXNw
YWNlIFdURgogCiBuYW1lc3BhY2Ugc3RkIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwNzU3
NSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDI0IEBACisyMDE2LTEwLTE5ICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAg
ICAgQWRkIGNvbnZlbmllbmNlIGZ1bmN0aW9uIHRoYXQgY29tYmluZXMgV1RGOjp2aXNpdCguLi4p
IHdpdGggV1RGOjptYWtlVmlzaXRvciguLi4pCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xNjM3MTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBTd2l0Y2ggdXNlcyBvZiBXVEY6OnZpc2l0IHRvIHVzZSBXVEY6
OnN3aXRjaE9uLgorCisgICAgICAgICogZG9tL01lc3NhZ2VFdmVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpNZXNzYWdlRXZlbnQ6OnNvdXJjZSk6CisgICAgICAgICogZG9tL05vZGUuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6bm9kZVNldFByZVRyYW5zZm9ybWVkRnJvbU5vZGVPclN0cmluZ1Zl
Y3Rvcik6CisgICAgICAgIChXZWJDb3JlOjpOb2RlOjpjb252ZXJ0Tm9kZXNPclN0cmluZ3NJbnRv
Tm9kZSk6CisgICAgICAgICogaHRtbC9IVE1MU2VsZWN0RWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MU2VsZWN0RWxlbWVudDo6YWRkKToKKyAgICAgICAgKiBodG1sL3RyYWNrL1Ry
YWNrRXZlbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VHJhY2tFdmVudDo6VHJhY2tFdmVudCk6
CisgICAgICAgICogdGVzdGluZy9UeXBlQ29udmVyc2lvbnMuaDoKKyAgICAgICAgKFdlYkNvcmU6
OlR5cGVDb252ZXJzaW9uczo6dHlwZUNvbnZlcnNpb25zRGljdGlvbmFyeVVuaW9uVHlwZSk6CisK
IDIwMTYtMTAtMTkgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KIAogICAgICAgICBBZGQg
c3VwcG9ydCBmb3Igc2VxdWVuY2VzIGFuZCBkaWN0aW9uYXJpZXMgaW4gdW5pb25zCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9kb20vTWVzc2FnZUV2ZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9kb20vTWVzc2FnZUV2ZW50LmNwcAkocmV2aXNpb24gMjA3NTc0KQorKysgU291cmNl
L1dlYkNvcmUvZG9tL01lc3NhZ2VFdmVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE3MiwxMiAr
MTcyLDEwIEBAIEV2ZW50VGFyZ2V0KiBNZXNzYWdlRXZlbnQ6OnNvdXJjZSgpIGNvbnMKICAgICBp
ZiAoIW1fc291cmNlKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIGF1dG8gdmlzaXRv
ciA9IFdURjo6bWFrZVZpc2l0b3IoCisgICAgcmV0dXJuIFdURjo6c3dpdGNoT24obV9zb3VyY2Uu
dmFsdWUoKSwKICAgICAgICAgW10oY29uc3QgUmVmUHRyPERPTVdpbmRvdz4mIHdpbmRvdykgLT4g
RXZlbnRUYXJnZXQqIHsgcmV0dXJuIGNvbnN0X2Nhc3Q8RXZlbnRUYXJnZXQqPihzdGF0aWNfY2Fz
dDxjb25zdCBFdmVudFRhcmdldCo+KHdpbmRvdy5nZXQoKSkpOyB9LAogICAgICAgICBbXShjb25z
dCBSZWZQdHI8TWVzc2FnZVBvcnQ+JiBtZXNzYWdlUG9ydCkgLT4gRXZlbnRUYXJnZXQqIHsgcmV0
dXJuIGNvbnN0X2Nhc3Q8RXZlbnRUYXJnZXQqPihzdGF0aWNfY2FzdDxjb25zdCBFdmVudFRhcmdl
dCo+KG1lc3NhZ2VQb3J0LmdldCgpKSk7IH0KICAgICApOwotCi0gICAgcmV0dXJuIFdURjo6dmlz
aXQodmlzaXRvciwgbV9zb3VyY2UudmFsdWUoKSk7CiB9CiAKIFJlZlB0cjxTZXJpYWxpemVkU2Ny
aXB0VmFsdWU+IE1lc3NhZ2VFdmVudDo6dHJ5U2VyaWFsaXplRGF0YShFeGVjU3RhdGUqIGV4ZWMp
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9kb20vTm9kZS5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvZG9tL05vZGUuY3BwCShyZXZpc2lvbiAyMDc1NzQpCisrKyBTb3VyY2UvV2ViQ29y
ZS9kb20vTm9kZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQzOCwxNCArNDM4LDEyIEBAIGJvb2wg
Tm9kZTo6YXBwZW5kQ2hpbGQoTm9kZSYgbmV3Q2hpbGQsIEUKIHN0YXRpYyBIYXNoU2V0PFJlZlB0
cjxOb2RlPj4gbm9kZVNldFByZVRyYW5zZm9ybWVkRnJvbU5vZGVPclN0cmluZ1ZlY3Rvcihjb25z
dCBWZWN0b3I8Tm9kZU9yU3RyaW5nPiYgdmVjdG9yKQogewogICAgIEhhc2hTZXQ8UmVmUHRyPE5v
ZGU+PiBub2RlU2V0OwotCi0gICAgYXV0byB2aXNpdG9yID0gV1RGOjptYWtlVmlzaXRvcigKLSAg
ICAgICAgWyZdKGNvbnN0IFJlZlB0cjxOb2RlPiYgbm9kZSkgeyBub2RlU2V0LmFkZChjb25zdF9j
YXN0PE5vZGUqPihub2RlLmdldCgpKSk7IH0sCi0gICAgICAgIFtdKGNvbnN0IFN0cmluZyYpIHsg
fQotICAgICk7Ci0KLSAgICBmb3IgKGNvbnN0IGF1dG8mIHZhcmlhbnQgOiB2ZWN0b3IpCi0gICAg
ICAgIFdURjo6dmlzaXQodmlzaXRvciwgdmFyaWFudCk7CisgICAgZm9yIChjb25zdCBhdXRvJiB2
YXJpYW50IDogdmVjdG9yKSB7CisgICAgICAgIFdURjo6c3dpdGNoT24odmFyaWFudCwKKyAgICAg
ICAgICAgIFsmXShjb25zdCBSZWZQdHI8Tm9kZT4mIG5vZGUpIHsgbm9kZVNldC5hZGQoY29uc3Rf
Y2FzdDxOb2RlKj4obm9kZS5nZXQoKSkpOyB9LAorICAgICAgICAgICAgW10oY29uc3QgU3RyaW5n
JikgeyB9CisgICAgICAgICk7CisgICAgfQogCiAgICAgcmV0dXJuIG5vZGVTZXQ7CiB9CkBAIC00
NzUsMTQgKzQ3MywxMiBAQCBSZWZQdHI8Tm9kZT4gTm9kZTo6Y29udmVydE5vZGVzT3JTdHJpbmdz
CiAKICAgICBWZWN0b3I8UmVmPE5vZGU+PiBub2RlczsKICAgICBub2Rlcy5yZXNlcnZlSW5pdGlh
bENhcGFjaXR5KG5vZGVPclN0cmluZ1ZlY3Rvci5zaXplKCkpOwotCi0gICAgYXV0byB2aXNpdG9y
ID0gV1RGOjptYWtlVmlzaXRvcigKLSAgICAgICAgWyZdKFJlZlB0cjxOb2RlPiYgbm9kZSkgeyBu
b2Rlcy51bmNoZWNrZWRBcHBlbmQoKm5vZGUuZ2V0KCkpOyB9LAotICAgICAgICBbJl0oU3RyaW5n
JiBzdHJpbmcpIHsgbm9kZXMudW5jaGVja2VkQXBwZW5kKFRleHQ6OmNyZWF0ZShkb2N1bWVudCgp
LCBzdHJpbmcpKTsgfQotICAgICk7Ci0KLSAgICBmb3IgKGF1dG8mIHZhcmlhbnQgOiBub2RlT3JT
dHJpbmdWZWN0b3IpCi0gICAgICAgIFdURjo6dmlzaXQodmlzaXRvciwgdmFyaWFudCk7CisgICAg
Zm9yIChhdXRvJiB2YXJpYW50IDogbm9kZU9yU3RyaW5nVmVjdG9yKSB7CisgICAgICAgIFdURjo6
c3dpdGNoT24odmFyaWFudCwKKyAgICAgICAgICAgIFsmXShSZWZQdHI8Tm9kZT4mIG5vZGUpIHsg
bm9kZXMudW5jaGVja2VkQXBwZW5kKCpub2RlLmdldCgpKTsgfSwKKyAgICAgICAgICAgIFsmXShT
dHJpbmcmIHN0cmluZykgeyBub2Rlcy51bmNoZWNrZWRBcHBlbmQoVGV4dDo6Y3JlYXRlKGRvY3Vt
ZW50KCksIHN0cmluZykpOyB9CisgICAgICAgICk7CisgICAgfQogCiAgICAgaWYgKG5vZGVzLnNp
emUoKSA9PSAxKQogICAgICAgICByZXR1cm4gV1RGTW92ZShub2Rlcy5maXJzdCgpKTsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNlbGVjdEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNlbGVjdEVsZW1lbnQuY3BwCShyZXZpc2lvbiAyMDc1
NzQpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTZWxlY3RFbGVtZW50LmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjI1LDE2ICsyMjUsMTQgQEAgRXhjZXB0aW9uT3I8dm9pZD4gSFRNTFNlbGVj
dEVsZW1lbnQ6OmFkZAogewogICAgIEhUTUxFbGVtZW50KiBiZWZvcmVFbGVtZW50ID0gbnVsbHB0
cjsKICAgICBpZiAoYmVmb3JlKSB7Ci0gICAgICAgIGF1dG8gdmlzaXRvciA9IFdURjo6bWFrZVZp
c2l0b3IoCisgICAgICAgIGJlZm9yZUVsZW1lbnQgPSBXVEY6OnN3aXRjaE9uKGJlZm9yZS52YWx1
ZSgpLAogICAgICAgICAgICAgW10oY29uc3QgUmVmUHRyPEhUTUxFbGVtZW50PiYgZWxlbWVudCkg
LT4gSFRNTEVsZW1lbnQqIHsgcmV0dXJuIGVsZW1lbnQuZ2V0KCk7IH0sCiAgICAgICAgICAgICBb
dGhpc10oaW50IGluZGV4KSAtPiBIVE1MRWxlbWVudCogeyByZXR1cm4gaXRlbShpbmRleCk7IH0K
ICAgICAgICAgKTsKLQotICAgICAgICBiZWZvcmVFbGVtZW50ID0gV1RGOjp2aXNpdCh2aXNpdG9y
LCBiZWZvcmUudmFsdWUoKSk7CiAgICAgfQotICAgIEhUTUxFbGVtZW50JiB0b0luc2VydCA9IFdU
Rjo6dmlzaXQoW10oY29uc3QgYXV0byYgaHRtbEVsZW1lbnQpIC0+IEhUTUxFbGVtZW50JiB7Ci0g
ICAgICAgIHJldHVybiAqaHRtbEVsZW1lbnQ7Ci0gICAgfSwgZWxlbWVudCk7CisgICAgSFRNTEVs
ZW1lbnQmIHRvSW5zZXJ0ID0gV1RGOjpzd2l0Y2hPbihlbGVtZW50LAorICAgICAgICBbXShjb25z
dCBhdXRvJiBodG1sRWxlbWVudCkgLT4gSFRNTEVsZW1lbnQmIHsgcmV0dXJuICpodG1sRWxlbWVu
dDsgfQorICAgICk7CiAKIAogICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOwpJbmRleDogU291cmNl
L1dlYkNvcmUvaHRtbC90cmFjay9UcmFja0V2ZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrRXZlbnQuY3BwCShyZXZpc2lvbiAyMDc1NzQpCisrKyBT
b3VyY2UvV2ViQ29yZS9odG1sL3RyYWNrL1RyYWNrRXZlbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC00Myw5ICs0Myw5IEBAIFRyYWNrRXZlbnQ6OlRyYWNrRXZlbnQoY29uc3QgQXRvbWljU3RyaW4K
ICAgICA6IEV2ZW50KHR5cGUsIGluaXRpYWxpemVyLCBpc1RydXN0ZWQpCiB7CiAgICAgaWYgKGlu
aXRpYWxpemVyLnRyYWNrKSB7Ci0gICAgICAgIG1fdHJhY2sgPSBXVEY6OnZpc2l0KFtdKGNvbnN0
IGF1dG8mIHRyYWNrYmFzZSkgLT4gVHJhY2tCYXNlKiB7Ci0gICAgICAgICAgICByZXR1cm4gdHJh
Y2tiYXNlLmdldCgpOwotICAgICAgICB9LCAqaW5pdGlhbGl6ZXIudHJhY2spOworICAgICAgICBt
X3RyYWNrID0gV1RGOjpzd2l0Y2hPbigqaW5pdGlhbGl6ZXIudHJhY2ssCisgICAgICAgICAgICBb
XShjb25zdCBhdXRvJiB0cmFja2Jhc2UpIC0+IFRyYWNrQmFzZSogeyByZXR1cm4gdHJhY2tiYXNl
LmdldCgpOyB9CisgICAgICAgICk7CiAgICAgfQogfQogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL1R5cGVDb252ZXJzaW9ucy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvVHlwZUNvbnZlcnNpb25zLmgJKHJldmlzaW9uIDIwNzU3NSkKKysrIFNvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvVHlwZUNvbnZlcnNpb25zLmgJKHdvcmtpbmcgY29weSkKQEAgLTExMSwxMSAr
MTExLDExIEBAIHB1YmxpYzoKICAgICBWZWN0b3I8U3RyaW5nPiB0eXBlQ29udmVyc2lvbnNEaWN0
aW9uYXJ5U2VxdWVuY2VWYWx1ZSgpIHsgcmV0dXJuIG1fdHlwZUNvbnZlcnNpb25zRGljdGlvbmFy
eVNlcXVlbmNlVmFsdWU7IH0KICAgICBVbmlvblR5cGUgdHlwZUNvbnZlcnNpb25zRGljdGlvbmFy
eVVuaW9uVHlwZSgpCiAgICAgewotICAgICAgICByZXR1cm4gV1RGOjp2aXNpdChXVEY6Om1ha2VW
aXNpdG9yKAorICAgICAgICByZXR1cm4gV1RGOjpzd2l0Y2hPbihtX3R5cGVDb252ZXJzaW9uc0Rp
Y3Rpb25hcnlVbmlvblZhbHVlLAogICAgICAgICAgICAgW10oY29uc3QgUmVmUHRyPE5vZGU+Jikg
LT4gVW5pb25UeXBlIHsgcmV0dXJuIFVuaW9uVHlwZTo6Tm9kZTsgfSwKICAgICAgICAgICAgIFtd
KGNvbnN0IFZlY3RvcjxTdHJpbmc+JikgLT4gVW5pb25UeXBlIHsgcmV0dXJuIFVuaW9uVHlwZTo6
U2VxdWVuY2U7IH0sCiAgICAgICAgICAgICBbXShjb25zdCBPdGhlckRpY3Rpb25hcnkmKSAtPiBV
bmlvblR5cGUgeyByZXR1cm4gVW5pb25UeXBlOjpEaWN0aW9uYXJ5OyB9Ci0gICAgICAgICksIG1f
dHlwZUNvbnZlcnNpb25zRGljdGlvbmFyeVVuaW9uVmFsdWUpOworICAgICAgICApOwogICAgIH0K
IAogcHJpdmF0ZToKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDIwNzU4MSkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDEzIEBACisyMDE2LTEwLTE5ICBTYW0gV2VpbmlnICA8c2FtQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgQWRkIGNvbnZlbmllbmNlIGZ1bmN0aW9uIHRoYXQgY29tYmluZXMg
V1RGOjp2aXNpdCguLi4pIHdpdGggV1RGOjptYWtlVmlzaXRvciguLi4pCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjM3MTMKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMv
V1RGL1ZhcmlhbnQuY3BwOgorICAgICAgICBBZGQgdGVzdCBmb3IgV1RGOjpzd2l0Y2hPbigpCisK
IDIwMTYtMTAtMTkgIFJ5YW4gSGFkZGFkICA8cnlhbmhhZGRhZEBhcHBsZS5jb20+CiAKICAgICAg
ICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjIwNzU1Ny4KSW5kZXg6IFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV1RGL1ZhcmlhbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL1Rlc3RXZWJL
aXRBUEkvVGVzdHMvV1RGL1ZhcmlhbnQuY3BwCShyZXZpc2lvbiAyMDc1NzQpCisrKyBUb29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dURi9WYXJpYW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQx
LDYgKzE0MSw0NCBAQCBURVNUKFdURl9WYXJpYW50LCBWaXNpdG9yVXNpbmdNYWtlVmlzaXRvCiAg
ICAgRVhQRUNUX1RSVUUoVHlwZTo6U3RyaW5nID09IHR5cGUpOwogfQogCitURVNUKFdURl9WYXJp
YW50LCBWaXNpdG9yVXNpbmdTd2l0Y2hPbikKK3sKKyAgICBlbnVtIGNsYXNzIFR5cGUgeworICAg
ICAgICBOb25lLAorICAgICAgICBJbnQsCisgICAgICAgIEZsb2F0LAorICAgICAgICBTdHJpbmcs
CisgICAgfTsKKworICAgIFR5cGUgdHlwZSA9IFR5cGU6Ok5vbmU7CisKKyAgICBWYXJpYW50PGlu
dCwgZmxvYXQsIFN0cmluZz4gdmFyaWFudCA9IDg7CisgICAgdHlwZSA9IFdURjo6c3dpdGNoT24o
dmFyaWFudCwKKyAgICAgICAgW10oaW50KSB7IHJldHVybiBUeXBlOjpJbnQ7IH0sCisgICAgICAg
IFtdKGZsb2F0KSB7IHJldHVybiBUeXBlOjpGbG9hdDsgfSwKKyAgICAgICAgW10oU3RyaW5nKSB7
IHJldHVybiBUeXBlOjpTdHJpbmc7IH0KKyAgICApOworICAgIEVYUEVDVF9UUlVFKFR5cGU6Oklu
dCA9PSB0eXBlKTsKKworCisgICAgdmFyaWFudCA9IDEuMGY7CisgICAgdHlwZSA9IFdURjo6c3dp
dGNoT24odmFyaWFudCwKKyAgICAgICAgW10oaW50KSB7IHJldHVybiBUeXBlOjpJbnQ7IH0sCisg
ICAgICAgIFtdKGZsb2F0KSB7IHJldHVybiBUeXBlOjpGbG9hdDsgfSwKKyAgICAgICAgW10oU3Ry
aW5nKSB7IHJldHVybiBUeXBlOjpTdHJpbmc7IH0KKyAgICApOworICAgIEVYUEVDVF9UUlVFKFR5
cGU6OkZsb2F0ID09IHR5cGUpOworCisKKyAgICB2YXJpYW50ID0gImhlbGxvIjsKKyAgICB0eXBl
ID0gV1RGOjpzd2l0Y2hPbih2YXJpYW50LAorICAgICAgICBbXShpbnQpIHsgcmV0dXJuIFR5cGU6
OkludDsgfSwKKyAgICAgICAgW10oZmxvYXQpIHsgcmV0dXJuIFR5cGU6OkZsb2F0OyB9LAorICAg
ICAgICBbXShTdHJpbmcpIHsgcmV0dXJuIFR5cGU6OlN0cmluZzsgfQorICAgICk7CisgICAgRVhQ
RUNUX1RSVUUoVHlwZTo6U3RyaW5nID09IHR5cGUpOworfQorCiBURVNUKFdURl9WYXJpYW50LCBD
b25zdHJ1Y3RvckRlc3RydWN0b3IpCiB7CiAgICAgQ29uc3RydWN0b3JEZXN0cnVjdG9yQ291bnRl
cjo6VGVzdGluZ1Njb3BlIHNjb3BlOwo=
</data>
<flag name="review"
          id="315251"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>