<?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>73375</bug_id>
          
          <creation_ts>2011-11-29 16:54:29 -0800</creation_ts>
          <short_desc>Resetting a put_by_id inline cache should preserve the &quot;isDirect&quot; bit</short_desc>
          <delta_ts>2011-11-30 01:54:15 -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>JavaScriptCore</component>
          <version>528+ (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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ossy</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>511222</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-29 16:54:29 -0800</bug_when>
    <thetext>Currently when a put_by_id inline cache is reset, we forget if it was direct.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>511224</commentid>
    <comment_count>1</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-29 16:56:00 -0800</bug_when>
    <thetext>&lt;rdar://problem/10500875&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>511230</commentid>
    <comment_count>2</comment_count>
      <attachid>117075</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-29 17:04:41 -0800</bug_when>
    <thetext>Created attachment 117075
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>511431</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-29 23:46:23 -0800</bug_when>
    <thetext>Attachment 117075 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/JavaScriptCore/ChangeLog&apos;, u&apos;Source...&quot; exit_code: 1

Source/JavaScriptCore/jit/JITPropertyAccess.cpp:1160:  Declaration has space between type name and * in void *oldCall  [whitespace/declaration] [3]
Total errors found: 1 in 10 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>511472</commentid>
    <comment_count>4</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-30 00:44:58 -0800</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/101457</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>511473</commentid>
    <comment_count>5</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-30 00:45:19 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Attachment 117075 [details] did not pass style-queue:
&gt; 
&gt; Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/JavaScriptCore/ChangeLog&apos;, u&apos;Source...&quot; exit_code: 1
&gt; 
&gt; Source/JavaScriptCore/jit/JITPropertyAccess.cpp:1160:  Declaration has space between type name and * in void *oldCall  [whitespace/declaration] [3]
&gt; Total errors found: 1 in 10 files
&gt; 
&gt; 
&gt; If any of these errors are false positives, please file a bug against check-webkit-style.

Ooops!  I addressed this in the code that I committed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>511476</commentid>
    <comment_count>6</comment_count>
      <attachid>117075</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-30 00:45:35 -0800</bug_when>
    <thetext>Comment on attachment 117075
the patch

Clearing flags after landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>511482</commentid>
    <comment_count>7</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2011-11-30 00:57:37 -0800</bug_when>
    <thetext>It broke the Qt ARM build:

../../../../Source/JavaScriptCore/jit/JITPropertyAccess.cpp: In static member function &apos;static bool JSC::JIT::isDirectPutById(JSC::StructureStubInfo*)&apos;:
../../../../Source/JavaScriptCore/jit/JITPropertyAccess.cpp:1160: error: &apos;readCallTarget&apos; is not a member of &apos;JSC::MacroAssembler&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>511486</commentid>
    <comment_count>8</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-30 01:00:56 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; It broke the Qt ARM build:
&gt; 
&gt; ../../../../Source/JavaScriptCore/jit/JITPropertyAccess.cpp: In static member function &apos;static bool JSC::JIT::isDirectPutById(JSC::StructureStubInfo*)&apos;:
&gt; ../../../../Source/JavaScriptCore/jit/JITPropertyAccess.cpp:1160: error: &apos;readCallTarget&apos; is not a member of &apos;JSC::MacroAssembler&apos;

ARMv6 or ARMv7?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>511530</commentid>
    <comment_count>9</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2011-11-30 01:54:15 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #7)
&gt; &gt; It broke the Qt ARM build:
&gt; &gt; 
&gt; &gt; ../../../../Source/JavaScriptCore/jit/JITPropertyAccess.cpp: In static member function &apos;static bool JSC::JIT::isDirectPutById(JSC::StructureStubInfo*)&apos;:
&gt; &gt; ../../../../Source/JavaScriptCore/jit/JITPropertyAccess.cpp:1160: error: &apos;readCallTarget&apos; is not a member of &apos;JSC::MacroAssembler&apos;
&gt; 
&gt; ARMv6 or ARMv7?

Proposed patch for ARMv6 here: https://bugs.webkit.org/show_bug.cgi?id=73413</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>117075</attachid>
            <date>2011-11-29 17:04:41 -0800</date>
            <delta_ts>2011-11-30 00:45:35 -0800</delta_ts>
            <desc>the patch</desc>
            <filename>fixisdirect_patch_1.diff</filename>
            <type>text/plain</type>
            <size>11982</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTAxNDM2KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM1IEBA
CisyMDExLTExLTI5ICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
UmVzZXR0aW5nIGEgcHV0X2J5X2lkIGlubGluZSBjYWNoZSBzaG91bGQgcHJlc2VydmUgdGhlICJp
c0RpcmVjdCIgYml0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD03MzM3NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAgICAg
ICAKKyAgICAgICAgRm9yIHRoZSByZXBsYWNlIGNhc2UsIHdlIGNhbiBmaW5kIG91dCBpZiBpdCB3
YXMgZGlyZWN0IGJ5IGxvb2tpbmcgYXQgdGhlCisgICAgICAgIHNsb3cgY2FsbC4gRm9yIHRoZSB0
cmFuc2l0aW9uIGNhc2UsIHdlIGV4cGxpY2l0bHkgcmVtZW1iZXIgaWYgaXQgd2FzCisgICAgICAg
IGRpcmVjdC4KKworICAgICAgICAqIGJ5dGVjb2RlL0NvZGVCbG9jay5jcHA6CisgICAgICAgIChK
U0M6OnByaW50U3RydWN0dXJlU3R1YkluZm8pOgorICAgICAgICAqIGJ5dGVjb2RlL1N0cnVjdHVy
ZVN0dWJJbmZvLmNwcDoKKyAgICAgICAgKEpTQzo6U3RydWN0dXJlU3R1YkluZm86OmRlcmVmKToK
KyAgICAgICAgKEpTQzo6U3RydWN0dXJlU3R1YkluZm86OnZpc2l0V2Vha1JlZmVyZW5jZXMpOgor
ICAgICAgICAqIGJ5dGVjb2RlL1N0cnVjdHVyZVN0dWJJbmZvLmg6CisgICAgICAgIChKU0M6Omlz
UHV0QnlJZEFjY2Vzcyk6CisgICAgICAgIChKU0M6OlN0cnVjdHVyZVN0dWJJbmZvOjppbml0UHV0
QnlJZFRyYW5zaXRpb24pOgorICAgICAgICAqIGRmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHA6Cisg
ICAgICAgIChKU0M6OkRGRzo6Qnl0ZUNvZGVQYXJzZXI6OnBhcnNlQmxvY2spOgorICAgICAgICAq
IGRmZy9ERkdSZXBhdGNoLmNwcDoKKyAgICAgICAgKEpTQzo6REZHOjp0cnlDYWNoZVB1dEJ5SUQp
OgorICAgICAgICAqIGppdC9KSVQuaDoKKyAgICAgICAgKiBqaXQvSklUUHJvcGVydHlBY2Nlc3Mu
Y3BwOgorICAgICAgICAoSlNDOjpKSVQ6OnJlc2V0UGF0Y2hQdXRCeUlkKToKKyAgICAgICAgKEpT
Qzo6SklUOjppc0RpcmVjdFB1dEJ5SWQpOgorICAgICAgICAqIGppdC9KSVRQcm9wZXJ0eUFjY2Vz
czMyXzY0LmNwcDoKKyAgICAgICAgKEpTQzo6SklUOjpyZXNldFBhdGNoUHV0QnlJZCk6CisgICAg
ICAgICogaml0L0pJVFN0dWJzLmNwcDoKKyAgICAgICAgKEpTQzo6SklUVGh1bmtzOjp0cnlDYWNo
ZVB1dEJ5SUQpOgorCiAyMDExLTExLTI5ICBPbGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+
CiAKICAgICAgICAgQWxsb3cgV2ViQ29yZSB0byBkZXNjcmliZSB0eXBlZCBhcnJheXMgdG8gSlND
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAko
cmV2aXNpb24gMTAwODg0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVC
bG9jay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1Nyw3ICsyNTcsOCBAQCBzdGF0aWMgdm9pZCBw
cmludFN0cnVjdHVyZVN0dWJJbmZvKGNvbnN0CiAgICAgY2FzZSBhY2Nlc3NfZ2V0X2J5X2lkX3By
b3RvX2xpc3Q6CiAgICAgICAgIHByaW50ZigiICBbJTRkXSAlczogJXMgKCVkKVxuIiwgaW5zdHJ1
Y3Rpb25PZmZzZXQsICJvcF9nZXRfYnlfaWRfcHJvdG9fbGlzdCIsIHBvaW50ZXJUb1NvdXJjZVN0
cmluZyhzdHViSW5mby51LmdldEJ5SWRQcm90b0xpc3Quc3RydWN0dXJlTGlzdCkudXRmOCgpLmRh
dGEoKSwgc3R1YkluZm8udS5nZXRCeUlkUHJvdG9MaXN0Lmxpc3RTaXplKTsKICAgICAgICAgcmV0
dXJuOwotICAgIGNhc2UgYWNjZXNzX3B1dF9ieV9pZF90cmFuc2l0aW9uOgorICAgIGNhc2UgYWNj
ZXNzX3B1dF9ieV9pZF90cmFuc2l0aW9uX25vcm1hbDoKKyAgICBjYXNlIGFjY2Vzc19wdXRfYnlf
aWRfdHJhbnNpdGlvbl9kaXJlY3Q6CiAgICAgICAgIHByaW50ZigiICBbJTRkXSAlczogJXMsICVz
LCAlc1xuIiwgaW5zdHJ1Y3Rpb25PZmZzZXQsICJwdXRfYnlfaWRfdHJhbnNpdGlvbiIsIHBvaW50
ZXJUb1NvdXJjZVN0cmluZyhzdHViSW5mby51LnB1dEJ5SWRUcmFuc2l0aW9uLnByZXZpb3VzU3Ry
dWN0dXJlKS51dGY4KCkuZGF0YSgpLCBwb2ludGVyVG9Tb3VyY2VTdHJpbmcoc3R1YkluZm8udS5w
dXRCeUlkVHJhbnNpdGlvbi5zdHJ1Y3R1cmUpLnV0ZjgoKS5kYXRhKCksIHBvaW50ZXJUb1NvdXJj
ZVN0cmluZyhzdHViSW5mby51LnB1dEJ5SWRUcmFuc2l0aW9uLmNoYWluKS51dGY4KCkuZGF0YSgp
KTsKICAgICAgICAgcmV0dXJuOwogICAgIGNhc2UgYWNjZXNzX3B1dF9ieV9pZF9yZXBsYWNlOgpJ
bmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1N0cnVjdHVyZVN0dWJJbmZvLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvU3RydWN0dXJl
U3R1YkluZm8uY3BwCShyZXZpc2lvbiAxMDA4ODQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
Ynl0ZWNvZGUvU3RydWN0dXJlU3R1YkluZm8uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OCw3ICs0
OCw4IEBAIHZvaWQgU3RydWN0dXJlU3R1YkluZm86OmRlcmVmKCkKICAgICBjYXNlIGFjY2Vzc19n
ZXRfYnlfaWRfc2VsZjoKICAgICBjYXNlIGFjY2Vzc19nZXRfYnlfaWRfcHJvdG86CiAgICAgY2Fz
ZSBhY2Nlc3NfZ2V0X2J5X2lkX2NoYWluOgotICAgIGNhc2UgYWNjZXNzX3B1dF9ieV9pZF90cmFu
c2l0aW9uOgorICAgIGNhc2UgYWNjZXNzX3B1dF9ieV9pZF90cmFuc2l0aW9uX25vcm1hbDoKKyAg
ICBjYXNlIGFjY2Vzc19wdXRfYnlfaWRfdHJhbnNpdGlvbl9kaXJlY3Q6CiAgICAgY2FzZSBhY2Nl
c3NfcHV0X2J5X2lkX3JlcGxhY2U6CiAgICAgY2FzZSBhY2Nlc3NfdW5zZXQ6CiAgICAgY2FzZSBh
Y2Nlc3NfZ2V0X2J5X2lkX2dlbmVyaWM6CkBAIC05NSw3ICs5Niw4IEBAIGJvb2wgU3RydWN0dXJl
U3R1YkluZm86OnZpc2l0V2Vha1JlZmVyZW4KICAgICAgICAgfQogICAgICAgICBicmVhazsKICAg
ICB9Ci0gICAgY2FzZSBhY2Nlc3NfcHV0X2J5X2lkX3RyYW5zaXRpb246CisgICAgY2FzZSBhY2Nl
c3NfcHV0X2J5X2lkX3RyYW5zaXRpb25fbm9ybWFsOgorICAgIGNhc2UgYWNjZXNzX3B1dF9ieV9p
ZF90cmFuc2l0aW9uX2RpcmVjdDoKICAgICAgICAgaWYgKCFIZWFwOjppc01hcmtlZCh1LnB1dEJ5
SWRUcmFuc2l0aW9uLnByZXZpb3VzU3RydWN0dXJlLmdldCgpKQogICAgICAgICAgICAgfHwgIUhl
YXA6OmlzTWFya2VkKHUucHV0QnlJZFRyYW5zaXRpb24uc3RydWN0dXJlLmdldCgpKQogICAgICAg
ICAgICAgfHwgIUhlYXA6OmlzTWFya2VkKHUucHV0QnlJZFRyYW5zaXRpb24uY2hhaW4uZ2V0KCkp
KQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1N0cnVjdHVyZVN0dWJJbmZv
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL1N0cnVjdHVy
ZVN0dWJJbmZvLmgJKHJldmlzaW9uIDEwMDg4NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9i
eXRlY29kZS9TdHJ1Y3R1cmVTdHViSW5mby5oCSh3b3JraW5nIGNvcHkpCkBAIC00MSw3ICs0MSw4
IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICBhY2Nlc3NfZ2V0X2J5X2lkX2NoYWluLAogICAg
ICAgICBhY2Nlc3NfZ2V0X2J5X2lkX3NlbGZfbGlzdCwKICAgICAgICAgYWNjZXNzX2dldF9ieV9p
ZF9wcm90b19saXN0LAotICAgICAgICBhY2Nlc3NfcHV0X2J5X2lkX3RyYW5zaXRpb24sCisgICAg
ICAgIGFjY2Vzc19wdXRfYnlfaWRfdHJhbnNpdGlvbl9ub3JtYWwsCisgICAgICAgIGFjY2Vzc19w
dXRfYnlfaWRfdHJhbnNpdGlvbl9kaXJlY3QsCiAgICAgICAgIGFjY2Vzc19wdXRfYnlfaWRfcmVw
bGFjZSwKICAgICAgICAgYWNjZXNzX3Vuc2V0LAogICAgICAgICBhY2Nlc3NfZ2V0X2J5X2lkX2dl
bmVyaWMsCkBAIC03MCw3ICs3MSw4IEBAIG5hbWVzcGFjZSBKU0MgewogICAgIGlubGluZSBib29s
IGlzUHV0QnlJZEFjY2VzcyhBY2Nlc3NUeXBlIGFjY2Vzc1R5cGUpCiAgICAgewogICAgICAgICBz
d2l0Y2ggKGFjY2Vzc1R5cGUpIHsKLSAgICAgICAgY2FzZSBhY2Nlc3NfcHV0X2J5X2lkX3RyYW5z
aXRpb246CisgICAgICAgIGNhc2UgYWNjZXNzX3B1dF9ieV9pZF90cmFuc2l0aW9uX25vcm1hbDoK
KyAgICAgICAgY2FzZSBhY2Nlc3NfcHV0X2J5X2lkX3RyYW5zaXRpb25fZGlyZWN0OgogICAgICAg
ICBjYXNlIGFjY2Vzc19wdXRfYnlfaWRfcmVwbGFjZToKICAgICAgICAgY2FzZSBhY2Nlc3NfcHV0
X2J5X2lkX2dlbmVyaWM6CiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKQEAgLTEyNyw5ICsxMjks
MTIgQEAgbmFtZXNwYWNlIEpTQyB7CiAKICAgICAgICAgLy8gUHV0QnlJZCoKIAotICAgICAgICB2
b2lkIGluaXRQdXRCeUlkVHJhbnNpdGlvbihKU0dsb2JhbERhdGEmIGdsb2JhbERhdGEsIEpTQ2Vs
bCogb3duZXIsIFN0cnVjdHVyZSogcHJldmlvdXNTdHJ1Y3R1cmUsIFN0cnVjdHVyZSogc3RydWN0
dXJlLCBTdHJ1Y3R1cmVDaGFpbiogY2hhaW4pCisgICAgICAgIHZvaWQgaW5pdFB1dEJ5SWRUcmFu
c2l0aW9uKEpTR2xvYmFsRGF0YSYgZ2xvYmFsRGF0YSwgSlNDZWxsKiBvd25lciwgU3RydWN0dXJl
KiBwcmV2aW91c1N0cnVjdHVyZSwgU3RydWN0dXJlKiBzdHJ1Y3R1cmUsIFN0cnVjdHVyZUNoYWlu
KiBjaGFpbiwgYm9vbCBpc0RpcmVjdCkKICAgICAgICAgewotICAgICAgICAgICAgYWNjZXNzVHlw
ZSA9IGFjY2Vzc19wdXRfYnlfaWRfdHJhbnNpdGlvbjsKKyAgICAgICAgICAgIGlmIChpc0RpcmVj
dCkKKyAgICAgICAgICAgICAgICBhY2Nlc3NUeXBlID0gYWNjZXNzX3B1dF9ieV9pZF90cmFuc2l0
aW9uX2RpcmVjdDsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICBhY2Nlc3NUeXBl
ID0gYWNjZXNzX3B1dF9ieV9pZF90cmFuc2l0aW9uX25vcm1hbDsKIAogICAgICAgICAgICAgdS5w
dXRCeUlkVHJhbnNpdGlvbi5wcmV2aW91c1N0cnVjdHVyZS5zZXQoZ2xvYmFsRGF0YSwgb3duZXIs
IHByZXZpb3VzU3RydWN0dXJlKTsKICAgICAgICAgICAgIHUucHV0QnlJZFRyYW5zaXRpb24uc3Ry
dWN0dXJlLnNldChnbG9iYWxEYXRhLCBvd25lciwgc3RydWN0dXJlKTsKSW5kZXg6IFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQnl0ZUNvZGVQYXJzZXIuY3BwCShyZXZpc2lvbiAx
MDA4ODQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMTc5OSw3ICsxNzk5LDggQEAgYm9vbCBCeXRlQ29kZVBhcnNl
cjo6cGFyc2VCbG9jayh1bnNpZ25lZAogICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAg
ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgIAotICAgICAgICAgICAgICAgIGNhc2Ug
YWNjZXNzX3B1dF9ieV9pZF90cmFuc2l0aW9uOiB7CisgICAgICAgICAgICAgICAgY2FzZSBhY2Nl
c3NfcHV0X2J5X2lkX3RyYW5zaXRpb25fbm9ybWFsOgorICAgICAgICAgICAgICAgIGNhc2UgYWNj
ZXNzX3B1dF9ieV9pZF90cmFuc2l0aW9uX2RpcmVjdDogewogICAgICAgICAgICAgICAgICAgICBT
dHJ1Y3R1cmUqIHByZXZpb3VzU3RydWN0dXJlID0gc3R1YkluZm8udS5wdXRCeUlkVHJhbnNpdGlv
bi5wcmV2aW91c1N0cnVjdHVyZS5nZXQoKTsKICAgICAgICAgICAgICAgICAgICAgU3RydWN0dXJl
KiBuZXdTdHJ1Y3R1cmUgPSBzdHViSW5mby51LnB1dEJ5SWRUcmFuc2l0aW9uLnN0cnVjdHVyZS5n
ZXQoKTsKICAgICAgICAgICAgICAgICAgICAgCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZGZnL0RGR1JlcGF0Y2guY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9k
ZmcvREZHUmVwYXRjaC5jcHAJKHJldmlzaW9uIDEwMDg4NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZmcvREZHUmVwYXRjaC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTYwOCw3ICs2MDgsNyBA
QCBzdGF0aWMgYm9vbCB0cnlDYWNoZVB1dEJ5SUQoRXhlY1N0YXRlKiBlCiAgICAgICAgICAgICBy
ZXBhdGNoQnVmZmVyLnJlbGluayhzdHViSW5mby5jYWxsUmV0dXJuTG9jYXRpb24uanVtcEF0T2Zm
c2V0KHN0dWJJbmZvLmRlbHRhQ2FsbFRvU3RydWN0Q2hlY2spLCBDb2RlTG9jYXRpb25MYWJlbChz
dHViSW5mby5zdHViUm91dGluZS5jb2RlKCkpKTsKICAgICAgICAgICAgIHJlcGF0Y2hCdWZmZXIu
cmVsaW5rKHN0dWJJbmZvLmNhbGxSZXR1cm5Mb2NhdGlvbiwgYXBwcm9wcmlhdGVQdXRCeUlkRnVu
Y3Rpb24oc2xvdCwgcHV0S2luZCkpOwogICAgICAgICAgICAgCi0gICAgICAgICAgICBzdHViSW5m
by5pbml0UHV0QnlJZFRyYW5zaXRpb24oKmdsb2JhbERhdGEsIGNvZGVCbG9jay0+b3duZXJFeGVj
dXRhYmxlKCksIG9sZFN0cnVjdHVyZSwgc3RydWN0dXJlLCBwcm90b3R5cGVDaGFpbik7CisgICAg
ICAgICAgICBzdHViSW5mby5pbml0UHV0QnlJZFRyYW5zaXRpb24oKmdsb2JhbERhdGEsIGNvZGVC
bG9jay0+b3duZXJFeGVjdXRhYmxlKCksIG9sZFN0cnVjdHVyZSwgc3RydWN0dXJlLCBwcm90b3R5
cGVDaGFpbiwgcHV0S2luZCA9PSBEaXJlY3QpOwogICAgICAgICAgICAgCiAgICAgICAgICAgICBy
ZXR1cm4gdHJ1ZTsKICAgICAgICAgfQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVC5oCShyZXZp
c2lvbiAxMDA4ODQpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVC5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yOTgsNiArMjk4LDggQEAgbmFtZXNwYWNlIEpTQyB7CiAgICAgICAgIENvZGVS
ZWYgcHJpdmF0ZUNvbXBpbGVDVElOYXRpdmVDYWxsKEpTR2xvYmFsRGF0YSosIE5hdGl2ZUZ1bmN0
aW9uKTsKICAgICAgICAgdm9pZCBwcml2YXRlQ29tcGlsZVBhdGNoR2V0QXJyYXlMZW5ndGgoUmV0
dXJuQWRkcmVzc1B0ciByZXR1cm5BZGRyZXNzKTsKIAorICAgICAgICBzdGF0aWMgYm9vbCBpc0Rp
cmVjdFB1dEJ5SWQoU3RydWN0dXJlU3R1YkluZm8qKTsKKwogICAgICAgICB2b2lkIGFkZFNsb3dD
YXNlKEp1bXApOwogICAgICAgICB2b2lkIGFkZFNsb3dDYXNlKEp1bXBMaXN0KTsKICAgICAgICAg
dm9pZCBhZGRTbG93Q2FzZSgpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRQ
cm9wZXJ0eUFjY2VzczMyXzY0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvaml0L0pJVFByb3BlcnR5QWNjZXNzMzJfNjQuY3BwCShyZXZpc2lvbiAxMDA4ODQpCisrKyBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVFByb3BlcnR5QWNjZXNzMzJfNjQuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMTE4LDcgKzExMTgsMTAgQEAgdm9pZCBKSVQ6OnJlc2V0UGF0Y2hHZXRC
eUlkKFJlcGF0Y2hCdWZmZQogCiB2b2lkIEpJVDo6cmVzZXRQYXRjaFB1dEJ5SWQoUmVwYXRjaEJ1
ZmZlciYgcmVwYXRjaEJ1ZmZlciwgU3RydWN0dXJlU3R1YkluZm8qIHN0dWJJbmZvKQogewotICAg
IHJlcGF0Y2hCdWZmZXIucmVsaW5rKHN0dWJJbmZvLT5jYWxsUmV0dXJuTG9jYXRpb24sIGN0aV9v
cF9wdXRfYnlfaWQpOworICAgIGlmIChpc0RpcmVjdFB1dEJ5SWQoc3R1YkluZm8pKQorICAgICAg
ICByZXBhdGNoQnVmZmVyLnJlbGluayhzdHViSW5mby0+Y2FsbFJldHVybkxvY2F0aW9uLCBjdGlf
b3BfcHV0X2J5X2lkX2RpcmVjdCk7CisgICAgZWxzZQorICAgICAgICByZXBhdGNoQnVmZmVyLnJl
bGluayhzdHViSW5mby0+Y2FsbFJldHVybkxvY2F0aW9uLCBjdGlfb3BfcHV0X2J5X2lkKTsKICAg
ICByZXBhdGNoQnVmZmVyLnJlcGF0Y2goc3R1YkluZm8tPmhvdFBhdGhCZWdpbi5kYXRhTGFiZWxQ
dHJBdE9mZnNldChwYXRjaE9mZnNldFB1dEJ5SWRTdHJ1Y3R1cmUpLCByZWludGVycHJldF9jYXN0
PHZvaWQqPigtMSkpOwogICAgIHJlcGF0Y2hCdWZmZXIucmVwYXRjaChzdHViSW5mby0+aG90UGF0
aEJlZ2luLmRhdGFMYWJlbENvbXBhY3RBdE9mZnNldChwYXRjaE9mZnNldFB1dEJ5SWRQcm9wZXJ0
eU1hcE9mZnNldDEpLCAwKTsKICAgICByZXBhdGNoQnVmZmVyLnJlcGF0Y2goc3R1YkluZm8tPmhv
dFBhdGhCZWdpbi5kYXRhTGFiZWxDb21wYWN0QXRPZmZzZXQocGF0Y2hPZmZzZXRQdXRCeUlkUHJv
cGVydHlNYXBPZmZzZXQyKSwgMCk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJ
VFByb3BlcnR5QWNjZXNzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
aml0L0pJVFByb3BlcnR5QWNjZXNzLmNwcAkocmV2aXNpb24gMTAwODg0KQorKysgU291cmNlL0ph
dmFTY3JpcHRDb3JlL2ppdC9KSVRQcm9wZXJ0eUFjY2Vzcy5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTEwNTQsNyArMTA1NCwxMCBAQCB2b2lkIEpJVDo6cmVzZXRQYXRjaEdldEJ5SWQoUmVwYXRjaEJ1
ZmZlCiAKIHZvaWQgSklUOjpyZXNldFBhdGNoUHV0QnlJZChSZXBhdGNoQnVmZmVyJiByZXBhdGNo
QnVmZmVyLCBTdHJ1Y3R1cmVTdHViSW5mbyogc3R1YkluZm8pCiB7Ci0gICAgcmVwYXRjaEJ1ZmZl
ci5yZWxpbmsoc3R1YkluZm8tPmNhbGxSZXR1cm5Mb2NhdGlvbiwgY3RpX29wX3B1dF9ieV9pZCk7
CisgICAgaWYgKGlzRGlyZWN0UHV0QnlJZChzdHViSW5mbykpCisgICAgICAgIHJlcGF0Y2hCdWZm
ZXIucmVsaW5rKHN0dWJJbmZvLT5jYWxsUmV0dXJuTG9jYXRpb24sIGN0aV9vcF9wdXRfYnlfaWRf
ZGlyZWN0KTsKKyAgICBlbHNlCisgICAgICAgIHJlcGF0Y2hCdWZmZXIucmVsaW5rKHN0dWJJbmZv
LT5jYWxsUmV0dXJuTG9jYXRpb24sIGN0aV9vcF9wdXRfYnlfaWQpOwogICAgIHJlcGF0Y2hCdWZm
ZXIucmVwYXRjaChzdHViSW5mby0+aG90UGF0aEJlZ2luLmRhdGFMYWJlbFB0ckF0T2Zmc2V0KHBh
dGNoT2Zmc2V0UHV0QnlJZFN0cnVjdHVyZSksIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KC0xKSk7
CiAgICAgcmVwYXRjaEJ1ZmZlci5yZXBhdGNoKHN0dWJJbmZvLT5ob3RQYXRoQmVnaW4uZGF0YUxh
YmVsQ29tcGFjdEF0T2Zmc2V0KHBhdGNoT2Zmc2V0UHV0QnlJZFByb3BlcnR5TWFwT2Zmc2V0KSwg
MCk7CiB9CkBAIC0xMTQ1LDYgKzExNDgsMzEgQEAgdm9pZCBKSVQ6OnBhdGNoTWV0aG9kQ2FsbFBy
b3RvKEpTR2xvYmFsRAogICAgIHJlcGF0Y2hCdWZmZXIucmVsaW5rQ2FsbGVyVG9GdW5jdGlvbihy
ZXR1cm5BZGRyZXNzLCBGdW5jdGlvblB0cihjdGlfb3BfZ2V0X2J5X2lkX21ldGhvZF9jaGVja191
cGRhdGUpKTsKIH0KIAorYm9vbCBKSVQ6OmlzRGlyZWN0UHV0QnlJZChTdHJ1Y3R1cmVTdHViSW5m
byogc3R1YkluZm8pCit7CisgICAgc3dpdGNoIChzdHViSW5mby0+YWNjZXNzVHlwZSkgeworICAg
IGNhc2UgYWNjZXNzX3B1dF9ieV9pZF90cmFuc2l0aW9uX25vcm1hbDoKKyAgICAgICAgcmV0dXJu
IGZhbHNlOworICAgIGNhc2UgYWNjZXNzX3B1dF9ieV9pZF90cmFuc2l0aW9uX2RpcmVjdDoKKyAg
ICAgICAgcmV0dXJuIHRydWU7CisgICAgY2FzZSBhY2Nlc3NfcHV0X2J5X2lkX3JlcGxhY2U6Cisg
ICAgY2FzZSBhY2Nlc3NfcHV0X2J5X2lkX2dlbmVyaWM6IHsKKyAgICAgICAgdm9pZCAqb2xkQ2Fs
bCA9IE1hY3JvQXNzZW1ibGVyOjpyZWFkQ2FsbFRhcmdldChzdHViSW5mby0+Y2FsbFJldHVybkxv
Y2F0aW9uKS5leGVjdXRhYmxlQWRkcmVzcygpOworICAgICAgICBpZiAob2xkQ2FsbCA9PSBiaXR3
aXNlX2Nhc3Q8dm9pZCo+KGN0aV9vcF9wdXRfYnlfaWRfZGlyZWN0KQorICAgICAgICAgICAgfHwg
b2xkQ2FsbCA9PSBiaXR3aXNlX2Nhc3Q8dm9pZCo+KGN0aV9vcF9wdXRfYnlfaWRfZGlyZWN0X2dl
bmVyaWMpCisgICAgICAgICAgICB8fCBvbGRDYWxsID09IGJpdHdpc2VfY2FzdDx2b2lkKj4oY3Rp
X29wX3B1dF9ieV9pZF9kaXJlY3RfZmFpbCkpCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAg
ICAgICAgQVNTRVJUKG9sZENhbGwgPT0gYml0d2lzZV9jYXN0PHZvaWQqPihjdGlfb3BfcHV0X2J5
X2lkKQorICAgICAgICAgICAgICAgfHwgb2xkQ2FsbCA9PSBiaXR3aXNlX2Nhc3Q8dm9pZCo+KGN0
aV9vcF9wdXRfYnlfaWRfZ2VuZXJpYykKKyAgICAgICAgICAgICAgIHx8IG9sZENhbGwgPT0gYml0
d2lzZV9jYXN0PHZvaWQqPihjdGlfb3BfcHV0X2J5X2lkX2ZhaWwpKTsKKyAgICAgICAgcmV0dXJu
IGZhbHNlOworICAgIH0KKyAgICBkZWZhdWx0OgorICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQo
KTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KK30KKwogfSAvLyBuYW1lc3BhY2UgSlND
CiAKICNlbmRpZiAvLyBFTkFCTEUoSklUKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2pp
dC9KSVRTdHVicy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVRTdHVicy5jcHAJKHJldmlzaW9uIDEwMDg4NCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9q
aXQvSklUU3R1YnMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC04NTIsNyArODUyLDcgQEAgTkVWRVJf
SU5MSU5FIHZvaWQgSklUVGh1bmtzOjp0cnlDYWNoZVB1dAogICAgICAgICBub3JtYWxpemVQcm90
b3R5cGVDaGFpbihjYWxsRnJhbWUsIGJhc2VDZWxsKTsKIAogICAgICAgICBTdHJ1Y3R1cmVDaGFp
biogcHJvdG90eXBlQ2hhaW4gPSBzdHJ1Y3R1cmUtPnByb3RvdHlwZUNoYWluKGNhbGxGcmFtZSk7
Ci0gICAgICAgIHN0dWJJbmZvLT5pbml0UHV0QnlJZFRyYW5zaXRpb24oY2FsbEZyYW1lLT5nbG9i
YWxEYXRhKCksIGNvZGVCbG9jay0+b3duZXJFeGVjdXRhYmxlKCksIHN0cnVjdHVyZS0+cHJldmlv
dXNJRCgpLCBzdHJ1Y3R1cmUsIHByb3RvdHlwZUNoYWluKTsKKyAgICAgICAgc3R1YkluZm8tPmlu
aXRQdXRCeUlkVHJhbnNpdGlvbihjYWxsRnJhbWUtPmdsb2JhbERhdGEoKSwgY29kZUJsb2NrLT5v
d25lckV4ZWN1dGFibGUoKSwgc3RydWN0dXJlLT5wcmV2aW91c0lEKCksIHN0cnVjdHVyZSwgcHJv
dG90eXBlQ2hhaW4sIGRpcmVjdCk7CiAgICAgICAgIEpJVDo6Y29tcGlsZVB1dEJ5SWRUcmFuc2l0
aW9uKGNhbGxGcmFtZS0+c2NvcGVDaGFpbigpLT5nbG9iYWxEYXRhLCBjb2RlQmxvY2ssIHN0dWJJ
bmZvLCBzdHJ1Y3R1cmUtPnByZXZpb3VzSUQoKSwgc3RydWN0dXJlLCBzbG90LmNhY2hlZE9mZnNl
dCgpLCBwcm90b3R5cGVDaGFpbiwgcmV0dXJuQWRkcmVzcywgZGlyZWN0KTsKICAgICAgICAgcmV0
dXJuOwogICAgIH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>