<?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>31070</bug_id>
          
          <creation_ts>2009-11-03 10:43:42 -0800</creation_ts>
          <short_desc>Crashes due to re-entry into WebCore from plug-in code during RenderWidget::destroy()</short_desc>
          <delta_ts>2009-11-03 11:08:43 -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>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</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>mitz</reporter>
          <assigned_to>mitz</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>160124</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2009-11-03 10:43:42 -0800</bug_when>
    <thetext>&lt;rdar://problem/7194735&gt;
Patch, including test cases, forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>160125</commentid>
    <comment_count>1</comment_count>
      <attachid>42396</attachid>
    <who name="">mitz</who>
    <bug_when>2009-11-03 10:44:46 -0800</bug_when>
    <thetext>Created attachment 42396
Defer changes to the widget hierarchy during attach(), detach() and recalcStyle()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>160131</commentid>
    <comment_count>2</comment_count>
      <attachid>42396</attachid>
    <who name="Beth Dakin">bdakin</who>
    <bug_when>2009-11-03 10:52:44 -0800</bug_when>
    <thetext>Comment on attachment 42396
Defer changes to the widget hierarchy during attach(), detach() and recalcStyle()

Eek! Thanks Dan!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>160134</commentid>
    <comment_count>3</comment_count>
    <who name="">mitz</who>
    <bug_when>2009-11-03 11:08:43 -0800</bug_when>
    <thetext>Fixed in &lt;http://trac.webkit.org/projects/webkit/changeset/50470&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>42396</attachid>
            <date>2009-11-03 10:44:46 -0800</date>
            <delta_ts>2009-11-03 10:52:44 -0800</delta_ts>
            <desc>Defer changes to the widget hierarchy during attach(), detach() and recalcStyle()</desc>
            <filename>7194735_r3.diff</filename>
            <type>text/plain</type>
            <size>15432</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1MDQ2NikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNTEgQEAKKzIwMDktMTEtMDMgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNv
