<?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>27801</bug_id>
          
          <creation_ts>2009-07-29 04:27:02 -0700</creation_ts>
          <short_desc>[WML] Running WML tests in random order multiple times exposes subtle bugs</short_desc>
          <delta_ts>2009-07-29 06:20:03 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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>
          
          <blocked>20393</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Nikolas Zimmermann">zimmermann</reporter>
          <assigned_to name="Nikolas Zimmermann">zimmermann</assigned_to>
          <cc>manyoso</cc>
    
    <cc>staikos</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>135561</commentid>
    <comment_count>0</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2009-07-29 04:27:02 -0700</bug_when>
    <thetext>As the summary says running &quot;run-webkit-tests fast/wml http/tests/wml wml --random&quot; exposes some bug:
* fast/wml/err-multi-access.wml (related to bug 27721, can&apos;t be fixed at the moment, deck access control is broken) -&gt; creates different error positions upon consecutive runs (line 6, line 5, etc)

* wml/enter-first-card-with-events.html doesn&apos;t work properly on consecutive runs. We have to take special care of detecting the end of the test here -&gt; not resetting the page state was not a good idea, instead it hided a bug that we don&apos;t preserve the current history item on clearWMLPageHistory()

* Some assertions in removedFromDocument regarding parentNode() fire, upon GC collection at random spots. Don&apos;t ASSERT(parent()) there. It was superflous anyway, as we check the return value

Fixing the latter problem allows us to simplify WMLTestCase.js again and to run random order testing (almost only fast/wml/err-multi-access.wml left to fix there).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135564</commentid>
    <comment_count>1</comment_count>
      <attachid>33711</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2009-07-29 04:39:24 -0700</bug_when>
    <thetext>Created attachment 33711
Initial patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135570</commentid>
    <comment_count>2</comment_count>
      <attachid>33711</attachid>
    <who name="Adam Treat">manyoso</who>
    <bug_when>2009-07-29 06:19:37 -0700</bug_when>
    <thetext>Comment on attachment 33711
Initial patch

Talked it over with Niko in chat and showed me the backtrace of crashes caused by gc collect in middle of reload triggering the tear down with some elements with parent == 0.  Looks good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>135571</commentid>
    <comment_count>3</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2009-07-29 06:20:03 -0700</bug_when>
    <thetext>Landed in r46539.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>33711</attachid>
            <date>2009-07-29 04:39:24 -0700</date>
            <delta_ts>2009-07-29 06:19:36 -0700</delta_ts>
            <desc>Initial patch</desc>
            <filename>bug-27801-20090729133921.patch</filename>
            <type>text/plain</type>
            <size>12087</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NjUzNykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDAgQEAKKzIwMDktMDctMjkgIE5pa29sYXMgWmltbWVybWFubiAgPG5pa29sYXMu
