<?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>103764</bug_id>
          
          <creation_ts>2012-11-30 12:39:45 -0800</creation_ts>
          <short_desc>Add direct string-&gt;function code cache</short_desc>
          <delta_ts>2012-11-30 13:10:08 -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>New Bugs</component>
          <version>528+ (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="Oliver Hunt">oliver</reporter>
          <assigned_to name="Oliver Hunt">oliver</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>780320</commentid>
    <comment_count>0</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2012-11-30 12:39:45 -0800</bug_when>
    <thetext>Add direct string-&gt;function code cache</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>780330</commentid>
    <comment_count>1</comment_count>
      <attachid>177014</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2012-11-30 12:59:59 -0800</bug_when>
    <thetext>Created attachment 177014
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>780340</commentid>
    <comment_count>2</comment_count>
      <attachid>177014</attachid>
    <who name="Michael Saboff">msaboff</who>
    <bug_when>2012-11-30 13:07:13 -0800</bug_when>
    <thetext>Comment on attachment 177014
Patch

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

&gt; Source/JavaScriptCore/ChangeLog:24
&gt; +        (JSC):

Extraneous, remove.

&gt; Source/JavaScriptCore/ChangeLog:39
&gt; +        (JSC):

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>780341</commentid>
    <comment_count>3</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2012-11-30 13:10:08 -0800</bug_when>
    <thetext>Committed r136261: &lt;http://trac.webkit.org/changeset/136261&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>177014</attachid>
            <date>2012-11-30 12:59:59 -0800</date>
            <delta_ts>2012-11-30 13:07:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103764-20121130125731.patch</filename>
            <type>text/plain</type>
            <size>13453</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2MjYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCAw
Y2I2NWYxOTQxODA2NWNjYTJmMTZmNGZkYjI4ZDliMjQ4MTg0MjU3Li5kODZiYzAxMjU5MjlkYWJl
YjdlZDQxNTNkZGM5YWY2NjIxNTczODZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0MyBAQAorMjAxMi0xMS0zMCAgT2xpdmVyIEh1bnQgIDxvbGl2ZXJAYXBwbGUuY29tPgor
CisgICAgICAgIEFkZCBkaXJlY3Qgc3RyaW5nLT5mdW5jdGlvbiBjb2RlIGNhY2hlCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDM3NjQKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBIGZhaXJseSBsb2dpY2Fs
bHkgc2ltcGxlIHBhdGNoLiAgV2Ugbm93IHRyYWNrIHRoZSBzdGFydCBvZiB0aGUKKyAgICAgICAg
dW5pcXVlIHBvcnRpb24gb2YgYSBmdW5jdGlvbnMgYm9keSwgYW5kIHVzZSB0aGF0IGFzIG91ciBr
ZXkgZm9yCisgICAgICAgIHVubGlua2VkIGZ1bmN0aW9uIGNvZGUuICBUaGlzIGFsbG93cyB1cyB0
byBjYWNoZSBpZGVudGljYWwgY29kZQorICAgICAgICBpbiBkaWZmZXJlbnQgY29udGV4dHMsIGxl
YWRpbmcgdG8gYSBzbWFsbCBidXQgY29uc2lzdGVudCBpbXByb3ZlbWVudAorICAgICAgICBvbiB0
aGUgYmVuY2htYXJrcyB3ZSB0cmFjay4KKworICAgICAgICAqIGJ5dGVjb2RlL1VubGlua2VkQ29k
ZUJsb2NrLmNwcDoKKyAgICAgICAgKEpTQzo6VW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGU6OlVu
bGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKToKKyAgICAgICAgKiBieXRlY29kZS9VbmxpbmtlZENv
ZGVCbG9jay5oOgorICAgICAgICAoSlNDOjpVbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZTo6ZnVu
Y3Rpb25TdGFydE9mZnNldCk6CisgICAgICAgIChVbmxpbmtlZEZ1bmN0aW9uRXhlY3V0YWJsZSk6
CisgICAgICAgICogcGFyc2VyL0FTVEJ1aWxkZXIuaDoKKyAgICAgICAgKEFTVEJ1aWxkZXIpOgor
ICAgICAgICAoSlNDOjpBU1RCdWlsZGVyOjpzZXRGdW5jdGlvblN0YXJ0KToKKyAgICAgICAgKiBw
YXJzZXIvTm9kZXMuY3BwOgorICAgICAgICAqIHBhcnNlci9Ob2Rlcy5oOgorICAgICAgICAoSlND
KToKKyAgICAgICAgKEpTQzo6RnVuY3Rpb25Cb2R5Tm9kZTo6c2V0RnVuY3Rpb25TdGFydCk6Cisg
ICAgICAgIChKU0M6OkZ1bmN0aW9uQm9keU5vZGU6OmZ1bmN0aW9uU3RhcnQpOgorICAgICAgICAo
RnVuY3Rpb25Cb2R5Tm9kZSk6CisgICAgICAgICogcGFyc2VyL1BhcnNlci5jcHA6CisgICAgICAg
IChKU0M6Ojo6cGFyc2VGdW5jdGlvbkluZm8pOgorICAgICAgICAqIHBhcnNlci9QYXJzZXIuaDoK
KyAgICAgICAgKEpTQzo6UGFyc2VyOjpmaW5kQ2FjaGVkRnVuY3Rpb25JbmZvKToKKyAgICAgICAg
KiBwYXJzZXIvU3ludGF4Q2hlY2tlci5oOgorICAgICAgICAoSlNDOjpTeW50YXhDaGVja2VyOjpz
ZXRGdW5jdGlvblN0YXJ0KToKKyAgICAgICAgKiBydW50aW1lL0NvZGVDYWNoZS5jcHA6CisgICAg
ICAgIChKU0M6OkNvZGVDYWNoZTo6Z2VuZXJhdGVGdW5jdGlvbkNvZGVCbG9jayk6CisgICAgICAg
IChKU0M6OkNvZGVDYWNoZTo6Z2V0RnVuY3Rpb25Db2RlQmxvY2spOgorICAgICAgICAoSlNDOjpD
b2RlQ2FjaGU6OnVzZWRGdW5jdGlvbkNvZGUpOgorICAgICAgICAqIHJ1bnRpbWUvQ29kZUNhY2hl
Lmg6CisgICAgICAgIChKU0MpOgorCiAyMDEyLTExLTMwICBBbGxhbiBTYW5kZmVsZCBKZW5zZW4g
IDxhbGxhbi5qZW5zZW5AZGlnaWEuY29tPgogCiAgICAgICAgIENyYXNoIGluIGNvbnZlcnNpb24g
b2YgZW1wdHkgT3BhcXVlSlNTdHJpbmcgdG8gSWRlbnRpZmllciAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9VbmxpbmtlZENvZGVCbG9jay5jcHAgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvVW5saW5rZWRDb2RlQmxvY2suY3BwCmluZGV4IGU5OGQ0
ZGUwYWE4YmE1YzM0OGM1NGVlMjRhZmZlMGU5OTQ3MTZmOTguLjBiZTY3Mzc2NjIyMWUyMDQ1M2Fi
N2M3MDlhMzJhMDk4ZjYwNDNhZWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9i
eXRlY29kZS9VbmxpbmtlZENvZGVCbG9jay5jcHAKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2NrLmNwcApAQCAtNjYsNiArNjYsNyBAQCBVbmxpbmtl
ZEZ1bmN0aW9uRXhlY3V0YWJsZTo6VW5saW5rZWRGdW5jdGlvbkV4ZWN1dGFibGUoSlNHbG9iYWxE
YXRhKiBnbG9iYWxEYXRhLAogICAgICwgbV9wYXJhbWV0ZXJzKG5vZGUtPnBhcmFtZXRlcnMoKSkK
ICAgICAsIG1fZmlyc3RMaW5lT2Zmc2V0KG5vZGUtPmZpcnN0TGluZSgpIC0gc291cmNlLmZpcnN0
TGluZSgpKQogICAgICwgbV9saW5lQ291bnQobm9kZS0+bGFzdExpbmUoKSAtIG5vZGUtPmZpcnN0
TGluZSgpKQorICAgICwgbV9mdW5jdGlvblN0YXJ0T2Zmc2V0KG5vZGUtPmZ1bmN0aW9uU3RhcnQo
KSAtIHNvdXJjZS5zdGFydE9mZnNldCgpKQogICAgICwgbV9zdGFydE9mZnNldChub2RlLT5zb3Vy
Y2UoKS5zdGFydE9mZnNldCgpIC0gc291cmNlLnN0YXJ0T2Zmc2V0KCkpCiAgICAgLCBtX3NvdXJj
ZUxlbmd0aChub2RlLT5zb3VyY2UoKS5sZW5ndGgoKSkKICAgICAsIG1fZmVhdHVyZXMobm9kZS0+
ZmVhdHVyZXMoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ieXRlY29kZS9V
bmxpbmtlZENvZGVCbG9jay5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlu
a2VkQ29kZUJsb2NrLmgKaW5kZXggMjM5MzdkNzczZWIwOTBjNGI2OTViNGJiY2UyNmUyNGJkZjYx
ODJmNi4uNjdlNjg2ZWZhZWQwOGQ0MGQwZmRhYWYwYzI4ODdiMzZiYzBiY2E4OCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2NrLmgKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1VubGlua2VkQ29kZUJsb2NrLmgKQEAg
LTk4LDYgKzk4LDcgQEAgcHVibGljOgogCiAgICAgdW5zaWduZWQgZmlyc3RMaW5lT2Zmc2V0KCkg
Y29uc3QgeyByZXR1cm4gbV9maXJzdExpbmVPZmZzZXQ7IH0KICAgICB1bnNpZ25lZCBsaW5lQ291
bnQoKSBjb25zdCB7IHJldHVybiBtX2xpbmVDb3VudDsgfQorICAgIHVuc2lnbmVkIGZ1bmN0aW9u
U3RhcnRPZmZzZXQoKSBjb25zdCB7IHJldHVybiBtX2Z1bmN0aW9uU3RhcnRPZmZzZXQ7IH0KICAg
ICB1bnNpZ25lZCBzdGFydE9mZnNldCgpIGNvbnN0IHsgcmV0dXJuIG1fc3RhcnRPZmZzZXQ7IH0K
ICAgICB1bnNpZ25lZCBzb3VyY2VMZW5ndGgoKSB7IHJldHVybiBtX3NvdXJjZUxlbmd0aDsgfQog
CkBAIC0xNTMsNiArMTU0LDcgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8RnVuY3Rpb25QYXJhbWV0
ZXJzPiBtX3BhcmFtZXRlcnM7CiAgICAgdW5zaWduZWQgbV9maXJzdExpbmVPZmZzZXQ7CiAgICAg
dW5zaWduZWQgbV9saW5lQ291bnQ7CisgICAgdW5zaWduZWQgbV9mdW5jdGlvblN0YXJ0T2Zmc2V0
OwogICAgIHVuc2lnbmVkIG1fc3RhcnRPZmZzZXQ7CiAgICAgdW5zaWduZWQgbV9zb3VyY2VMZW5n
dGg7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvQVNUQnVpbGRl
ci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9BU1RCdWlsZGVyLmgKaW5kZXggNmU3
MzM0Zjk3YWMwMWE1Nzk2YmVkMDdlODI4ZTJmNGNmMTk3NzA2Mi4uMjdiN2MyYzVkNjg0MWUyMDZm
NzFmMDA0MzE4MGM1YmNkZWFkZTIwYiAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3BhcnNlci9BU1RCdWlsZGVyLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9B
U1RCdWlsZGVyLmgKQEAgLTI2Nyw2ICsyNjcsMTEgQEAgcHVibGljOgogICAgIHsKICAgICAgICAg
cmV0dXJuIEZ1bmN0aW9uQm9keU5vZGU6OmNyZWF0ZShtX2dsb2JhbERhdGEsIGxvY2F0aW9uLCBp
blN0cmljdENvbnRleHQpOwogICAgIH0KKworICAgIHZvaWQgc2V0RnVuY3Rpb25TdGFydChGdW5j
dGlvbkJvZHlOb2RlKiBib2R5LCBpbnQgZnVuY3Rpb25TdGFydCkKKyAgICB7CisgICAgICAgIGJv
ZHktPnNldEZ1bmN0aW9uU3RhcnQoZnVuY3Rpb25TdGFydCk7CisgICAgfQogICAgIAogICAgIHRl
bXBsYXRlIDxib29sPiBQcm9wZXJ0eU5vZGUqIGNyZWF0ZUdldHRlck9yU2V0dGVyUHJvcGVydHko
Y29uc3QgSlNUb2tlbkxvY2F0aW9uJiBsb2NhdGlvbiwgUHJvcGVydHlOb2RlOjpUeXBlIHR5cGUs
IGNvbnN0IElkZW50aWZpZXIqIG5hbWUsIFBhcmFtZXRlck5vZGUqIHBhcmFtcywgRnVuY3Rpb25C
b2R5Tm9kZSogYm9keSwgaW50IG9wZW5CcmFjZVBvcywgaW50IGNsb3NlQnJhY2VQb3MsIGludCBi
b2R5U3RhcnRMaW5lLCBpbnQgYm9keUVuZExpbmUpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291cmNl
L0phdmFTY3JpcHRDb3JlL3BhcnNlci9Ob2Rlcy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
cGFyc2VyL05vZGVzLmNwcAppbmRleCAwM2VlOGVlMTI0OTQ5NGMyZDE3ZDM4MmMwMWUxMGFhZTU4
ZWQwM2Y0Li4wYjEyMmVkMWU4NGRiNWQ2Mzg1ZWI1N2U3ODk5MjFmMGVhNDQzMTY3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVzLmNwcAorKysgYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVzLmNwcApAQCAtNDEsNiArNDEsNyBAQAogI2luY2x1
ZGUgIlByb3BlcnR5TmFtZUFycmF5LmgiCiAjaW5jbHVkZSAiUmVnRXhwT2JqZWN0LmgiCiAjaW5j
bHVkZSAiU2FtcGxpbmdUb29sLmgiCisjaW5jbHVkZSAiU291cmNlUHJvdmlkZXJDYWNoZUl0ZW0u
aCIKICNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVk
TGVha0NvdW50ZXIuaD4KICNpbmNsdWRlIDx3dGYvVGhyZWFkaW5nLmg+CmRpZmYgLS1naXQgYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL05vZGVzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvcGFyc2VyL05vZGVzLmgKaW5kZXggNTA5ZDM2ZDFhZTM2YzI3ZmZhZWJkODQwZDliNDM5Y2Yz
NjM2M2NlNi4uOTZkODgyNDgwNDk5N2Q0ZjY4NzdiYmFlNjJhZGQ3ZjQ0Y2NlNWY4OCAxMDA2NDQK
LS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9Ob2Rlcy5oCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9wYXJzZXIvTm9kZXMuaApAQCAtNDYsNiArNDYsNyBAQCBuYW1lc3BhY2Ug
SlNDIHsKICAgICBjbGFzcyBSZWdpc3RlcklEOwogICAgIGNsYXNzIEpTU2NvcGU7CiAgICAgY2xh
c3MgU2NvcGVOb2RlOworICAgIGNsYXNzIFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtOwogCiAgICAg
dHlwZWRlZiB1bnNpZ25lZCBDb2RlRmVhdHVyZXM7CiAKQEAgLTE0MjQsNiArMTQyNSw5IEBAIG5h
bWVzcGFjZSBKU0MgewogICAgICAgICBib29sIGZ1bmN0aW9uTmFtZUlzSW5TY29wZSgpIHsgcmV0
dXJuIG1fZnVuY3Rpb25OYW1lSXNJblNjb3BlVG9nZ2xlID09IEZ1bmN0aW9uTmFtZUlzSW5TY29w
ZTsgfQogICAgICAgICBGdW5jdGlvbk5hbWVJc0luU2NvcGVUb2dnbGUgZnVuY3Rpb25OYW1lSXNJ
blNjb3BlVG9nZ2xlKCkgeyByZXR1cm4gbV9mdW5jdGlvbk5hbWVJc0luU2NvcGVUb2dnbGU7IH0K
IAorICAgICAgICB2b2lkIHNldEZ1bmN0aW9uU3RhcnQoaW50IGZ1bmN0aW9uU3RhcnQpIHsgbV9m
dW5jdGlvblN0YXJ0ID0gZnVuY3Rpb25TdGFydDsgfQorICAgICAgICBpbnQgZnVuY3Rpb25TdGFy
dCgpIGNvbnN0IHsgcmV0dXJuIG1fZnVuY3Rpb25TdGFydDsgfQorCiAgICAgICAgIHN0YXRpYyBj
b25zdCBib29sIHNjb3BlSXNGdW5jdGlvbiA9IHRydWU7CiAKICAgICBwcml2YXRlOgpAQCAtMTQz
NCw2ICsxNDM4LDcgQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIElkZW50aWZpZXIgbV9pbmZl
cnJlZE5hbWU7CiAgICAgICAgIEZ1bmN0aW9uTmFtZUlzSW5TY29wZVRvZ2dsZSBtX2Z1bmN0aW9u
TmFtZUlzSW5TY29wZVRvZ2dsZTsKICAgICAgICAgUmVmUHRyPEZ1bmN0aW9uUGFyYW1ldGVycz4g
bV9wYXJhbWV0ZXJzOworICAgICAgICBpbnQgbV9mdW5jdGlvblN0YXJ0OwogICAgIH07CiAKICAg
ICBjbGFzcyBGdW5jRXhwck5vZGUgOiBwdWJsaWMgRXhwcmVzc2lvbk5vZGUgewpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuY3BwCmluZGV4IGNmM2NiNGU0ZmY1YzFjM2M5MzUyNzNi
YzUwNjIwNTVhMzExMTJlYWMuLjcyYjQ5MDBjNmYxZThkZGEwNjU5YjkxOWI4M2Y1YWM3MDMyNTJm
ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmNwcAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5jcHAKQEAgLTg0Miw2ICs4
NDIsNyBAQCB0ZW1wbGF0ZSA8RnVuY3Rpb25SZXF1aXJlbWVudHMgcmVxdWlyZW1lbnRzLCBib29s
IG5hbWVJc0luQ29udGFpbmluZ1Njb3BlLCBjbGFzcwogICAgICAgICBmYWlsSWZGYWxzZShwb3BT
Y29wZShmdW5jdGlvblNjb3BlLCBUcmVlQnVpbGRlcjo6TmVlZHNGcmVlVmFyaWFibGVJbmZvKSk7
CiAgICAgICAgIAogICAgICAgICBjbG9zZUJyYWNlUG9zID0gY2FjaGVkSW5mby0+Y2xvc2VCcmFj
ZVBvczsKKyAgICAgICAgY29udGV4dC5zZXRGdW5jdGlvblN0YXJ0KGJvZHksIGZ1bmN0aW9uU3Rh
cnQpOwogICAgICAgICBtX3Rva2VuID0gY2FjaGVkSW5mby0+Y2xvc2VCcmFjZVRva2VuKCk7CiAg
ICAgICAgIG1fbGV4ZXItPnNldE9mZnNldChtX3Rva2VuLm1fbG9jYXRpb24uZW5kT2Zmc2V0KTsK
ICAgICAgICAgbV9sZXhlci0+c2V0TGluZU51bWJlcihtX3Rva2VuLm1fbG9jYXRpb24ubGluZSk7
CkBAIC04NjksNyArODcwLDggQEAgdGVtcGxhdGUgPEZ1bmN0aW9uUmVxdWlyZW1lbnRzIHJlcXVp
cmVtZW50cywgYm9vbCBuYW1lSXNJbkNvbnRhaW5pbmdTY29wZSwgY2xhc3MKICAgICAgICAgbmV3
SW5mbyA9IGFkb3B0UHRyKG5ldyBTb3VyY2VQcm92aWRlckNhY2hlSXRlbShmdW5jdGlvblN0YXJ0
LCBtX3Rva2VuLm1fbG9jYXRpb24ubGluZSwgY2xvc2VCcmFjZVBvcykpOwogICAgICAgICBmdW5j
dGlvblNjb3BlLT5zYXZlRnVuY3Rpb25JbmZvKG5ld0luZm8uZ2V0KCkpOwogICAgIH0KLSAgICAK
KyAgICBjb250ZXh0LnNldEZ1bmN0aW9uU3RhcnQoYm9keSwgZnVuY3Rpb25TdGFydCk7CisKICAg
ICBmYWlsSWZGYWxzZShwb3BTY29wZShmdW5jdGlvblNjb3BlLCBUcmVlQnVpbGRlcjo6TmVlZHNG
cmVlVmFyaWFibGVJbmZvKSk7CiAgICAgbWF0Y2hPckZhaWwoQ0xPU0VCUkFDRSk7CiAgICAgCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3BhcnNlci9QYXJzZXIuaAppbmRleCA2MTVkMDllYjc1ZDgzYTc5YjFi
YWEwOTVkYjhhMjk4MmJlYzY1NGZiLi42NDZjNmE3MjBmZjBkY2M2OThkZTZhYTk4MTVlYmU2ZjIx
NmFmNGVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1BhcnNlci5o
CisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9wYXJzZXIvUGFyc2VyLmgKQEAgLTUwOSw3ICs1
MDksNyBAQCBwcml2YXRlOgogICAgIAogICAgIFNjb3BlU3RhY2sgbV9zY29wZVN0YWNrOwogICAg
IAotICAgIGNvbnN0IFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVtKiBmaW5kQ2FjaGVkRnVuY3Rpb25J
bmZvKGludCBvcGVuQnJhY2VQb3MpIAorICAgIGNvbnN0IFNvdXJjZVByb3ZpZGVyQ2FjaGVJdGVt
KiBmaW5kQ2FjaGVkRnVuY3Rpb25JbmZvKGludCBvcGVuQnJhY2VQb3MpCiAgICAgewogICAgICAg
ICByZXR1cm4gbV9mdW5jdGlvbkNhY2hlID8gbV9mdW5jdGlvbkNhY2hlLT5nZXQob3BlbkJyYWNl
UG9zKSA6IDA7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3BhcnNl
ci9TeW50YXhDaGVja2VyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1N5bnRheENo
ZWNrZXIuaAppbmRleCAwZTY4ODk3NTIyNTFjNTgwZDdkMTRkYWY4MDk4NzA2NzliOTQwNGJiLi4w
M2NhZjVmNjQ2ZGUzZjcyNTQ3ZjY3NjBkMTNiM2JlOTJiNDNkM2Q1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcGFyc2VyL1N5bnRheENoZWNrZXIuaAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvcGFyc2VyL1N5bnRheENoZWNrZXIuaApAQCAtMTUxLDYgKzE1MSw3IEBAIHB1
YmxpYzoKICAgICBFeHByZXNzaW9uVHlwZSBjcmVhdGVBc3NpZ25SZXNvbHZlKGNvbnN0IEpTVG9r
ZW5Mb2NhdGlvbiYsIGNvbnN0IElkZW50aWZpZXImLCBFeHByZXNzaW9uVHlwZSwgaW50LCBpbnQs
IGludCkgeyByZXR1cm4gQXNzaWdubWVudEV4cHI7IH0KICAgICBFeHByZXNzaW9uVHlwZSBjcmVh
dGVGdW5jdGlvbkV4cHIoY29uc3QgSlNUb2tlbkxvY2F0aW9uJiwgY29uc3QgSWRlbnRpZmllcios
IGludCwgaW50LCBpbnQsIGludCwgaW50LCBpbnQpIHsgcmV0dXJuIEZ1bmN0aW9uRXhwcjsgfQog
ICAgIGludCBjcmVhdGVGdW5jdGlvbkJvZHkoY29uc3QgSlNUb2tlbkxvY2F0aW9uJiwgYm9vbCkg
eyByZXR1cm4gMTsgfQorICAgIHZvaWQgc2V0RnVuY3Rpb25TdGFydChpbnQsIGludCkgeyB9CiAg
ICAgaW50IGNyZWF0ZUFyZ3VtZW50cygpIHsgcmV0dXJuIDE7IH0KICAgICBpbnQgY3JlYXRlQXJn
dW1lbnRzKGludCkgeyByZXR1cm4gMTsgfQogICAgIGludCBjcmVhdGVBcmd1bWVudHNMaXN0KGNv
bnN0IEpTVG9rZW5Mb2NhdGlvbiYsIGludCkgeyByZXR1cm4gMTsgfQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29kZUNhY2hlLmNwcCBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0NvZGVDYWNoZS5jcHAKaW5kZXggMDY4OTE5NTI4NzVhMjFhYjc5MGUw
YWM0NmZlOGM1YmZlMjU0YmFmZi4uMTA5ZWMxY2ZkNTYzZWQ0NTU3YzE5ZDlhNDliNWY5NGJjYWRj
NTg1NyAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29kZUNhY2hl
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db2RlQ2FjaGUuY3BwCkBA
IC0xMjYsMTMgKzEyNiwyOSBAQCBVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrKiBDb2RlQ2FjaGU6
OmdlbmVyYXRlRnVuY3Rpb25Db2RlQmxvY2soSlNHbG9iYWxEYXRhJiBnbAogICAgIGJvZHktPmRl
c3Ryb3lEYXRhKCk7CiAgICAgaWYgKGVycm9yLm1fdHlwZSAhPSBQYXJzZXJFcnJvcjo6RXJyb3JO
b25lKQogICAgICAgICByZXR1cm4gMDsKLSAgICBtX2NhY2hlZEZ1bmN0aW9uQ29kZS5hZGQocmVz
dWx0LCBTdHJvbmc8VW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jaz4oZ2xvYmFsRGF0YSwgcmVzdWx0
KSk7CisgICAgbV9yZWNlbnRseVVzZWRGdW5jdGlvbkNvZGUuYWRkKHJlc3VsdCwgU3Ryb25nPFVu
bGlua2VkRnVuY3Rpb25Db2RlQmxvY2s+KGdsb2JhbERhdGEsIHJlc3VsdCkpOwogICAgIHJldHVy
biByZXN1bHQ7CiB9CiAKIFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2sqIENvZGVDYWNoZTo6Z2V0
RnVuY3Rpb25Db2RlQmxvY2soSlNHbG9iYWxEYXRhJiBnbG9iYWxEYXRhLCBVbmxpbmtlZEZ1bmN0
aW9uRXhlY3V0YWJsZSogZXhlY3V0YWJsZSwgY29uc3QgU291cmNlQ29kZSYgc291cmNlLCBDb2Rl
U3BlY2lhbGl6YXRpb25LaW5kIGtpbmQsIERlYnVnZ2VyTW9kZSBkZWJ1Z2dlck1vZGUsIFByb2Zp
bGVyTW9kZSBwcm9maWxlck1vZGUsIFBhcnNlckVycm9yJiBlcnJvcikKIHsKLSAgICByZXR1cm4g
Z2VuZXJhdGVGdW5jdGlvbkNvZGVCbG9jayhnbG9iYWxEYXRhLCBleGVjdXRhYmxlLCBzb3VyY2Us
IGtpbmQsIGRlYnVnZ2VyTW9kZSwgcHJvZmlsZXJNb2RlLCBlcnJvcik7CisgICAgaWYgKGRlYnVn
Z2VyTW9kZSA9PSBEZWJ1Z2dlck9uIHx8IHByb2ZpbGVyTW9kZSA9PSBQcm9maWxlck9uKQorICAg
ICAgICByZXR1cm4gZ2VuZXJhdGVGdW5jdGlvbkNvZGVCbG9jayhnbG9iYWxEYXRhLCBleGVjdXRh
YmxlLCBzb3VyY2UsIGtpbmQsIGRlYnVnZ2VyTW9kZSwgcHJvZmlsZXJNb2RlLCBlcnJvcik7CisK
KyAgICBTb3VyY2VDb2RlIGZ1bmN0aW9uU291cmNlKHNvdXJjZS5wcm92aWRlcigpLCBleGVjdXRh
YmxlLT5mdW5jdGlvblN0YXJ0T2Zmc2V0KCksIHNvdXJjZS5lbmRPZmZzZXQoKSwgc291cmNlLmZp
cnN0TGluZSgpKTsKKyAgICBDb2RlQmxvY2tLZXkga2V5ID0gbWFrZUNvZGVCbG9ja0tleShmdW5j
dGlvblNvdXJjZSwga2luZCA9PSBDb2RlRm9yQ2FsbCA/IEZ1bmN0aW9uQ2FsbFR5cGUgOiBGdW5j
dGlvbkNvbnN0cnVjdFR5cGUsIGV4ZWN1dGFibGUtPmlzSW5TdHJpY3RDb250ZXh0KCkgPyBKU1Bh
cnNlU3RyaWN0IDogSlNQYXJzZU5vcm1hbCk7CisgICAgaWYgKGNvbnN0IFN0cm9uZzxVbmxpbmtl
ZEZ1bmN0aW9uQ29kZUJsb2NrPiogY2FjaGVFbnRyeSA9IG1fY2FjaGVkRnVuY3Rpb25FeGVjdXRh
Ymxlcy5maW5kKGtleSkpIHsKKyAgICAgICAgaWYgKGNhY2hlRW50cnkpIHsKKyAgICAgICAgICAg
IFVubGlua2VkRnVuY3Rpb25Db2RlQmxvY2sqIHVubGlua2VkQ29kZSA9IGNhY2hlRW50cnktPmdl
dCgpOworICAgICAgICAgICAgdW5zaWduZWQgZmlyc3RMaW5lID0gc291cmNlLmZpcnN0TGluZSgp
ICsgdW5saW5rZWRDb2RlLT5maXJzdExpbmUoKTsKKyAgICAgICAgICAgIGV4ZWN1dGFibGUtPnJl
Y29yZFBhcnNlKHVubGlua2VkQ29kZS0+Y29kZUZlYXR1cmVzKCksIHVubGlua2VkQ29kZS0+aGFz
Q2FwdHVyZWRWYXJpYWJsZXMoKSwgZmlyc3RMaW5lLCBmaXJzdExpbmUgKyB1bmxpbmtlZENvZGUt
PmxpbmVDb3VudCgpKTsKKyAgICAgICAgICAgIG1fcmVjZW50bHlVc2VkRnVuY3Rpb25Db2RlLmFk
ZCh1bmxpbmtlZENvZGUsICpjYWNoZUVudHJ5KTsKKyAgICAgICAgICAgIHJldHVybiB1bmxpbmtl
ZENvZGU7CisgICAgICAgIH0KKyAgICB9CisgICAgVW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jayog
cmVzdWx0ID0gZ2VuZXJhdGVGdW5jdGlvbkNvZGVCbG9jayhnbG9iYWxEYXRhLCBleGVjdXRhYmxl
LCBzb3VyY2UsIGtpbmQsIGRlYnVnZ2VyTW9kZSwgcHJvZmlsZXJNb2RlLCBlcnJvcik7CisgICAg
bV9jYWNoZWRGdW5jdGlvbkV4ZWN1dGFibGVzLmFkZChrZXksIFN0cm9uZzxVbmxpbmtlZEZ1bmN0
aW9uQ29kZUJsb2NrPihnbG9iYWxEYXRhLCByZXN1bHQpKTsKKyAgICByZXR1cm4gcmVzdWx0Owog
fQogCiBDb2RlQ2FjaGU6Okdsb2JhbEZ1bmN0aW9uS2V5IENvZGVDYWNoZTo6bWFrZUdsb2JhbEZ1
bmN0aW9uS2V5KGNvbnN0IFNvdXJjZUNvZGUmIHNvdXJjZSwgY29uc3QgU3RyaW5nJiBuYW1lKQpA
QCAtMTczLDcgKzE4OSw3IEBAIFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlKiBDb2RlQ2FjaGU6
OmdldEZ1bmN0aW9uRXhlY3V0YWJsZUZyb21HbG9iYWxDb2RlKEpTR2xvCiAKIHZvaWQgQ29kZUNh
Y2hlOjp1c2VkRnVuY3Rpb25Db2RlKEpTR2xvYmFsRGF0YSYgZ2xvYmFsRGF0YSwgVW5saW5rZWRG
dW5jdGlvbkNvZGVCbG9jayogY29kZUJsb2NrKQogewotICAgIG1fY2FjaGVkRnVuY3Rpb25Db2Rl
LmFkZChjb2RlQmxvY2ssIFN0cm9uZzxVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrPihnbG9iYWxE
YXRhLCBjb2RlQmxvY2spKTsKKyAgICBtX3JlY2VudGx5VXNlZEZ1bmN0aW9uQ29kZS5hZGQoY29k
ZUJsb2NrLCBTdHJvbmc8VW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jaz4oZ2xvYmFsRGF0YSwgY29k
ZUJsb2NrKSk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL0NvZGVDYWNoZS5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29kZUNhY2hl
LmgKaW5kZXggNzMzZGU0MmQ2NjQ1MTBmY2ZlMTg5YTIwYmYzZThlYWM3MWY5NDMwNS4uMTZiNjI5
YjQyNWFlMzVlZjIzMzU5NzYxNzBkZDgyNDk1MTUyYTg5YiAxMDA2NDQKLS0tIGEvU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29kZUNhY2hlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL3J1bnRpbWUvQ29kZUNhY2hlLmgKQEAgLTQwLDYgKzQwLDcgQEAKIG5hbWVzcGFjZSBKU0Mg
ewogCiBjbGFzcyBFdmFsRXhlY3V0YWJsZTsKK2NsYXNzIEZ1bmN0aW9uQm9keU5vZGU7CiBjbGFz
cyBJZGVudGlmaWVyOwogY2xhc3MgUHJvZ3JhbUV4ZWN1dGFibGU7CiBjbGFzcyBVbmxpbmtlZENv
ZGVCbG9jazsKQEAgLTk4LDcgKzk5LDcgQEAgcHVibGljOgogICAgIHZvaWQgdXNlZEZ1bmN0aW9u
Q29kZShKU0dsb2JhbERhdGEmLCBVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrKik7CiAgICAgfkNv
ZGVDYWNoZSgpOwogCi0gICAgZW51bSBDb2RlVHlwZSB7IEV2YWxUeXBlLCBQcm9ncmFtVHlwZSwg
RnVuY3Rpb25UeXBlIH07CisgICAgZW51bSBDb2RlVHlwZSB7IEV2YWxUeXBlLCBQcm9ncmFtVHlw
ZSwgRnVuY3Rpb25DYWxsVHlwZSwgRnVuY3Rpb25Db25zdHJ1Y3RUeXBlIH07CiAgICAgdHlwZWRl
ZiBzdGQ6OnBhaXI8U3RyaW5nLCB1bnNpZ25lZD4gQ29kZUJsb2NrS2V5OwogICAgIHR5cGVkZWYg
c3RkOjpwYWlyPFN0cmluZywgU3RyaW5nPiBHbG9iYWxGdW5jdGlvbktleTsKIApAQCAtMTE4LDgg
KzExOSw5IEBAIHByaXZhdGU6CiAgICAgfTsKIAogICAgIENhY2hlTWFwPENvZGVCbG9ja0tleSwg
U3Ryb25nPFVubGlua2VkQ29kZUJsb2NrPiwga01heENvZGVCbG9ja0VudHJpZXM+IG1fY2FjaGVk
Q29kZUJsb2NrczsKLSAgICBDYWNoZU1hcDxHbG9iYWxGdW5jdGlvbktleSwgU3Ryb25nPFVubGlu
a2VkRnVuY3Rpb25FeGVjdXRhYmxlPiwga01heEdsb2JhbEZ1bmN0aW9uRW50cmllcz4gbV9jYWNo
ZWRHbG9iYWxGdW5jdGlvbnM7Ci0gICAgQ2FjaGVNYXA8VW5saW5rZWRGdW5jdGlvbkNvZGVCbG9j
ayosIFN0cm9uZzxVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrPiwga01heEZ1bmN0aW9uQ29kZUJs
b2Nrcz4gbV9jYWNoZWRGdW5jdGlvbkNvZGU7CisgICAgQ2FjaGVNYXA8Q29kZUJsb2NrS2V5LCBT
dHJvbmc8VW5saW5rZWRGdW5jdGlvbkNvZGVCbG9jaz4sIGtNYXhGdW5jdGlvbkNvZGVCbG9ja3M+
IG1fY2FjaGVkRnVuY3Rpb25FeGVjdXRhYmxlczsKKyAgICBDYWNoZU1hcDxHbG9iYWxGdW5jdGlv
bktleSwgU3Ryb25nPFVubGlua2VkRnVuY3Rpb25FeGVjdXRhYmxlPiwga01heEZ1bmN0aW9uQ29k
ZUJsb2Nrcz4gbV9jYWNoZWRHbG9iYWxGdW5jdGlvbnM7CisgICAgQ2FjaGVNYXA8VW5saW5rZWRG
dW5jdGlvbkNvZGVCbG9jayosIFN0cm9uZzxVbmxpbmtlZEZ1bmN0aW9uQ29kZUJsb2NrPiwga01h
eEZ1bmN0aW9uQ29kZUJsb2Nrcz4gbV9yZWNlbnRseVVzZWRGdW5jdGlvbkNvZGU7CiB9OwogCiB9
Cg==
</data>
<flag name="review"
          id="192985"
          type_id="1"
          status="+"
          setter="msaboff"
    />
          </attachment>
      

    </bug>

</bugzilla>