bT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXgg
PHJkYXI6Ly9wcm9ibGVtLzcxOTQ3MzU+IENyYXNoZXMgYXQgUmVuZGVyVGV4dDo6UmVuZGVyVGV4
dCgpCisgICAgICAgIEZpeCA8cmRhcjovL3Byb2JsZW0vNjkzNzA4OT4gQ3Jhc2hlcyBhdCBSZW5k
ZXJXaWRnZXQ6OmRlc3Ryb3koKQorCisgICAgICAgIFRlc3RzOiBwbHVnaW5zL2F0dGFjaC1kdXJp
bmctZGVzdHJveS5odG1sCisgICAgICAgICAgICAgICBwbHVnaW5zL2Rlc3Ryb3ktcmVlbnRyeS5o
dG1sCisKKyAgICAgICAgVGhlc2UgY3Jhc2hlcyB3ZXJlIGNhdXNlZCBieSBwbHVnLWluIGNvZGUg
cnVubmluZyBkdXJpbmcgZGV0YWNoKCksCisgICAgICAgIGNhdXNpbmcgcmUtZW50cnkgaW50byBS
ZW5kZXJXaWRnZXQ6OmRlc3Ryb3koKSBpbiBvbmUgY2FzZSBhbmQgYSBjYWxsCisgICAgICAgIGlu
dG8gYXR0YWNoKCkgaW4gdGhlIG90aGVyLiBUaGUgZml4IGlzIHRvIHByZXZlbnQgcGx1Zy1pbiBj
b2RlIGZyb20KKyAgICAgICAgYmVpbmcgY2FsbGVkIGF0IGNlcnRhaW4gdW5zYWZlIHRpbWVzIChk
dXJpbmcgYXR0YWNoKCksIGRldGFjaCgpLCBhbmQKKyAgICAgICAgcmVjYWxjU3R5bGUoKSkgYnkg
ZGVmZXJyaW5nIGNoYW5nZXMgdG8gdGhlIHdpZGdldCBoaWVyYXJjaHkuCisKKyAgICAgICAgKiBk
b20vRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OnJlY2FsY1N0eWxl
KTogU3VzcGVuZCB3aWRnZXQgdXBkYXRlcyBkdXJpbmcgc3R5bGUKKyAgICAgICAgICAgIHJlY2Fs
Y3VsYXRpb24uCisKKyAgICAgICAgKiBkb20vRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpFbGVtZW50OjphdHRhY2gpOiBTdXNwZW5kIHdpZGdldCB1cGRhdGVzIGR1cmluZyBhdHRhY2go
KS4KKyAgICAgICAgKFdlYkNvcmU6OkVsZW1lbnQ6OmRldGFjaCk6IFN1c3BlbmQgd2lkZ2V0IHVw
ZGF0ZXMgZHVyaW5nIGRldGFjaCgpLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlcldpZGdl
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjp3aWRnZXROZXdQYXJlbnRNYXApOiBSZXR1cm5zIGEg
c3RhdGljIG1hcCBvZiBwZW5kaW5nIGNoYW5nZXMKKyAgICAgICAgIHRvIHRoZSB3aWRnZXQgaGll
cmFyY2h5LgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyV2lkZ2V0OjpzdXNwZW5kV2lkZ2V0VXBk
YXRlcyk6IEluY3JlbWVudHMgdGhlIHN1c3BlbmQKKyAgICAgICAgICAgIGNvdW50LgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyV2lkZ2V0OjpyZXN1bWVXaWRnZXRVcGRhdGVzKTogRGVjcmVtZW50
cyB0aGUgc3VzcGVuZAorICAgICAgICAgICAgY291bnQuIElmIHRoZSBjb3VudCBpcyBnb2luZyB0
byBiZSB6ZXJvLCB1cGRhdGVzIHRoZSB3aWRnZXQKKyAgICAgICAgICAgIGhpZXJhcmNoeSBieSBl
eGVjdXRpbmcgdGhlIHBlbmRpbmcgY2hhbmdlcyBzdG9yZWQgaW4gdGhlIG1hcC4KKyAgICAgICAg
KFdlYkNvcmU6Om1vdmVXaWRnZXRUb1BhcmVudFNvb24pOiBVcGRhdGVzIHRoZSB3aWRnZXQgaGll
cmFyY2h5CisgICAgICAgICAgICBpbW1lZGlhdGVseSBvciBtYWtlcyBvciB1cGRhdGVzIGFuIGVu
dHJ5IGluIHRoZSBtYXAsIGRlcGVuZGluZyBvbgorICAgICAgICAgICAgd2hldGhlciB1cGRhdGVz
IGFyZSBzdXNwZW5kZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJXaWRnZXQ6OmRlc3Ryb3kp
OiBSZW1vdmVkIGVhcmxpZXIgYmFuZGFpZCBmaXggZm9yCisgICAgICAgICAgICA8cmRhcjovL3By
b2JsZW0vNjkzNzA4OT4uCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJXaWRnZXQ6OnNldFdpZGdl
dEdlb21ldHJ5KTogQXNzZXJ0IHRoYXQgd2lkZ2V0IHVwZGF0ZXMKKyAgICAgICAgICAgIGFyZSBu
b3Qgc3VzcGVuZGVkLCBiZWNhdXNlIHRoaXMgZnVuY3Rpb24gdXBkYXRlcyB0aGUgd2lkZ2V04oCZ
cworICAgICAgICAgICAgYm91bmRzLCB3aGljaCBjYW4gcmVzdWx0IGluIGFyYml0cmFyeSBuYXRp
dmUgYW5kIEphdmFTY3JpcHQgY29kZQorICAgICAgICAgICAgZXhlY3V0aW9uLiBJIHRoaW5rIHRo
aXMgYXNzZXJ0aW9uIGlzIHRydWUgdGhhbmtzIHRvIHNvbWUgZGVmZXJyZWQtCisgICAgICAgICAg
ICB1cGRhdGUgbWVjaGFuaXNtcyB0aGF0IGhhdmUgYWxyZWFkeSBiZWVuIGRlcGxveWVkIGluIG90
aGVyIHBsYWNlcworICAgICAgICAgICAgaW4gdGhlIGNvZGUuCisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJXaWRnZXQ6OnNldFdpZGdldCk6IENhbGwgbW92ZVdpZGdldFRvUGFyZW50U29vbiBpbnN0
ZWFkCisgICAgICAgICAgICBvZiBjaGFuZ2luZyB0aGUgd2lkZ2V0IGhpZXJhcmNoeSBkaXJlY3Rs
eS4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyV2lkZ2V0Lmg6IERlY2xhcmVkIHN1c3BlbmRX
aWRnZXRVcGRhdGVzKCkgYW5kCisgICAgICAgICAgICByZXN1bWVXaWRnZXRVcGRhdGVzKCkuCisK
IDIwMDktMTEtMDIgIERhcmluIEFkbGVyICA8ZGFyaW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCkluZGV4OiBXZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCShyZXZpc2lvbiA1MDQ1NykK
KysrIFdlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTIzOCw2ICsx
MjM4LDcgQEAgdm9pZCBEb2N1bWVudDo6cmVjYWxjU3R5bGUoU3R5bGVDaGFuZ2UgYwogCiAgICAg
bV9pblN0eWxlUmVjYWxjID0gdHJ1ZTsKICAgICBzdXNwZW5kUG9zdEF0dGFjaENhbGxiYWNrcygp
OworICAgIFJlbmRlcldpZGdldDo6c3VzcGVuZFdpZGdldFVwZGF0ZXMoKTsKICAgICBpZiAodmll
dygpKQogICAgICAgICB2aWV3KCktPnBhdXNlU2NoZWR1bGVkRXZlbnRzKCk7CiAgICAgCkBAIC0x
MzAwLDYgKzEzMDEsNyBAQCBiYWlsX291dDoKIAogICAgIGlmICh2aWV3KCkpCiAgICAgICAgIHZp
ZXcoKS0+cmVzdW1lU2NoZWR1bGVkRXZlbnRzKCk7CisgICAgUmVuZGVyV2lkZ2V0OjpyZXN1bWVX
aWRnZXRVcGRhdGVzKCk7CiAgICAgcmVzdW1lUG9zdEF0dGFjaENhbGxiYWNrcygpOwogICAgIG1f
aW5TdHlsZVJlY2FsYyA9IGZhbHNlOwogCkluZGV4OiBXZWJDb3JlL2RvbS9FbGVtZW50LmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9FbGVtZW50LmNwcAkocmV2aXNpb24gNTA0NTcpCisr
KyBXZWJDb3JlL2RvbS9FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDcsNiArNDcsNyBA
QAogI2luY2x1ZGUgIk5vZGVSZW5kZXJTdHlsZS5oIgogI2luY2x1ZGUgIlBhZ2UuaCIKICNpbmNs
dWRlICJSZW5kZXJWaWV3LmgiCisjaW5jbHVkZSAiUmVuZGVyV2lkZ2V0LmgiCiAjaW5jbHVkZSAi
VGV4dEl0ZXJhdG9yLmgiCiAjaW5jbHVkZSAiWE1MTmFtZXMuaCIKIApAQCAtNzI3LDYgKzcyOCw3
IEBAIHZvaWQgRWxlbWVudDo6cmVtb3ZlZEZyb21Eb2N1bWVudCgpCiB2b2lkIEVsZW1lbnQ6OmF0
dGFjaCgpCiB7CiAgICAgc3VzcGVuZFBvc3RBdHRhY2hDYWxsYmFja3MoKTsKKyAgICBSZW5kZXJX
aWRnZXQ6OnN1c3BlbmRXaWRnZXRVcGRhdGVzKCk7CiAKICAgICBjcmVhdGVSZW5kZXJlcklmTmVl
ZGVkKCk7CiAgICAgQ29udGFpbmVyTm9kZTo6YXR0YWNoKCk7CkBAIC03MzksMTUgKzc0MSwyMCBA
QCB2b2lkIEVsZW1lbnQ6OmF0dGFjaCgpCiAgICAgICAgIH0KICAgICB9CiAKKyAgICBSZW5kZXJX
aWRnZXQ6OnJlc3VtZVdpZGdldFVwZGF0ZXMoKTsKICAgICByZXN1bWVQb3N0QXR0YWNoQ2FsbGJh
Y2tzKCk7CiB9CiAKIHZvaWQgRWxlbWVudDo6ZGV0YWNoKCkKIHsKKyAgICBSZW5kZXJXaWRnZXQ6
OnN1c3BlbmRXaWRnZXRVcGRhdGVzKCk7CisKICAgICBjYW5jZWxGb2N1c0FwcGVhcmFuY2VVcGRh
dGUoKTsKICAgICBpZiAoaGFzUmFyZURhdGEoKSkKICAgICAgICAgcmFyZURhdGEoKS0+cmVzZXRD
b21wdXRlZFN0eWxlKCk7CiAgICAgQ29udGFpbmVyTm9kZTo6ZGV0YWNoKCk7CisKKyAgICBSZW5k
ZXJXaWRnZXQ6OnJlc3VtZVdpZGdldFVwZGF0ZXMoKTsKIH0KIAogYm9vbCBFbGVtZW50Ojpwc2V1
ZG9TdHlsZUNhY2hlSXNJbnZhbGlkKGNvbnN0IFJlbmRlclN0eWxlKiBjdXJyZW50U3R5bGUsIFJl
bmRlclN0eWxlKiBuZXdTdHlsZSkKSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcldpZGdl
dC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmNwcAko
cmV2aXNpb24gNTA0NTcpCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJXaWRnZXQuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC00MCw2ICs0MCw1NSBAQCBzdGF0aWMgSGFzaE1hcDxjb25zdCBXaWRn
ZXQqLCBSZW5kZXJXaWRnCiAgICAgcmV0dXJuICpzdGF0aWNXaWRnZXRSZW5kZXJlck1hcDsKIH0K
IAorc3RhdGljIHNpemVfdCB3aWRnZXRVcGRhdGVTdXNwZW5kQ291bnQ7CisKK3R5cGVkZWYgSGFz
aE1hcDxSZWZQdHI8V2lkZ2V0PiwgRnJhbWVWaWV3Kj4gV2lkZ2V0VG9QYXJlbnRNYXA7CisKK3N0
YXRpYyBXaWRnZXRUb1BhcmVudE1hcCYgd2lkZ2V0TmV3UGFyZW50TWFwKCkKK3sKKyAgICBERUZJ
TkVfU1RBVElDX0xPQ0FMKFdpZGdldFRvUGFyZW50TWFwLCBtYXAsICgpKTsKKyAgICByZXR1cm4g
bWFwOworfQorCit2b2lkIFJlbmRlcldpZGdldDo6c3VzcGVuZFdpZGdldFVwZGF0ZXMoKQorewor
ICAgIHdpZGdldFVwZGF0ZVN1c3BlbmRDb3VudCsrOworfQorCit2b2lkIFJlbmRlcldpZGdldDo6
cmVzdW1lV2lkZ2V0VXBkYXRlcygpCit7CisgICAgQVNTRVJUKHdpZGdldFVwZGF0ZVN1c3BlbmRD
b3VudCk7CisgICAgaWYgKHdpZGdldFVwZGF0ZVN1c3BlbmRDb3VudCA9PSAxKSB7CisgICAgICAg
IFdpZGdldFRvUGFyZW50TWFwIG1hcCA9IHdpZGdldE5ld1BhcmVudE1hcCgpOworICAgICAgICB3
aWRnZXROZXdQYXJlbnRNYXAoKS5jbGVhcigpOworICAgICAgICBXaWRnZXRUb1BhcmVudE1hcDo6
aXRlcmF0b3IgZW5kID0gbWFwLmVuZCgpOworICAgICAgICBmb3IgKFdpZGdldFRvUGFyZW50TWFw
OjppdGVyYXRvciBpdCA9IG1hcC5iZWdpbigpOyBpdCAhPSBlbmQ7ICsraXQpIHsKKyAgICAgICAg
ICAgIFdpZGdldCogY2hpbGQgPSBpdC0+Zmlyc3QuZ2V0KCk7CisgICAgICAgICAgICBTY3JvbGxW
aWV3KiBjdXJyZW50UGFyZW50ID0gY2hpbGQtPnBhcmVudCgpOworICAgICAgICAgICAgRnJhbWVW
aWV3KiBuZXdQYXJlbnQgPSBpdC0+c2Vjb25kOworICAgICAgICAgICAgaWYgKG5ld1BhcmVudCAh
PSBjdXJyZW50UGFyZW50KSB7CisgICAgICAgICAgICAgICAgaWYgKGN1cnJlbnRQYXJlbnQpCisg
ICAgICAgICAgICAgICAgICAgIGN1cnJlbnRQYXJlbnQtPnJlbW92ZUNoaWxkKGNoaWxkKTsKKyAg
ICAgICAgICAgICAgICBpZiAobmV3UGFyZW50KQorICAgICAgICAgICAgICAgICAgICBuZXdQYXJl
bnQtPmFkZENoaWxkKGNoaWxkKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKyAg
ICB3aWRnZXRVcGRhdGVTdXNwZW5kQ291bnQtLTsKK30KKworc3RhdGljIHZvaWQgbW92ZVdpZGdl
dFRvUGFyZW50U29vbihXaWRnZXQqIGNoaWxkLCBGcmFtZVZpZXcqIHBhcmVudCkKK3sKKyAgICBp
ZiAoIXdpZGdldFVwZGF0ZVN1c3BlbmRDb3VudCkgeworICAgICAgICBpZiAocGFyZW50KQorICAg
ICAgICAgICAgcGFyZW50LT5hZGRDaGlsZChjaGlsZCk7CisgICAgICAgIGVsc2UKKyAgICAgICAg
ICAgIGNoaWxkLT5yZW1vdmVGcm9tUGFyZW50KCk7CisgICAgICAgIHJldHVybjsKKyAgICB9Cisg
ICAgd2lkZ2V0TmV3UGFyZW50TWFwKCkuc2V0KGNoaWxkLCBwYXJlbnQpOworfQorCiBSZW5kZXJX
aWRnZXQ6OlJlbmRlcldpZGdldChOb2RlKiBub2RlKQogICAgIDogUmVuZGVyUmVwbGFjZWQobm9k
ZSkKICAgICAsIG1fd2lkZ2V0KDApCkBAIC02MCwxNCArMTA5LDYgQEAgdm9pZCBSZW5kZXJXaWRn
ZXQ6OmRlc3Ryb3koKQogICAgIC8vIGJvdGggUmVuZGVyQm94OjpkZXN0cm95KCkgYW5kIFJlbmRl
ck9iamVjdDo6ZGVzdHJveSgpLgogICAgIC8vIEZpeCBvcmlnaW5hbGx5IG1hZGUgZm9yIDxyZGFy
Oi8vcHJvYmxlbS80MjI4ODE4Pi4KIAotICAgIC8vIDxyZGFyOi8vcHJvYmxlbS82OTM3MDg5PiBz
dWdnZXN0cyB0aGF0IG5vZGUoKSBjYW4gYmUgbnVsbCBieSB0aGUgdGltZSB3ZSBjYWxsIHJlbmRl
ckFyZW5hKCkKLSAgICAvLyBpbiB0aGUgZW5kIG9mIHRoaXMgZnVuY3Rpb24uIE9uZSB3YXkgdGhp
cyBtaWdodCBoYXBwZW4gaXMgaWYgdGhpcyBmdW5jdGlvbiB3YXMgaW52b2tlZCB0d2ljZQotICAg
IC8vIGluIGEgcm93LCBzbyBiYWlsIG91dCBhbmQgdHVybiBhIGNyYXNoIGludG8gYW4gYXNzZXJ0
aW9uIGZhaWx1cmUgaW4gZGVidWcgYnVpbGRzIGFuZCBhIGxlYWsKLSAgICAvLyBpbiByZWxlYXNl
IGJ1aWxkcy4KLSAgICBBU1NFUlQobm9kZSgpKTsKLSAgICBpZiAoIW5vZGUoKSkKLSAgICAgICAg
cmV0dXJuOwotCiAgICAgYW5pbWF0aW9uKCktPmNhbmNlbEFuaW1hdGlvbnModGhpcyk7CiAKICAg
ICBpZiAoUmVuZGVyVmlldyogdiA9IHZpZXcoKSkKQEAgLTk0LDE0ICsxMzUsNiBAQCB2b2lkIFJl
bmRlcldpZGdldDo6ZGVzdHJveSgpCiAgICAgICAgIGRlc3Ryb3lMYXllcigpOwogICAgIH0KIAot
ICAgIC8vIDxyZGFyOi8vcHJvYmxlbS82OTM3MDg5PiBzdWdnZXN0cyB0aGF0IG5vZGUoKSBjYW4g
YmUgbnVsbCBoZXJlLiBPbmUgd2F5IHRoaXMgbWlnaHQgaGFwcGVuIGlzCi0gICAgLy8gaWYgdGhp
cyBmdW5jdGlvbiB3YXMgcmUtZW50ZXJlZCAoYW5kIHRoZXJlZm9yZSB0aGUgbnVsbCBjaGVjayBh
dCB0aGUgYmVnaW5uaW5nIGRpZCBub3QgZmFpbCksCi0gICAgLy8gc28gYmFpbCBvdXQgYW5kIHR1
cm4gYSBjcmFzaCBpbnRvIGFuIGFzc2VydGlvbiBmYWlsdXJlIGluIGRlYnVnIGJ1aWxkcyBhbmQg
YSBsZWFrIGluIHJlbGVhc2UKLSAgICAvLyBidWlsZHMuCi0gICAgQVNTRVJUKG5vZGUoKSk7Ci0g
ICAgaWYgKCFub2RlKCkpCi0gICAgICAgIHJldHVybjsKLQogICAgIC8vIEdyYWIgdGhlIGFyZW5h
IGZyb20gbm9kZSgpLT5kb2N1bWVudCgpLT5yZW5kZXJBcmVuYSgpIGJlZm9yZSBjbGVhcmluZyB0
aGUgbm9kZSBwb2ludGVyLgogICAgIC8vIENsZWFyIHRoZSBub2RlIGJlZm9yZSBkZXJlZi1pbmcs
IGFzIHRoaXMgbWF5IGJlIGRlbGV0ZWQgd2hlbiBkZXJlZiBpcyBjYWxsZWQuCiAgICAgUmVuZGVy
QXJlbmEqIGFyZW5hID0gcmVuZGVyQXJlbmEoKTsKQEAgLTExNyw2ICsxNTAsNyBAQCBSZW5kZXJX
aWRnZXQ6On5SZW5kZXJXaWRnZXQoKQogCiBib29sIFJlbmRlcldpZGdldDo6c2V0V2lkZ2V0R2Vv
bWV0cnkoY29uc3QgSW50UmVjdCYgZnJhbWUpCiB7CisgICAgQVNTRVJUKCF3aWRnZXRVcGRhdGVT
dXNwZW5kQ291bnQpOwogICAgIGlmICghbm9kZSgpIHx8IG1fd2lkZ2V0LT5mcmFtZVJlY3QoKSA9
PSBmcmFtZSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCkBAIC0xMzIsNyArMTY2LDcgQEAgdm9p
ZCBSZW5kZXJXaWRnZXQ6OnNldFdpZGdldChQYXNzUmVmUHRyPAogICAgICAgICByZXR1cm47CiAK
ICAgICBpZiAobV93aWRnZXQpIHsKLSAgICAgICAgbV93aWRnZXQtPnJlbW92ZUZyb21QYXJlbnQo
KTsKKyAgICAgICAgbW92ZVdpZGdldFRvUGFyZW50U29vbihtX3dpZGdldC5nZXQoKSwgMCk7CiAg
ICAgICAgIHdpZGdldFJlbmRlcmVyTWFwKCkucmVtb3ZlKG1fd2lkZ2V0LmdldCgpKTsKICAgICAg
ICAgY2xlYXJXaWRnZXQoKTsKICAgICB9CkBAIC0xNTAsNyArMTg0LDcgQEAgdm9pZCBSZW5kZXJX
aWRnZXQ6OnNldFdpZGdldChQYXNzUmVmUHRyPAogICAgICAgICAgICAgZWxzZQogICAgICAgICAg
ICAgICAgIG1fd2lkZ2V0LT5zaG93KCk7CiAgICAgICAgIH0KLSAgICAgICAgbV9mcmFtZVZpZXct
PmFkZENoaWxkKG1fd2lkZ2V0LmdldCgpKTsKKyAgICAgICAgbW92ZVdpZGdldFRvUGFyZW50U29v
bihtX3dpZGdldC5nZXQoKSwgbV9mcmFtZVZpZXcpOwogICAgIH0KIH0KIApJbmRleDogV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyV2lkZ2V0LmgJKHJldmlzaW9uIDUwNDU3KQorKysgV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyV2lkZ2V0LmgJKHdvcmtpbmcgY29weSkKQEAgLTQyLDYgKzQyLDkgQEAgcHVibGljOgog
CiAgICAgdm9pZCBzaG93U3Vic3RpdHV0ZUltYWdlKFBhc3NSZWZQdHI8SW1hZ2U+KTsKIAorICAg
IHN0YXRpYyB2b2lkIHN1c3BlbmRXaWRnZXRVcGRhdGVzKCk7CisgICAgc3RhdGljIHZvaWQgcmVz
dW1lV2lkZ2V0VXBkYXRlcygpOworCiBwcm90ZWN0ZWQ6CiAgICAgUmVuZGVyV2lkZ2V0KE5vZGUq
KTsKIApJbmRleDogV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRv
b2xzL0NoYW5nZUxvZwkocmV2aXNpb24gNTA0NTkpCisrKyBXZWJLaXRUb29scy9DaGFuZ2VMb2cJ
KHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyMCBAQAorMjAwOS0xMS0wMyAgRGFuIEJlcm5zdGVp
biAgPG1pdHpAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEFkZGVkIGFuICdvbmRlc3Ryb3knIHBhcmFtZXRlciB0byB0aGUgdGVzdCBw
bHVnLWluLiBXaGVuIHRoZSBwbHVnLWluIGlzCisgICAgICAgIGRlc3Ryb3llZCwgaXQgZXhlY3V0
ZXMgdGhlIHZhbHVlIG9mIHRoZSAnb25kZXN0cm95JyBwYXJhbWV0ZXIgYXMgYQorICAgICAgICBz
Y3JpcHQuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9UZXN0TmV0c2NhcGVQbHVnSW4uc3Vi
cHJvai9QbHVnaW5PYmplY3QuY3BwOgorICAgICAgICAocGx1Z2luQWxsb2NhdGUpOiBJbml0aWFs
aXplIG9uRGVzdHJveS4KKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9UZXN0TmV0c2NhcGVQbHVn
SW4uc3VicHJvai9QbHVnaW5PYmplY3QuaDogRGVmaW5lCisgICAgICAgIG9uRGVzdHJveS4KKyAg
ICAgICAgKiBEdW1wUmVuZGVyVHJlZS9UZXN0TmV0c2NhcGVQbHVnSW4uc3VicHJvai9tYWluLmNw
cDoKKyAgICAgICAgKE5QUF9OZXcpOiBTZXQgb25EZXN0cm95IHRvIHRoZSB2YWx1ZSBvZiB0aGUg
J29uZGVzdHJveScgcGFyYW1ldGVyLCBpZgorICAgICAgICBzcGVjaWZpZWQuCisgICAgICAgIChO
UFBfRGVzdHJveSk6IEV4ZWN1dGUgdGhlIHZhbHVlIG9mICdvbmRlc3Ryb3knIGFzIGEgc2NyaXB0
LgorCiAyMDA5LTExLTAyICBKb2FubWFyaWUgRGlnZ3MgIDxqb2FubWFyaWUuZGlnZ3NAZ21haWwu
Y29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFhhbiBMb3Blei4KSW5kZXg6IFdlYktpdFRvb2xz
L0R1bXBSZW5kZXJUcmVlL1Rlc3ROZXRzY2FwZVBsdWdJbi5zdWJwcm9qL1BsdWdpbk9iamVjdC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE5ldHNjYXBl
UGx1Z0luLnN1YnByb2ovUGx1Z2luT2JqZWN0LmNwcAkocmV2aXNpb24gNTA0NTcpCisrKyBXZWJL
aXRUb29scy9EdW1wUmVuZGVyVHJlZS9UZXN0TmV0c2NhcGVQbHVnSW4uc3VicHJvai9QbHVnaW5P
YmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03MjEsNiArNzIxLDcgQEAgc3RhdGljIE5QT2Jq
ZWN0ICpwbHVnaW5BbGxvY2F0ZShOUFAgbnBwLAogICAgIG5ld0luc3RhbmNlLT5ldmVudExvZ2dp
bmcgPSBGQUxTRTsKICAgICBuZXdJbnN0YW5jZS0+b25TdHJlYW1Mb2FkID0gMDsKICAgICBuZXdJ
bnN0YW5jZS0+b25TdHJlYW1EZXN0cm95ID0gMDsKKyAgICBuZXdJbnN0YW5jZS0+b25EZXN0cm95
ID0gMDsKICAgICBuZXdJbnN0YW5jZS0+b25VUkxOb3RpZnkgPSAwOwogICAgIG5ld0luc3RhbmNl
LT5sb2dEZXN0cm95ID0gRkFMU0U7CiAgICAgbmV3SW5zdGFuY2UtPmxvZ1NldFdpbmRvdyA9IEZB
TFNFOwpJbmRleDogV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE5ldHNjYXBlUGx1Z0lu
LnN1YnByb2ovUGx1Z2luT2JqZWN0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMvRHVtcFJl
bmRlclRyZWUvVGVzdE5ldHNjYXBlUGx1Z0luLnN1YnByb2ovUGx1Z2luT2JqZWN0LmgJKHJldmlz
aW9uIDUwNDU3KQorKysgV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE5ldHNjYXBlUGx1
Z0luLnN1YnByb2ovUGx1Z2luT2JqZWN0LmgJKHdvcmtpbmcgY29weSkKQEAgLTQwLDYgKzQwLDcg
QEAgdHlwZWRlZiBzdHJ1Y3QgewogICAgIE5QU3RyZWFtKiBzdHJlYW07CiAgICAgY2hhciogb25T
dHJlYW1Mb2FkOwogICAgIGNoYXIqIG9uU3RyZWFtRGVzdHJveTsKKyAgICBjaGFyKiBvbkRlc3Ry
b3k7CiAgICAgY2hhciogb25VUkxOb3RpZnk7CiAgICAgY2hhciogZmlyc3RVcmw7CiAgICAgY2hh
ciogZmlyc3RIZWFkZXJzOwpJbmRleDogV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE5l
dHNjYXBlUGx1Z0luLnN1YnByb2ovbWFpbi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMv
RHVtcFJlbmRlclRyZWUvVGVzdE5ldHNjYXBlUGx1Z0luLnN1YnByb2ovbWFpbi5jcHAJKHJldmlz
aW9uIDUwNDU3KQorKysgV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvVGVzdE5ldHNjYXBlUGx1
Z0luLnN1YnByb2ovbWFpbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEwNSw2ICsxMDUsOCBAQCBO
UEVycm9yIE5QUF9OZXcoTlBNSU1FVHlwZSBwbHVnaW5UeXBlLCBOCiAgICAgICAgICAgICAgICAg
ICAgIHBsdWdpbkxvZyhpbnN0YW5jZSwgInNyYzogJXMiLCBhcmd2W2ldKTsKICAgICAgICAgfSBl
bHNlIGlmIChzdHJjYXNlY21wKGFyZ25baV0sICJjbGVhcmRvY3VtZW50ZHVyaW5nbmV3IikgPT0g
MCkKICAgICAgICAgICAgIGV4ZWN1dGVTY3JpcHQob2JqLCAiZG9jdW1lbnQuYm9keS5pbm5lckhU
TUwgPSAnJyIpOworICAgICAgICBlbHNlIGlmICghc3RyY2FzZWNtcChhcmduW2ldLCAib25kZXN0
cm95IikpCisgICAgICAgICAgICBvYmotPm9uRGVzdHJveSA9IHN0cmR1cChhcmd2W2ldKTsKICAg
ICB9CiAgICAgICAgIAogI2lmbmRlZiBOUF9OT19DQVJCT04KQEAgLTE0MCw2ICsxNDIsMTEgQEAg
TlBFcnJvciBOUFBfRGVzdHJveShOUFAgaW5zdGFuY2UsIE5QU2F2ZQogewogICAgIFBsdWdpbk9i
amVjdCogb2JqID0gc3RhdGljX2Nhc3Q8UGx1Z2luT2JqZWN0Kj4oaW5zdGFuY2UtPnBkYXRhKTsK
ICAgICBpZiAob2JqKSB7CisgICAgICAgIGlmIChvYmotPm9uRGVzdHJveSkgeworICAgICAgICAg
ICAgZXhlY3V0ZVNjcmlwdChvYmosIG9iai0+b25EZXN0cm95KTsKKyAgICAgICAgICAgIGZyZWUo
b2JqLT5vbkRlc3Ryb3kpOworICAgICAgICB9CisKICAgICAgICAgaWYgKG9iai0+b25TdHJlYW1M
b2FkKQogICAgICAgICAgICAgZnJlZShvYmotPm9uU3RyZWFtTG9hZCk7CiAKSW5kZXg6IExheW91
dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJl
dmlzaW9uIDUwNDY2KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMDktMTEtMDMgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNv
bT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0
IGZvciA8cmRhcjovL3Byb2JsZW0vNzE5NDczNT4gQ3Jhc2hlcyBhdCBSZW5kZXJUZXh0OjpSZW5k
ZXJUZXh0KCkKKyAgICAgICAgVGVzdCBmb3IgPHJkYXI6Ly9wcm9ibGVtLzY5MzcwODk+IENyYXNo
ZXMgYXQgUmVuZGVyV2lkZ2V0OjpkZXN0cm95KCkKKworICAgICAgICAqIHBsdWdpbnMvYXR0YWNo
LWR1cmluZy1kZXN0cm95LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogcGx1Z2lucy9h
dHRhY2gtZHVyaW5nLWRlc3Ryb3kuaHRtbDogQWRkZWQuCisgICAgICAgICogcGx1Z2lucy9kZXN0
cm95LXJlZW50cnktZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbHVnaW5zL2Rlc3Ry
b3ktcmVlbnRyeS5odG1sOiBBZGRlZC4KKwogMjAwOS0xMS0wMiAgRGFyaW4gQWRsZXIgIDxkYXJp
bkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFuIEJlcm5zdGVpbi4KSW5kZXg6
IExheW91dFRlc3RzL3BsdWdpbnMvYXR0YWNoLWR1cmluZy1kZXN0cm95LWV4cGVjdGVkLnR4dAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbHVnaW5zL2F0dGFjaC1kdXJpbmctZGVzdHJveS1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbHVnaW5zL2F0dGFjaC1k
dXJpbmctZGVzdHJveS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNiBAQAor
VGVzdCBmb3IgcmRhcjovL3Byb2JsZW0vNzE5NDczNSBDcmFzaGVzIGF0IFJlbmRlclRleHQ6OlJl
bmRlclRleHQoKS4KKworVGhpcyB0ZXN0IHNob3VsZCBub3QgY3Jhc2ggb3IgY2F1c2UgYW4gYXNz
ZXJ0aW9uIGZhaWx1cmUuCisKKworCkluZGV4OiBMYXlvdXRUZXN0cy9wbHVnaW5zL2F0dGFjaC1k
dXJpbmctZGVzdHJveS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsdWdpbnMvYXR0
YWNoLWR1cmluZy1kZXN0cm95Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbHVn
aW5zL2F0dGFjaC1kdXJpbmctZGVzdHJveS5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIx
IEBACis8cD4KKyAgICBUZXN0IGZvciA8aT48YSBocmVmPSJyZGFyOi8vcHJvYmxlbS83MTk0NzM1
Ij5yZGFyOi8vcHJvYmxlbS83MTk0NzM1PC9hPiBDcmFzaGVzIGF0IFJlbmRlclRleHQ6OlJlbmRl
clRleHQoKTwvaT4uCis8L3A+Cis8cD4KKyAgICBUaGlzIHRlc3Qgc2hvdWxkIG5vdCBjcmFzaCBv
ciBjYXVzZSBhbiBhc3NlcnRpb24gZmFpbHVyZS4KKzwvcD4KKzxlbWJlZCB0eXBlPSJhcHBsaWNh
dGlvbi94LXdlYmtpdC10ZXN0LW5ldHNjYXBlIiBvbmRlc3Ryb3k9ImRlc3Ryb3llZCgpIj4KKzxk
aXYgaWQ9InRhcmdldCI+PC9kaXY+Cis8c2NyaXB0PgorICAgIGZ1bmN0aW9uIGRlc3Ryb3llZCgp
CisgICAgeworICAgICAgICB2YXIgdGFyZ2V0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRh
cmdldCIpOworICAgICAgICB0YXJnZXQuaW5uZXJIVE1MID0gInRleHQiOworICAgIH0KKworICAg
IGlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgIGxheW91dFRlc3RDb250
cm9sbGVyLmR1bXBBc1RleHQoKTsKKworICAgIGRvY3VtZW50LmJvZHkub2Zmc2V0VG9wOworICAg
IGxvY2F0aW9uLmhyZWYgPSAiZGF0YTp0ZXh0L2h0bWwsVGVzdCBmb3IgcmRhcjovL3Byb2JsZW0v
NzE5NDczNSBQQVNTRUQuIjsKKzwvc2NyaXB0PgpJbmRleDogTGF5b3V0VGVzdHMvcGx1Z2lucy9k
ZXN0cm95LXJlZW50cnktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3Bs
dWdpbnMvZGVzdHJveS1yZWVudHJ5LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL3BsdWdpbnMvZGVzdHJveS1yZWVudHJ5LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkK
QEAgLTAsMCArMSw1IEBACitUZXN0IGZvciByZGFyOi8vcHJvYmxlbS82OTM3MDg5IENyYXNoZXMg
YXQgUmVuZGVyV2lkZ2V0OjpkZXN0cm95KCkuCisKK1RoaXMgdGVzdCBzaG91bGQgbm90IGNyYXNo
IG9yIGNhdXNlIGFuIGFzc2VydGlvbiBmYWlsdXJlLgorCisKSW5kZXg6IExheW91dFRlc3RzL3Bs
dWdpbnMvZGVzdHJveS1yZWVudHJ5Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGx1
Z2lucy9kZXN0cm95LXJlZW50cnkuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3Bs
dWdpbnMvZGVzdHJveS1yZWVudHJ5Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMjIgQEAK
KzxwPgorICAgIFRlc3QgZm9yIDxpPjxhIGhyZWY9InJkYXI6Ly9wcm9ibGVtLzY5MzcwODkiPnJk
YXI6Ly9wcm9ibGVtLzY5MzcwODk8L2E+IENyYXNoZXMgYXQgUmVuZGVyV2lkZ2V0OjpkZXN0cm95
KCk8L2k+LgorPC9wPgorPHA+CisgICAgVGhpcyB0ZXN0IHNob3VsZCBub3QgY3Jhc2ggb3IgY2F1
c2UgYW4gYXNzZXJ0aW9uIGZhaWx1cmUuCis8L3A+Cis8ZGl2IGlkPSJ0YXJnZXQiPgorICAgIDxl
bWJlZCB0eXBlPSJhcHBsaWNhdGlvbi94LXdlYmtpdC10ZXN0LW5ldHNjYXBlIiBvbmRlc3Ryb3k9
ImRlc3Ryb3llZCgpIj4KKzwvZGl2PgorPHNjcmlwdD4KKyAgICBmdW5jdGlvbiBkZXN0cm95ZWQo
KQorICAgIHsKKyAgICAgICAgdmFyIHRhcmdldCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0
YXJnZXQiKTsKKyAgICAgICAgdGFyZ2V0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGFyZ2V0KTsK
KyAgICB9CisKKyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgICAgICBs
YXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNUZXh0KCk7CisKKyAgICBkb2N1bWVudC5ib2R5Lm9m
ZnNldFRvcDsKKyAgICBsb2NhdGlvbi5ocmVmID0gImRhdGE6dGV4dC9odG1sLFRlc3QgZm9yIHJk
YXI6Ly9wcm9ibGVtLzY5MzcwODkgUEFTU0VELiI7Cis8L3NjcmlwdD4K
</data>
<flag name="review"
          id="23919"
          type_id="1"
          status="+"
          setter="bdakin"
    />
          </attachment>
      

    </bug>

</bugzilla>