emltbWVybWFubkB0b3JjaG1vYmlsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgW1dNTF0gUnVubmluZyBXTUwgdGVzdHMgaW4gcmFuZG9tIG9y
ZGVyIG11bHRpcGxlIHRpbWVzIGV4cG9zZXMgc3VidGxlIGJ1Z3MKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3ODAxCisKKyAgICAgICAgUmVtb3ZlIHN1
cGVyZmxvdXMgYXNzZXJ0aW9ucyByZWdhcmRpbmcgdGhlIHBhcmVudCBub2RlLiBVbmRlciBjZXJ0
YWluIGNpcmN1bXN0YW5jZXMKKyAgICAgICAgdGhlc2UgY2FuIGV2ZW4gZmlyZSAocmVsYXRlZCB0
byBnYXJiYWdlIGNvbGxlY3Rpb24gd2hpbGUgZGVzdHJ1Y3RpbmcpLiBGaXhlcyByYW5kb20gb3Jk
ZXIKKyAgICAgICAgV01MIHRlc3RzIChydW4td2Via2l0LXRlc3RzIGZhc3Qvd21sIHdtbCBodHRw
L3Rlc3RzL3dtbCBmYXN0L3dtbCAuLi4gLS1yYW5kb20pCisKKyAgICAgICAgVGhlIHdtbC9lbnRl
ci1maXJzdC1jYXJkLXdpdGgtZXZlbnRzLmh0bWwgdGVzdCByZWxpZWQgb24gYSBidWcgaW4gb3Vy
IGltcGxlbWVudGF0aW9uIG9mCisgICAgICAgIFdNTFBhZ2VTdGF0ZTo6cmVzZXQoKSAtIHRoZSBo
aXN0b3J5IHN0YWNrIHNob3VsZCBzdGlsbCBjb250YWluIHRoZSBjdXJyZW50IGNhcmQgYWZ0ZXJ3
YXJkcy4KKyAgICAgICAgRml4IHRoYXQgYnVnIGJ5IHByZXNlcnZpbmcgdGhlIGZpcnN0IGl0ZW0g
aW4gQmFja0ZvcndhcmRMaXN0OjpjbGVhcldNTFBhZ2VIaXN0b3J5KCkuCisKKyAgICAgICAgKiBo
aXN0b3J5L0JhY2tGb3J3YXJkTGlzdC5jcHA6IFByZXNlcnZlIGZpcnN0IGl0ZW0gaW4gaGlzdG9y
eSBzdGFjaywgYXMgZGVtYW5kZWQgYnkgdGhlIHNwZWMuCisgICAgICAgIChXZWJDb3JlOjpCYWNr
Rm9yd2FyZExpc3Q6OmNsZWFyV01MUGFnZUhpc3RvcnkpOgorICAgICAgICAqIHdtbC9XTUxEb0Vs
ZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V01MRG9FbGVtZW50OjppbnNlcnRlZEludG9E
b2N1bWVudCk6CisgICAgICAgIChXZWJDb3JlOjpXTUxEb0VsZW1lbnQ6OnJlbW92ZWRGcm9tRG9j
dW1lbnQpOgorICAgICAgICAqIHdtbC9XTUxOb29wRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpXTUxOb29wRWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQpOgorICAgICAgICAqIHdt
bC9XTUxPbkV2ZW50RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpldmVudEhhbmRsaW5n
UGFyZW50KToKKyAgICAgICAgKiB3bWwvV01MUG9zdGZpZWxkRWxlbWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpXTUxQb3N0ZmllbGRFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVudCk6Cisg
ICAgICAgIChXZWJDb3JlOjpXTUxQb3N0ZmllbGRFbGVtZW50OjpyZW1vdmVkRnJvbURvY3VtZW50
KToKKyAgICAgICAgKiB3bWwvV01MU2V0dmFyRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpXTUxTZXR2YXJFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVudCk6CisgICAgICAgIChXZWJD
b3JlOjpXTUxTZXR2YXJFbGVtZW50OjpyZW1vdmVkRnJvbURvY3VtZW50KToKKyAgICAgICAgKiB3
bWwvV01MVGFza0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V01MVGFza0VsZW1lbnQ6
Omluc2VydGVkSW50b0RvY3VtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OldNTFRhc2tFbGVtZW50
OjpyZW1vdmVkRnJvbURvY3VtZW50KToKKyAgICAgICAgKiB3bWwvV01MVGltZXJFbGVtZW50LmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OldNTFRpbWVyRWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1l
bnQpOgorICAgICAgICAoV2ViQ29yZTo6V01MVGltZXJFbGVtZW50OjpyZW1vdmVkRnJvbURvY3Vt
ZW50KToKKwogMjAwOS0wNy0yOSAgWW9uZ2p1biBaaGFuZyAgPHlvbmdqdW4uemhhbmdAbm9raWEu
Y29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEhhdXNtYW5uLgpJbmRleDogV2ViQ29y
ZS9oaXN0b3J5L0JhY2tGb3J3YXJkTGlzdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9oaXN0
b3J5L0JhY2tGb3J3YXJkTGlzdC5jcHAJKHJldmlzaW9uIDQ2NTM1KQorKysgV2ViQ29yZS9oaXN0
b3J5L0JhY2tGb3J3YXJkTGlzdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2OCw2ICsyNjgsOCBA
QCBib29sIEJhY2tGb3J3YXJkTGlzdDo6Y29udGFpbnNJdGVtKEhpc3RvCiAjaWYgRU5BQkxFKFdN
TCkKIHZvaWQgQmFja0ZvcndhcmRMaXN0OjpjbGVhcldNTFBhZ2VIaXN0b3J5KCkKIHsKKyAgICBS
ZWZQdHI8SGlzdG9yeUl0ZW0+IGN1cnJlbnRJdGVtID0gdGhpcy0+Y3VycmVudEl0ZW0oKTsKKwog
ICAgIGludCBzaXplID0gbV9lbnRyaWVzLnNpemUoKTsKICAgICBmb3IgKGludCBpID0gMDsgaSA8
IHNpemU7ICsraSkKICAgICAgICAgcGFnZUNhY2hlKCktPnJlbW92ZShtX2VudHJpZXNbaV0uZ2V0
KCkpOwpAQCAtMjc1LDYgKzI3Nyw5IEBAIHZvaWQgQmFja0ZvcndhcmRMaXN0OjpjbGVhcldNTFBh
Z2VIaXN0b3IKICAgICBtX2VudHJpZXMuY2xlYXIoKTsKICAgICBtX2VudHJ5SGFzaC5jbGVhcigp
OwogICAgIG1fY3VycmVudCA9IE5vQ3VycmVudEl0ZW1JbmRleDsKKworICAgIC8vIFNwZWM6IFRo
ZSBoaXN0b3J5IHN0YWNrIG1heSBiZSByZXNldCB0byBhIHN0YXRlIHdoZXJlIGl0IG9ubHkgY29u
dGFpbnMgdGhlIGN1cnJlbnQgY2FyZC4KKyAgICBhZGRJdGVtKGN1cnJlbnRJdGVtKTsKIH0KICNl
bmRpZgogCkluZGV4OiBXZWJDb3JlL3dtbC9XTUxEb0VsZW1lbnQuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvd21sL1dNTERvRWxlbWVudC5jcHAJKHJldmlzaW9uIDQ2NTM1KQorKysgV2ViQ29y
ZS93bWwvV01MRG9FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTEzLDggKzExMyw2IEBA
IHZvaWQgV01MRG9FbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVudCgKICAgICAgICAgbV9uYW1l
ID0gbV90eXBlOwogCiAgICAgTm9kZSogcGFyZW50ID0gcGFyZW50Tm9kZSgpOwotICAgIEFTU0VS
VChwYXJlbnQpOwotCiAgICAgaWYgKCFwYXJlbnQgfHwgIXBhcmVudC0+aXNXTUxFbGVtZW50KCkp
CiAgICAgICAgIHJldHVybjsKIApAQCAtMTI1LDcgKzEyMyw2IEBAIHZvaWQgV01MRG9FbGVtZW50
OjppbnNlcnRlZEludG9Eb2N1bWVudCgKIHZvaWQgV01MRG9FbGVtZW50OjpyZW1vdmVkRnJvbURv
Y3VtZW50KCkKIHsKICAgICBOb2RlKiBwYXJlbnQgPSBwYXJlbnROb2RlKCk7Ci0gICAgQVNTRVJU
KHBhcmVudCk7CiAKICAgICBpZiAocGFyZW50ICAmJiBwYXJlbnQtPmlzV01MRWxlbWVudCgpKSB7
CiAgICAgICAgIGlmIChXTUxFdmVudEhhbmRsaW5nRWxlbWVudCogZXZlbnRIYW5kbGluZ0VsZW1l
bnQgPSB0b1dNTEV2ZW50SGFuZGxpbmdFbGVtZW50KHN0YXRpY19jYXN0PFdNTEVsZW1lbnQqPihw
YXJlbnQpKSkKSW5kZXg6IFdlYkNvcmUvd21sL1dNTE5vb3BFbGVtZW50LmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL3dtbC9XTUxOb29wRWxlbWVudC5jcHAJKHJldmlzaW9uIDQ2NTM1KQorKysg
V2ViQ29yZS93bWwvV01MTm9vcEVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NSw4ICs0
NSw2IEBAIHZvaWQgV01MTm9vcEVsZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtZW4KICAgICBXTUxF
bGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWVudCgpOwogCiAgICAgTm9kZSogcGFyZW50ID0gcGFy
ZW50Tm9kZSgpOwotICAgIEFTU0VSVChwYXJlbnQpOwotCiAgICAgaWYgKCFwYXJlbnQgfHwgIXBh
cmVudC0+aXNXTUxFbGVtZW50KCkpCiAgICAgICAgIHJldHVybjsKIApJbmRleDogV2ViQ29yZS93
bWwvV01MT25FdmVudEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvd21sL1dNTE9u
RXZlbnRFbGVtZW50LmNwcAkocmV2aXNpb24gNDY1MzUpCisrKyBXZWJDb3JlL3dtbC9XTUxPbkV2
ZW50RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTYyLDcgKzYyLDYgQEAgdm9pZCBXTUxP
bkV2ZW50RWxlbWVudDo6cGFyc2VNYXBwZWRBdHRyaQogCiBzdGF0aWMgaW5saW5lIFdNTEV2ZW50
SGFuZGxpbmdFbGVtZW50KiBldmVudEhhbmRsaW5nUGFyZW50KE5vZGUqIHBhcmVudCkKIHsKLSAg
ICBBU1NFUlQocGFyZW50KTsKICAgICBpZiAoIXBhcmVudCB8fCAhcGFyZW50LT5pc1dNTEVsZW1l
bnQoKSkKICAgICAgICAgcmV0dXJuIDA7CiAKSW5kZXg6IFdlYkNvcmUvd21sL1dNTFBvc3RmaWVs
ZEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvd21sL1dNTFBvc3RmaWVsZEVsZW1l
bnQuY3BwCShyZXZpc2lvbiA0NjUzNSkKKysrIFdlYkNvcmUvd21sL1dNTFBvc3RmaWVsZEVsZW1l
bnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00NCwyMCArNDQsMTQgQEAgdm9pZCBXTUxQb3N0Zmll
bGRFbGVtZW50OjppbnNlcnRlZEludG9EbwogICAgIFdNTEVsZW1lbnQ6Omluc2VydGVkSW50b0Rv
Y3VtZW50KCk7CiAKICAgICBOb2RlKiBwYXJlbnQgPSBwYXJlbnROb2RlKCk7Ci0gICAgQVNTRVJU
KHBhcmVudCk7Ci0KLSAgICBpZiAoIXBhcmVudC0+aGFzVGFnTmFtZShnb1RhZykpCi0gICAgICAg
IHJldHVybjsKLQotICAgIHN0YXRpY19jYXN0PFdNTEdvRWxlbWVudCo+KHBhcmVudCktPnJlZ2lz
dGVyUG9zdGZpZWxkRWxlbWVudCh0aGlzKTsKKyAgICBpZiAocGFyZW50ICYmIHBhcmVudC0+aGFz
VGFnTmFtZShnb1RhZykpCisgICAgICAgIHN0YXRpY19jYXN0PFdNTEdvRWxlbWVudCo+KHBhcmVu
dCktPnJlZ2lzdGVyUG9zdGZpZWxkRWxlbWVudCh0aGlzKTsKIH0KIAogdm9pZCBXTUxQb3N0Zmll
bGRFbGVtZW50OjpyZW1vdmVkRnJvbURvY3VtZW50KCkKIHsKICAgICBOb2RlKiBwYXJlbnQgPSBw
YXJlbnROb2RlKCk7Ci0gICAgQVNTRVJUKHBhcmVudCk7Ci0KLSAgICBpZiAocGFyZW50LT5oYXNU
YWdOYW1lKGdvVGFnKSkKKyAgICBpZiAocGFyZW50ICYmIHBhcmVudC0+aGFzVGFnTmFtZShnb1Rh
ZykpCiAgICAgICAgIHN0YXRpY19jYXN0PFdNTEdvRWxlbWVudCo+KHBhcmVudCktPmRlcmVnaXN0
ZXJQb3N0ZmllbGRFbGVtZW50KHRoaXMpOwogCiAgICAgV01MRWxlbWVudDo6cmVtb3ZlZEZyb21E
b2N1bWVudCgpOwpJbmRleDogV2ViQ29yZS93bWwvV01MU2V0dmFyRWxlbWVudC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS93bWwvV01MU2V0dmFyRWxlbWVudC5jcHAJKHJldmlzaW9uIDQ2NTM1
KQorKysgV2ViQ29yZS93bWwvV01MU2V0dmFyRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTU2LDggKzU2LDYgQEAgdm9pZCBXTUxTZXR2YXJFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bQog
ICAgIFdNTEVsZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtZW50KCk7CiAgCiAgICAgTm9kZSogcGFy
ZW50ID0gcGFyZW50Tm9kZSgpOwotICAgIEFTU0VSVChwYXJlbnQpOwotCiAgICAgaWYgKCFwYXJl
bnQgfHwgIXBhcmVudC0+aXNXTUxFbGVtZW50KCkpCiAgICAgICAgIHJldHVybjsKIApAQCAtNjgs
OCArNjYsNiBAQCB2b2lkIFdNTFNldHZhckVsZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtCiB2b2lk
IFdNTFNldHZhckVsZW1lbnQ6OnJlbW92ZWRGcm9tRG9jdW1lbnQoKQogewogICAgIE5vZGUqIHBh
cmVudCA9IHBhcmVudE5vZGUoKTsKLSAgICBBU1NFUlQocGFyZW50KTsKLQogICAgIGlmIChwYXJl
bnQgJiYgcGFyZW50LT5pc1dNTEVsZW1lbnQoKSkgewogICAgICAgICBpZiAoc3RhdGljX2Nhc3Q8
V01MRWxlbWVudCo+KHBhcmVudCktPmlzV01MVGFza0VsZW1lbnQoKSkKICAgICAgICAgICAgIHN0
YXRpY19jYXN0PFdNTFRhc2tFbGVtZW50Kj4ocGFyZW50KS0+ZGVyZWdpc3RlclZhcmlhYmxlU2V0
dGVyKHRoaXMpOwpJbmRleDogV2ViQ29yZS93bWwvV01MVGFza0VsZW1lbnQuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvd21sL1dNTFRhc2tFbGVtZW50LmNwcAkocmV2aXNpb24gNDY1MzUpCisr
KyBXZWJDb3JlL3dtbC9XTUxUYXNrRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ4LDgg
KzQ4LDYgQEAgdm9pZCBXTUxUYXNrRWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbgogICAgIFdN
TEVsZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtZW50KCk7CiAKICAgICBOb2RlKiBwYXJlbnQgPSBw
YXJlbnROb2RlKCk7Ci0gICAgQVNTRVJUKHBhcmVudCk7Ci0KICAgICBpZiAoIXBhcmVudCB8fCAh
cGFyZW50LT5pc1dNTEVsZW1lbnQoKSkKICAgICAgICAgcmV0dXJuOwogCkBAIC02NCw4ICs2Miw2
IEBAIHZvaWQgV01MVGFza0VsZW1lbnQ6Omluc2VydGVkSW50b0RvY3VtZW4KIHZvaWQgV01MVGFz
a0VsZW1lbnQ6OnJlbW92ZWRGcm9tRG9jdW1lbnQoKQogewogICAgIE5vZGUqIHBhcmVudCA9IHBh
cmVudE5vZGUoKTsKLSAgICBBU1NFUlQocGFyZW50KTsKLQogICAgIGlmIChwYXJlbnQgJiYgcGFy
ZW50LT5pc1dNTEVsZW1lbnQoKSkgewogICAgICAgICBpZiAocGFyZW50LT5oYXNUYWdOYW1lKGFu
Y2hvclRhZykpCiAgICAgICAgICAgICBzdGF0aWNfY2FzdDxXTUxBbmNob3JFbGVtZW50Kj4ocGFy
ZW50KS0+ZGVyZWdpc3RlclRhc2sodGhpcyk7CkluZGV4OiBXZWJDb3JlL3dtbC9XTUxUaW1lckVs
ZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvd21sL1dNTFRpbWVyRWxlbWVudC5jcHAJ
KHJldmlzaW9uIDQ2NTM1KQorKysgV2ViQ29yZS93bWwvV01MVGltZXJFbGVtZW50LmNwcAkod29y
a2luZyBjb3B5KQpAQCAtNTksOCArNTksNiBAQCB2b2lkIFdNTFRpbWVyRWxlbWVudDo6aW5zZXJ0
ZWRJbnRvRG9jdW1lCiAgICAgICAgIHJldHVybjsKIAogICAgIE5vZGUqIHBhcmVudCA9IHBhcmVu
dE5vZGUoKTsKLSAgICBBU1NFUlQocGFyZW50KTsKLQogICAgIGlmICghcGFyZW50IHx8ICFwYXJl
bnQtPmlzV01MRWxlbWVudCgpKQogICAgICAgICByZXR1cm47CiAKQEAgLTczLDEzICs3MSw5IEBA
IHZvaWQgV01MVGltZXJFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1bWUKIHZvaWQgV01MVGltZXJF
bGVtZW50OjpyZW1vdmVkRnJvbURvY3VtZW50KCkKIHsKICAgICBOb2RlKiBwYXJlbnQgPSBwYXJl
bnROb2RlKCk7Ci0gICAgQVNTRVJUKHBhcmVudCk7Ci0KLSAgICBpZiAocGFyZW50ICYmIHBhcmVu
dC0+aXNXTUxFbGVtZW50KCkpIHsKLSAgICAgICAgaWYgKHBhcmVudC0+aGFzVGFnTmFtZShjYXJk
VGFnKSkgewotICAgICAgICAgICAgbV9jYXJkLT5zZXRJbnRyaW5zaWNFdmVudFRpbWVyKDApOwot
ICAgICAgICAgICAgbV9jYXJkID0gMDsKLSAgICAgICAgfQorICAgIGlmIChwYXJlbnQgJiYgcGFy
ZW50LT5pc1dNTEVsZW1lbnQoKSAmJiBwYXJlbnQtPmhhc1RhZ05hbWUoY2FyZFRhZykpIHsKKyAg
ICAgICAgbV9jYXJkLT5zZXRJbnRyaW5zaWNFdmVudFRpbWVyKDApOworICAgICAgICBtX2NhcmQg
PSAwOwogICAgIH0KIAogICAgIFdNTEVsZW1lbnQ6OnJlbW92ZWRGcm9tRG9jdW1lbnQoKTsKSW5k
ZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFu
Z2VMb2cJKHJldmlzaW9uIDQ2NTM3KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMDktMDctMjkgIE5pa29sYXMgWmltbWVybWFubiAg
PG5pa29sYXMuemltbWVybWFubkB0b3JjaG1vYmlsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1dNTF0gUnVubmluZyBXTUwgdGVzdHMgaW4g
cmFuZG9tIG9yZGVyIG11bHRpcGxlIHRpbWVzIGV4cG9zZXMgc3VidGxlIGJ1Z3MKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3ODAxCisKKyAgICAgICAg
U29tZSBjaGFuZ2VzIHRvIGZpeCByYW5kb20gb3JkZXIgV01MIHRlc3RzLCBzaW1wbGlsZnkgV01M
VGVzdENhc2UuanMgYW5kIHJlc2V0IHRlc3REb2N1bWVudAorICAgICAgICBwcm9wZXJseSBpbiBl
bnRlci1maXJzdC1jYXJkLXdpdGgtZXZlbnRzLmpzLiBmYXN0L3dtbC9lcnItbXVsdGktYWNjZXNz
LndtbCBzdGlsbCBjcmVhdGVzIGEgbGF5b3V0CisgICAgICAgIHRlc3QgZGlmZmVyZW5jZSBvbiBj
b25zZWN1dGl2ZSBydW5zLCB0aG91Z2ggdGhhdCdzIHJlbGF0ZWQgdG8gYnVnIDI3NzIxLCB3aGlj
aCBoYXMgdG8gYmUgZml4ZWQgZmlyc3QuCisKKyAgICAgICAgKiB3bWwvcmVzb3VyY2VzL1dNTFRl
c3RDYXNlLmpzOgorICAgICAgICAqIHdtbC9yZXNvdXJjZXMvZW50ZXItZmlyc3QtY2FyZC13aXRo
LWV2ZW50cy5qczoKKyAgICAgICAgKHNldHVwVGVzdERvY3VtZW50KToKKyAgICAgICAgKHByZXBh
cmVUZXN0KToKKyAgICAgICAgKGV4ZWN1dGVUZXN0KToKKwogMjAwOS0wNy0yOSAgSmFuIE1pY2hh
ZWwgQWxvbnpvICA8am1hbG9uem9Ad2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBF
cmljIFNlaWRlbCBhbmQgWGFuIExvcGV6LgpJbmRleDogTGF5b3V0VGVzdHMvd21sL3Jlc291cmNl
cy9XTUxUZXN0Q2FzZS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy93bWwvcmVzb3VyY2Vz
L1dNTFRlc3RDYXNlLmpzCShyZXZpc2lvbiA0NjUzNSkKKysrIExheW91dFRlc3RzL3dtbC9yZXNv
dXJjZXMvV01MVGVzdENhc2UuanMJKHdvcmtpbmcgY29weSkKQEAgLTksMzIgKzksMjQgQEAgZnVu
Y3Rpb24gY3JlYXRlV01MRWxlbWVudChuYW1lKSB7CiAgICAgcmV0dXJuIHRlc3REb2N1bWVudC5j
cmVhdGVFbGVtZW50TlMod21sTlMsICJ3bWw6IiArIG5hbWUpOwogfQogCi1mdW5jdGlvbiBjcmVh
dGVXTUxUZXN0Q2FzZSh0ZXN0RGVzY3JpcHRpb24sIHN1YnN0aXR1dGVzVmFyaWFibGVzLCB0ZXN0
TmFtZSwgZXhlY3V0ZUltbWVkaWF0ZWx5LCBuZWVkc1Jlc2V0KSB7CitmdW5jdGlvbiBjcmVhdGVX
TUxUZXN0Q2FzZSh0ZXN0RGVzY3JpcHRpb24sIHN1YnN0aXR1dGVzVmFyaWFibGVzLCB0ZXN0TmFt
ZSwgZXhlY3V0ZUltbWVkaWF0ZWx5KSB7CiAgICAgLy8gU2V0dXAgZGVmYXVsdCB0ZXN0IG9wdGlv
bnMKLSAgICBpZiAoc3Vic3RpdHV0ZXNWYXJpYWJsZXMgPT0gbnVsbCkgeworICAgIGlmIChzdWJz
dGl0dXRlc1ZhcmlhYmxlcyA9PSBudWxsKQogICAgICAgICBzdWJzdGl0dXRlc1ZhcmlhYmxlcyA9
IHRydWU7Ci0gICAgfQogCiAgICAgLy8gU2V0dXAgZGVmYXVsdCB0ZXN0IG5hbWUKICAgICBpZiAo
dGVzdE5hbWUgPT0gbnVsbCkgewogICAgICAgICBleGVjdXRlSW1tZWRpYXRlbHkgPSBmYWxzZTsg
Ly8gT25seSBob25vcmVkLCB3aGVuIHRlc3ROYW1lICE9IG51bGwKICAgICAgICAgdGVzdE5hbWUg
PSByZWxhdGl2ZVBhdGhUb0xheW91dFRlc3RzICsgIi93bWwvcmVzb3VyY2VzL3Rlc3QtZG9jdW1l
bnQud21sIjsKLSAgICB9IGVsc2UgaWYgKGV4ZWN1dGVJbW1lZGlhdGVseSA9PSBudWxsKSB7Cisg
ICAgfSBlbHNlIGlmIChleGVjdXRlSW1tZWRpYXRlbHkgPT0gbnVsbCkKICAgICAgICAgZXhlY3V0
ZUltbWVkaWF0ZWx5ID0gdHJ1ZTsKLSAgICB9Ci0KLSAgICAvLyBTb21lIHRlc3RzIG1heSB3YW50
IHRvIGhhbmRsZSByZXNldHRpbmcgdGhlIHBhZ2Ugc3RhdGUgdGhlbXNlbHZlcwotICAgIGlmIChu
ZWVkc1Jlc2V0ID09IG51bGwpIHsKLSAgICAgICAgbmVlZHNSZXNldCA9IHRydWU7Ci0gICAgfQog
CiAgICAgLy8gSW5pdGlhbGl6ZSBKUyB0ZXN0CiAgICAgZGVzY3JpcHRpb24odGVzdERlc2NyaXB0
aW9uKTsKICAgICBib2R5RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJi
b2R5IilbMF07CiAKICAgICAvLyBDbGVhciB2YXJpYWJsZSBzdGF0ZSAmIGhpc3RvcnkKLSAgICBp
ZiAobmVlZHNSZXNldCkKLSAgICAgICAgZG9jdW1lbnQucmVzZXRXTUxQYWdlU3RhdGUoKTsKKyAg
ICBkb2N1bWVudC5yZXNldFdNTFBhZ2VTdGF0ZSgpOwogCiAgICAgLy8gU2V0dXAgRFJUIHNwZWNp
ZmljIHNldHRpbmdzCiAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgewpJbmRl
eDogTGF5b3V0VGVzdHMvd21sL3Jlc291cmNlcy9lbnRlci1maXJzdC1jYXJkLXdpdGgtZXZlbnRz
LmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3dtbC9yZXNvdXJjZXMvZW50ZXItZmlyc3Qt
Y2FyZC13aXRoLWV2ZW50cy5qcwkocmV2aXNpb24gNDY1MzUpCisrKyBMYXlvdXRUZXN0cy93bWwv
cmVzb3VyY2VzL2VudGVyLWZpcnN0LWNhcmQtd2l0aC1ldmVudHMuanMJKHdvcmtpbmcgY29weSkK
QEAgLTEsMjMgKzEsMjIgQEAKIC8vLyBbTmFtZV0gZW50ZXItZmlyc3QtY2FyZC13aXRoLWV2ZW50
cy5qcwogCi1jcmVhdGVXTUxUZXN0Q2FzZSgiVGVzdHMgZW50ZXJpbmcgZmlyc3QgY2FyZCBiYWNr
d2FyZHMgdGhhdCBoYXMgaW50cmluc2ljIGV2ZW50cyBzZXQiLCBmYWxzZSwgInJlc291cmNlcy9l
bnRlci1maXJzdC1jYXJkLXdpdGgtZXZlbnRzLndtbCIsIGZhbHNlLCBmYWxzZSk7Ci0KLXZhciBy
YW5PbmNlID0gZmFsc2U7Ci12YXIgcmVzdWx0SW5kaWNhdG9yRWxlbWVudDsKK2NyZWF0ZVdNTFRl
c3RDYXNlKCJUZXN0cyBlbnRlcmluZyBmaXJzdCBjYXJkIGJhY2t3YXJkcyB0aGF0IGhhcyBpbnRy
aW5zaWMgZXZlbnRzIHNldCIsIGZhbHNlLCAicmVzb3VyY2VzL2VudGVyLWZpcnN0LWNhcmQtd2l0
aC1ldmVudHMud21sIiwgZmFsc2UpOwogCiBmdW5jdGlvbiBzZXR1cFRlc3REb2N1bWVudCgpIHsK
LSAgICByZXN1bHRJbmRpY2F0b3JFbGVtZW50ID0gdGVzdERvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJyZXN1bHRJbmRpY2F0b3IiKTsKKyAgICB2YXIgcmVzdWx0SW5kaWNhdG9yRWxlbWVudCA9IHRl
c3REb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0SW5kaWNhdG9yIik7CisgICAgaWYgKHJl
c3VsdEluZGljYXRvckVsZW1lbnQudGV4dENvbnRlbnQgPT0gIkRPTkUiKQorICAgICAgICBjb21w
bGV0ZVRlc3QoKTsKIH0KIAogZnVuY3Rpb24gcHJlcGFyZVRlc3QoKSB7Ci0gICAgaWYgKHJlc3Vs
dEluZGljYXRvckVsZW1lbnQudGV4dENvbnRlbnQgPT0gIkRPTkUiKQotICAgICAgICBjb21wbGV0
ZVRlc3QoKTsKLSAgICBlbHNlCi0gICAgICAgIGV4ZWN1dGVUZXN0KCk7CisgICAgc3RhcnRUZXN0
KDI1LCAxNSk7CiB9CiAKIGZ1bmN0aW9uIGV4ZWN1dGVUZXN0KCkgewogICAgIHN0YXJ0VGVzdCgy
NSwgMTUpOworCisgICAgLy8gRm9yY2UgcmUtc2V0dXAgb2YgdGhlIHRlc3QgZG9jdW1lbnQsIGFz
IHdlIGNoZWNrIGZvciBjb21wbGV0aW9uIHVwb24gc2V0dXBUZXN0RG9jdW1lbnQoKQorICAgIHRl
c3REb2N1bWVudCA9IHVuZGVmaW5lZDsKIH0KIAogdmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IHRy
dWU7
</data>
<flag name="review"
          id="17923"
          type_id="1"
          status="+"
          setter="manyoso"
    />
          </attachment>
      

    </bug>

</bugzilla>