<?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>27677</bug_id>
          
          <creation_ts>2009-07-25 05:53:42 -0700</creation_ts>
          <short_desc>[WML] Variable substitution is buggy</short_desc>
          <delta_ts>2009-07-25 09:44:24 -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>
          <dependson>27676</dependson>
          <blocked>20393</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Nikolas Zimmermann">zimmermann</reporter>
          <assigned_to name="Nikolas Zimmermann">zimmermann</assigned_to>
          <cc>staikos</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>134737</commentid>
    <comment_count>0</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2009-07-25 05:53:42 -0700</bug_when>
    <thetext>Variables should be substituted regardless of their existance. Not-existant variables should be expaneded to empty strings, per WML spec. Fix that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134738</commentid>
    <comment_count>1</comment_count>
      <attachid>33493</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2009-07-25 05:58:27 -0700</bug_when>
    <thetext>Created attachment 33493
Initial patch

Initial patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134749</commentid>
    <comment_count>2</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2009-07-25 09:44:24 -0700</bug_when>
    <thetext>Sending        LayoutTests/ChangeLog
Adding         LayoutTests/wml/newcontext-same-deck-expected.txt
Adding         LayoutTests/wml/newcontext-same-deck.html
Sending        LayoutTests/wml/resources/WMLTestCase.js
Adding         LayoutTests/wml/resources/newcontext-same-deck.js
Adding         LayoutTests/wml/resources/newcontext-same-deck.wml
Sending        LayoutTests/wml/resources/select-element-variables.js
Sending        LayoutTests/wml/select-element-variables-expected.txt
Sending        LayoutTests/wml/variable-reference-invalid-character-expected.txt
Sending        WebCore/ChangeLog
Sending        WebCore/dom/Text.cpp
Sending        WebCore/dom/Text.h
Transmitting file data ............
Committed revision 46395.
http://trac.webkit.org/changeset/46395</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>33493</attachid>
            <date>2009-07-25 05:58:27 -0700</date>
            <delta_ts>2009-07-25 07:12:17 -0700</delta_ts>
            <desc>Initial patch</desc>
            <filename>WML-Text-patch.diff</filename>
            <type>text/plain</type>
            <size>12754</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NjM5MikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMDktMDctMjUgIE5pa29sYXMgWmltbWVybWFubiAgPG5pa29sYXMu
emltbWVybWFubkB0b3JjaG1vYmlsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgW1dNTF0gVmFyaWFibGUgc3Vic3RpdHV0aW9uIGlzIGJ1Z2d5
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNzY3Nwor
CisgICAgICAgIFN1YnN0aXR1dGUgdmFyaWFibGVzIHVwb24gYXR0YWNoKCkgdGltZSBpbnN0ZWFk
IG9mIGluc2VydGVkSW50b0RvY3VtZW50KCkuIE90aGVyd2hpc2UgdmFyaWFibGUgc3Vic3RpdHV0
aW9uCisgICAgICAgIHdvbid0IHdvcmsgZHVyaW5nIGludGVyLWRlY2sganVtcHMgKHNhbWUgVVJM
LCBkaWZmZXJlbnQgZnJhZ21lbnQpLiBDb3ZlcmVkIGJ5IG5ldyB0ZXN0IGZhc3Qvd21sL25ld2Nv
bnRleHQtc2FtZS1kZWNrLmh0bWwuCisKKyAgICAgICAgKiBkb20vVGV4dC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpUZXh0OjphdHRhY2gpOgorICAgICAgICAqIGRvbS9UZXh0Lmg6CisKIDIwMDkt
MDctMjUgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAg
Rml4IFdpbmRvd3MgYnVpbGQgYnJlYWthZ2UgaW50cm9kdWNlZCBpbiA0NjM5MC4KSW5kZXg6IFdl
YkNvcmUvZG9tL1RleHQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL1RleHQuY3BwCShy
ZXZpc2lvbiA0NjM4MykKKysrIFdlYkNvcmUvZG9tL1RleHQuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0yNjAsNiArMjYwLDE5IEBAIFJlbmRlck9iamVjdCAqVGV4dDo6Y3JlYXRlUmVuZGVyZXIoUmVu
ZGUKIAogdm9pZCBUZXh0OjphdHRhY2goKQogeworI2lmIEVOQUJMRShXTUwpCisgICAgaWYgKGRv
Y3VtZW50KCktPmlzV01MRG9jdW1lbnQoKSAmJiAhY29udGFpbnNPbmx5V2hpdGVzcGFjZSgpKSB7
CisgICAgICAgIFN0cmluZyB0ZXh0ID0gbV9kYXRhOworICAgICAgICBBU1NFUlQoIXRleHQuaXNF
bXB0eSgpKTsKKworICAgICAgICB0ZXh0ID0gc3Vic3RpdHV0ZVZhcmlhYmxlUmVmZXJlbmNlcyh0
ZXh0LCBkb2N1bWVudCgpKTsKKworICAgICAgICBFeGNlcHRpb25Db2RlIGNvZGUgPSAwOworICAg
ICAgICBzZXREYXRhKHRleHQsIGNvZGUpOworICAgICAgICBBU1NFUlQoIWNvZGUpOworICAgIH0K
KyNlbmRpZgorCiAgICAgY3JlYXRlUmVuZGVyZXJJZk5lZWRlZCgpOwogICAgIENoYXJhY3RlckRh
dGE6OmF0dGFjaCgpOwogfQpAQCAtMzE5LDI5ICszMzIsNiBAQCBQYXNzUmVmUHRyPFRleHQ+IFRl
eHQ6OmNyZWF0ZVdpdGhMZW5ndGhMCiAgICAgcmV0dXJuIG5ldyBUZXh0KGRvYywgbm9kZVRleHQp
OwogfQogCi0jaWYgRU5BQkxFKFdNTCkKLXZvaWQgVGV4dDo6aW5zZXJ0ZWRJbnRvRG9jdW1lbnQo
KQotewotICAgIENoYXJhY3RlckRhdGE6Omluc2VydGVkSW50b0RvY3VtZW50KCk7Ci0KLSAgICBp
ZiAoIXBhcmVudE5vZGUoKS0+aXNXTUxFbGVtZW50KCkgfHwgIWxlbmd0aCgpKQotICAgICAgICBy
ZXR1cm47Ci0KLSAgICBXTUxQYWdlU3RhdGUqIHBhZ2VTdGF0ZSA9IHdtbFBhZ2VTdGF0ZUZvckRv
Y3VtZW50KGRvY3VtZW50KCkpOwotICAgIGlmICghcGFnZVN0YXRlLT5oYXNWYXJpYWJsZXMoKSkK
LSAgICAgICAgcmV0dXJuOwotCi0gICAgU3RyaW5nIHRleHQgPSBkYXRhKCk7Ci0gICAgaWYgKCF0
ZXh0LmltcGwoKSB8fCB0ZXh0LmltcGwoKS0+Y29udGFpbnNPbmx5V2hpdGVzcGFjZSgpKQotICAg
ICAgICByZXR1cm47Ci0KLSAgICB0ZXh0ID0gc3Vic3RpdHV0ZVZhcmlhYmxlUmVmZXJlbmNlcyh0
ZXh0LCBkb2N1bWVudCgpKTsKLQotICAgIEV4Y2VwdGlvbkNvZGUgZWM7Ci0gICAgc2V0RGF0YSh0
ZXh0LCBlYyk7Ci19Ci0jZW5kaWYKLQogI2lmbmRlZiBOREVCVUcKIHZvaWQgVGV4dDo6Zm9ybWF0
Rm9yRGVidWdnZXIoY2hhciAqYnVmZmVyLCB1bnNpZ25lZCBsZW5ndGgpIGNvbnN0CiB7CkluZGV4
OiBXZWJDb3JlL2RvbS9UZXh0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vVGV4dC5oCShy
ZXZpc2lvbiA0NjM4MykKKysrIFdlYkNvcmUvZG9tL1RleHQuaAkod29ya2luZyBjb3B5KQpAQCAt
NTksMTAgKzU5LDYgQEAgcHVibGljOgogCiAgICAgc3RhdGljIFBhc3NSZWZQdHI8VGV4dD4gY3Jl
YXRlV2l0aExlbmd0aExpbWl0KERvY3VtZW50KiwgY29uc3QgU3RyaW5nJiwgdW5zaWduZWQmIGNo
YXJzTGVmdCwgdW5zaWduZWQgbWF4Q2hhcnMgPSBjVGV4dE5vZGVMZW5ndGhMaW1pdCk7CiAKLSNp
ZiBFTkFCTEUoV01MKQotICAgIHZpcnR1YWwgdm9pZCBpbnNlcnRlZEludG9Eb2N1bWVudCgpOwot
I2VuZGlmCi0KICNpZm5kZWYgTkRFQlVHCiAgICAgdmlydHVhbCB2b2lkIGZvcm1hdEZvckRlYnVn
Z2VyKGNoYXIqIGJ1ZmZlciwgdW5zaWduZWQgbGVuZ3RoKSBjb25zdDsKICNlbmRpZgpJbmRleDog
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxv
ZwkocmV2aXNpb24gNDYzOTIpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwzMSBAQAorMjAwOS0wNy0yNSAgTmlrb2xhcyBaaW1tZXJtYW5uICA8bmlr
b2xhcy56aW1tZXJtYW5uQHRvcmNobW9iaWxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbV01MXSBWYXJpYWJsZSBzdWJzdGl0dXRpb24gaXMg
YnVnZ3kKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3
Njc3CisKKyAgICAgICAgQWx3YXlzIHN1YnN0aXR1dGUgdmFyaWFibGVzIHJlZ2FyZGxlc3Mgb2Yg
dGhlaXIgZXhpc3RhbmNlLiBJZiBhIHZhcmlhYmxlIGRvZXNuJ3QgZXhpc3QsIGV4cGFuZCBpdCB0
byBhbiBlbXB0eSBzdHJpbmcuCisgICAgICAgIENvcnJlY3Qgc2V2ZXJhbCB0ZXN0Y2FzZXMsIHJl
bHlpbmcgb24gdGhlIG9sZCBidWdneSBiZWhhdmlvdXIuCisKKyAgICAgICAgKiB3bWwvbmV3Y29u
dGV4dC1zYW1lLWRlY2stZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3bWwvbmV3Y29u
dGV4dC1zYW1lLWRlY2suaHRtbDogQWRkZWQuCisgICAgICAgICogd21sL3Jlc291cmNlcy9XTUxU
ZXN0Q2FzZS5qczoKKyAgICAgICAgKGNyZWF0ZVdNTFRlc3RDYXNlLmlmcmFtZUVsZW1lbnQub25s
b2FkKToKKyAgICAgICAgKGNyZWF0ZVdNTFRlc3RDYXNlKToKKyAgICAgICAgKGFzc3VyZUxheW91
dCk6CisgICAgICAgIChzdGFydFRlc3QpOgorICAgICAgICAodHJpZ2dlck1vdXNlRXZlbnQpOgor
ICAgICAgICAqIHdtbC9yZXNvdXJjZXMvbmV3Y29udGV4dC1zYW1lLWRlY2suanM6IEFkZGVkLgor
ICAgICAgICAoc2V0dXBUZXN0RG9jdW1lbnQpOgorICAgICAgICAocHJlcGFyZVRlc3QpOgorICAg
ICAgICAoZXhlY3V0ZVRlc3QpOgorICAgICAgICAqIHdtbC9yZXNvdXJjZXMvbmV3Y29udGV4dC1z
YW1lLWRlY2sud21sOiBBZGRlZC4KKyAgICAgICAgKiB3bWwvcmVzb3VyY2VzL3NlbGVjdC1lbGVt
ZW50LXZhcmlhYmxlcy5qczoKKyAgICAgICAgKHByZXBhcmVUZXN0KToKKyAgICAgICAgKiB3bWwv
c2VsZWN0LWVsZW1lbnQtdmFyaWFibGVzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3bWwvdmFy
aWFibGUtcmVmZXJlbmNlLWludmFsaWQtY2hhcmFjdGVyLWV4cGVjdGVkLnR4dDoKKwogMjAwOS0w
Ny0yNCAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgogCiAgICAgICAgIFNraXAgYSB0ZXN0
IHRoYXQgaXMgZmFpbGluZyBpbnRlcm1pdHRlbnRseSBvbiB0aGUgV2luZG93cyBidWlsZCBib3Qu
CkluZGV4OiBMYXlvdXRUZXN0cy93bWwvbmV3Y29udGV4dC1zYW1lLWRlY2stZXhwZWN0ZWQudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3dtbC9uZXdjb250ZXh0LXNhbWUtZGVjay1leHBl
Y3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy93bWwvbmV3Y29udGV4dC1zYW1l
LWRlY2stZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDIxIEBACitXTUwgbGF5
b3V0IHRlc3RzIC0gdXNpbmcgWEhUTUwgc2NyaXB0aW5nCisKKworVGVzdHMgbmV3Y29udGV4dCBh
dHRyaWJ1dGUgaGFuZGxpbmcgb24gY2FyZHMgd2l0aGluIHRoZSBzYW1lIGRlY2sKKworT24gc3Vj
Y2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQg
YnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgcmVzdWx0MS50ZXh0Q29udGVudCBpcyAiVGVz
dCAxLzM6IHZhcjE9JyciCitQQVNTIHJlc3VsdDIudGV4dENvbnRlbnQgaXMgIlRlc3QgMi8zOiB2
YXIxPScnIgorUEFTUyByZXN1bHQzLnRleHRDb250ZW50IGlzICJUZXN0IDMvMzogdmFyMj0nUEFT
UyciCitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwor
CistLS0tLS0tLQorRnJhbWU6ICc8IS0tZnJhbWVQYXRoIC8vPCEtLWZyYW1lMC0tPi0tPicKKy0t
LS0tLS0tCitUZXN0IDIvMzogdmFyMT0nJworVGVzdCAzLzM6IHZhcjI9J1BBU1MnCkluZGV4OiBM
YXlvdXRUZXN0cy93bWwvbmV3Y29udGV4dC1zYW1lLWRlY2suaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy93bWwvbmV3Y29udGV4dC1zYW1lLWRlY2suaHRtbAkocmV2aXNpb24gMCkKKysr
IExheW91dFRlc3RzL3dtbC9uZXdjb250ZXh0LXNhbWUtZGVjay5odG1sCShyZXZpc2lvbiAwKQpA
QCAtMCwwICsxLDE1IEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0vL0lFVEYvL0RURCBIVE1M
Ly9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIuLi9m
YXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2NyaXB0PnZhciByZWxhdGl2
ZVBhdGhUb0xheW91dFRlc3RzID0gIi4uIjs8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSJyZXNvdXJj
ZXMvV01MVGVzdENhc2UuanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uL2Zhc3QvanMvcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPGgxPldN
TCBsYXlvdXQgdGVzdHMgLSB1c2luZyBYSFRNTCBzY3JpcHRpbmc8L2gxPgorPHAgaWQ9ImRlc2Ny
aXB0aW9uIj48L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQgc3JjPSJyZXNv
dXJjZXMvbmV3Y29udGV4dC1zYW1lLWRlY2suanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1s
PgpJbmRleDogTGF5b3V0VGVzdHMvd21sL3NlbGVjdC1lbGVtZW50LXZhcmlhYmxlcy1leHBlY3Rl
ZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvd21sL3NlbGVjdC1lbGVtZW50LXZhcmlh
Ymxlcy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDQ2MzgzKQorKysgTGF5b3V0VGVzdHMvd21sL3Nl
bGVjdC1lbGVtZW50LXZhcmlhYmxlcy1leHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTYs
NyArNiw3IEBAIFRlc3RzIHZhcmlhYmxlIHJlZmVyZW5jZXMgaW4gY29uanVjdGlvbiAKIE9uIHN1
Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2Vk
IGJ5ICJURVNUIENPTVBMRVRFIi4KIAogCi1QQVNTIHJlc3VsdEVsZW1lbnQudGV4dENvbnRlbnQg
aXMgIlNlbGVjdGlvbiByZXN1bHQ6ICckcmVzdWx0JyIKK1BBU1MgcmVzdWx0RWxlbWVudC50ZXh0
Q29udGVudCBpcyAiU2VsZWN0aW9uIHJlc3VsdDogJyciCiBQQVNTIHJlc3VsdEVsZW1lbnQudGV4
dENvbnRlbnQgaXMgIlNlbGVjdGlvbiByZXN1bHQ6ICdkb2dneSciCiBQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCiAKSW5kZXg6IExheW91dFRlc3RzL3dtbC92YXJpYWJsZS1yZWZlcmVu
Y2UtaW52YWxpZC1jaGFyYWN0ZXItZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL3dtbC92YXJpYWJsZS1yZWZlcmVuY2UtaW52YWxpZC1jaGFyYWN0ZXItZXhwZWN0ZWQudHh0
CShyZXZpc2lvbiA0NjM4MykKKysrIExheW91dFRlc3RzL3dtbC92YXJpYWJsZS1yZWZlcmVuY2Ut
aW52YWxpZC1jaGFyYWN0ZXItZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0yLDYgKzIs
OCBAQCBDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogQSB2YXJpYWJsZSByZWZlCiBDT05TT0xFIE1F
U1NBR0U6IGxpbmUgMDogQSB2YXJpYWJsZSByZWZlcmVuY2UgdXNlcyBpbnZhbGlkIHN5bnRheC4K
IENPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBBIHZhcmlhYmxlIHJlZmVyZW5jZSB1c2VzIGludmFs
aWQgc3ludGF4LgogQ09OU09MRSBNRVNTQUdFOiBsaW5lIDA6IEEgdmFyaWFibGUgcmVmZXJlbmNl
IHVzZXMgaW52YWxpZCBzeW50YXguCitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMDogQSB2YXJpYWJs
ZSByZWZlcmVuY2UgdXNlcyBpbnZhbGlkIHN5bnRheC4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAw
OiBBIHZhcmlhYmxlIHJlZmVyZW5jZSB1c2VzIGludmFsaWQgc3ludGF4LgogV01MIGxheW91dCB0
ZXN0cyAtIHVzaW5nIFhIVE1MIHNjcmlwdGluZwogCiAKSW5kZXg6IExheW91dFRlc3RzL3dtbC9y
ZXNvdXJjZXMvV01MVGVzdENhc2UuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvd21sL3Jl
c291cmNlcy9XTUxUZXN0Q2FzZS5qcwkocmV2aXNpb24gNDYzODMpCisrKyBMYXlvdXRUZXN0cy93
bWwvcmVzb3VyY2VzL1dNTFRlc3RDYXNlLmpzCSh3b3JraW5nIGNvcHkpCkBAIC05LDE3ICs5LDE4
IEBAIGZ1bmN0aW9uIGNyZWF0ZVdNTEVsZW1lbnQobmFtZSkgewogICAgIHJldHVybiB0ZXN0RG9j
dW1lbnQuY3JlYXRlRWxlbWVudE5TKHdtbE5TLCAid21sOiIgKyBuYW1lKTsKIH0KIAotZnVuY3Rp
b24gY3JlYXRlV01MVGVzdENhc2UodGVzdERlc2NyaXB0aW9uLCBzdWJzdGl0dXRlc1ZhcmlhYmxl
cywgdGVzdE5hbWUpIHsKK2Z1bmN0aW9uIGNyZWF0ZVdNTFRlc3RDYXNlKHRlc3REZXNjcmlwdGlv
biwgc3Vic3RpdHV0ZXNWYXJpYWJsZXMsIHRlc3ROYW1lLCBleGVjdXRlSW1tZWRpYXRlbHkpIHsK
ICAgICAvLyBTZXR1cCBkZWZhdWx0IHRlc3Qgb3B0aW9ucwogICAgIGlmIChzdWJzdGl0dXRlc1Zh
cmlhYmxlcyA9PSBudWxsKSB7CiAgICAgICAgIHN1YnN0aXR1dGVzVmFyaWFibGVzID0gdHJ1ZTsK
ICAgICB9CiAKICAgICAvLyBTZXR1cCBkZWZhdWx0IHRlc3QgbmFtZQotICAgIHZhciB1c2VzRGVm
YXVsdFRlc3REb2N1bWVudCA9IGZhbHNlOwogICAgIGlmICh0ZXN0TmFtZSA9PSBudWxsKSB7Ci0g
ICAgICAgIHVzZXNEZWZhdWx0VGVzdERvY3VtZW50ID0gdHJ1ZTsKKyAgICAgICAgZXhlY3V0ZUlt
bWVkaWF0ZWx5ID0gZmFsc2U7IC8vIE9ubHkgaG9ub3JlZCwgd2hlbiB0ZXN0TmFtZSAhPSBudWxs
CiAgICAgICAgIHRlc3ROYW1lID0gcmVsYXRpdmVQYXRoVG9MYXlvdXRUZXN0cyArICIvd21sL3Jl
c291cmNlcy90ZXN0LWRvY3VtZW50LndtbCI7CisgICAgfSBlbHNlIGlmIChleGVjdXRlSW1tZWRp
YXRlbHkgPT0gbnVsbCkgeworICAgICAgICBleGVjdXRlSW1tZWRpYXRlbHkgPSB0cnVlOwogICAg
IH0KIAogICAgIC8vIEluaXRpYWxpemUgSlMgdGVzdApAQCAtNDksNiArNTAsNyBAQCBmdW5jdGlv
biBjcmVhdGVXTUxUZXN0Q2FzZSh0ZXN0RGVzY3JpcHRpCiAgICAgICAgICAgICAgICAgc2V0dXBU
ZXN0RG9jdW1lbnQoKTsKICAgICAgICAgICAgIH0KIAorICAgICAgICAgICAgYXNzdXJlTGF5b3V0
KCk7CiAgICAgICAgICAgICBleGVjdXRlVGVzdCgpOwogICAgICAgICAgICAgcmV0dXJuOwogICAg
ICAgICB9CkBAIC02Miw4ICs2NCw5IEBAIGZ1bmN0aW9uIGNyZWF0ZVdNTFRlc3RDYXNlKHRlc3RE
ZXNjcmlwdGkKICAgICAgICAgdGVzdERvY3VtZW50LmluaXRpYWxpemVXTUxQYWdlU3RhdGUoKTsK
IAogICAgICAgICAvLyBIYW5kbGUgdGhlIGNhc2Ugb2YgYSBzcGVjaWFsIFdNTCB0ZXN0IGRvY3Vt
ZW50LiBUaGF0J3MgYWx3YXlzIHRoZSBjYXNlIGZvciBzdGF0aWMgV01MIHRlc3RjYXNlcwotICAg
ICAgICAvLyh3aGljaCBhcmUgTk9UIGNyZWF0ZWQgbWFudWFsbHkgdXNpbmcgSlMgaW4gcHJlcGFy
ZVRlc3QpLiBGaXJlIG9mZiB0ZXN0IGltbWVkaWF0ZWx5IGZvciB0aG9zZS4KLSAgICAgICAgaWYg
KCF1c2VzRGVmYXVsdFRlc3REb2N1bWVudCkgeworICAgICAgICAvLyAod2hpY2ggYXJlIE5PVCBj
cmVhdGVkIG1hbnVhbGx5IHVzaW5nIEpTIGluIHByZXBhcmVUZXN0KS4gRmlyZSBvZmYgdGVzdCBp
bW1lZGlhdGVseSBmb3IgdGhvc2UuCisgICAgICAgIGlmIChleGVjdXRlSW1tZWRpYXRlbHkpIHsK
KyAgICAgICAgICAgIGFzc3VyZUxheW91dCgpOwogICAgICAgICAgICAgZXhlY3V0ZVRlc3QoKTsK
ICAgICAgICAgfQogICAgIH0KQEAgLTcxLDcgKzc0LDIwIEBAIGZ1bmN0aW9uIGNyZWF0ZVdNTFRl
c3RDYXNlKHRlc3REZXNjcmlwdGkKICAgICBib2R5RWxlbWVudC5pbnNlcnRCZWZvcmUoaWZyYW1l
RWxlbWVudCwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRlc2NyaXB0aW9uIikpOwogfQogCi1m
dW5jdGlvbiB0cmlnZ2VyVXBkYXRlKHgsIHkpIHsKK2Z1bmN0aW9uIGFzc3VyZUxheW91dCgpIHsK
KyAgICAvLyBBc3N1cmUgaW5pdGlhbCBsYXlvdXQgZmluaXNoZWQgKHZhcmlhYmxlIHN1YnN0aXRp
b25zIGhhcHBlbiBvbiBhdHRhY2ggdGltZSkKKyAgICB2YXIgY2FyZHMgPSB0ZXN0RG9jdW1lbnQu
Z2V0RWxlbWVudHNCeVRhZ05hbWUoImNhcmQiKTsKKyAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNh
cmRzLmxlbmd0aDsgKytpKSB7CisgICAgICAgIGNhcmRzW2ldLm9mZnNldFRvcDsKKyAgICB9Cit9
CisKK2Z1bmN0aW9uIHN0YXJ0VGVzdCh4LCB5KSB7CisgICAgYXNzdXJlTGF5b3V0KCk7CisgICAg
dHJpZ2dlck1vdXNlRXZlbnQoeCwgeSk7Cit9CisKK2Z1bmN0aW9uIHRyaWdnZXJNb3VzZUV2ZW50
KHgsIHkpIHsKICAgICAvLyBUcmFuc2xhdGlvbiBkdWUgdG8gSFRNTCBjb250ZW50IGFib3ZlIHRo
ZSBXTUwgZG9jdW1lbnQgaW4gdGhlIGlmcmFtZQogICAgIHggPSB4ICsgaWZyYW1lRWxlbWVudC5v
ZmZzZXRMZWZ0OwogICAgIHkgPSB5ICsgaWZyYW1lRWxlbWVudC5vZmZzZXRUb3A7CkBAIC04Mywx
MSArOTksNiBAQCBmdW5jdGlvbiB0cmlnZ2VyVXBkYXRlKHgsIHkpIHsKICAgICB9CiB9CiAKLWZ1
bmN0aW9uIHN0YXJ0VGVzdCh4LCB5KSB7Ci0gICAgLy8gQXNzdXJlIGZpcnN0IGxheW91dCBmaW5p
c2hlZAotICAgIHdpbmRvdy5zZXRUaW1lb3V0KCJ0cmlnZ2VyVXBkYXRlKCIgKyB4ICsgIiwgIiAr
IHkgKyAiKSIsIDApOwotfQotCiBmdW5jdGlvbiBjb21wbGV0ZVRlc3QoKSB7CiAgICAgdmFyIHNj
cmlwdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyh4aHRtbE5TLCAic2NyaXB0Iik7CiAKSW5k
ZXg6IExheW91dFRlc3RzL3dtbC9yZXNvdXJjZXMvbmV3Y29udGV4dC1zYW1lLWRlY2suanMKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gTGF5b3V0VGVzdHMvd21sL3Jlc291cmNlcy9uZXdjb250ZXh0LXNhbWUtZGVj
ay5qcwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3dtbC9yZXNvdXJjZXMvbmV3Y29udGV4
dC1zYW1lLWRlY2suanMJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsMzQgQEAKKy8vLyBbTmFtZV0g
bmV3Y29udGV4dC1zYW1lLWRlY2suanMKKworY3JlYXRlV01MVGVzdENhc2UoIlRlc3RzIG5ld2Nv
bnRleHQgYXR0cmlidXRlIGhhbmRsaW5nIG9uIGNhcmRzIHdpdGhpbiB0aGUgc2FtZSBkZWNrIiwg
dHJ1ZSwgInJlc291cmNlcy9uZXdjb250ZXh0LXNhbWUtZGVjay53bWwiLCBmYWxzZSk7CisKK3Zh
ciBjb3VudGVyID0gMDsKKwordmFyIHJlc3VsdDE7Cit2YXIgcmVzdWx0MjsKK3ZhciByZXN1bHQz
OworCitmdW5jdGlvbiBzZXR1cFRlc3REb2N1bWVudCgpIHsKKyAgICByZXN1bHQxID0gdGVzdERv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN1bHQxIik7CisgICAgcmVzdWx0MiA9IHRlc3REb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgicmVzdWx0MiIpOworICAgIHJlc3VsdDMgPSB0ZXN0RG9jdW1l
bnQuZ2V0RWxlbWVudEJ5SWQoInJlc3VsdDMiKTsKK30KKworZnVuY3Rpb24gcHJlcGFyZVRlc3Qo
KSB7CisgICAgc3RhcnRUZXN0KDI1LCAxNSk7Cit9CisKK2Z1bmN0aW9uIGV4ZWN1dGVUZXN0KCkg
eworICAgIGlmIChjb3VudGVyID09IDApIHsKKyAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJyZXN1bHQxLnRleHRDb250ZW50IiwgIlRlc3QgMS8zOiB2YXIxPScnIik7CisgICAgICAgIHN0
YXJ0VGVzdCgyNSwgMTUpOworICAgIH0gZWxzZSBpZiAoY291bnRlciA9PSAxKSB7CisgICAgICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygicmVzdWx0Mi50ZXh0Q29udGVudCIsICJUZXN0IDIvMzog
dmFyMT0nJyIpOworICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoInJlc3VsdDMudGV4dENv
bnRlbnQiLCAiVGVzdCAzLzM6IHZhcjI9J1BBU1MnIik7CisgICAgICAgIGNvbXBsZXRlVGVzdCgp
OworICAgIH0KKworICAgICsrY291bnRlcjsKK30KKwordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9
IHRydWU7CkluZGV4OiBMYXlvdXRUZXN0cy93bWwvcmVzb3VyY2VzL25ld2NvbnRleHQtc2FtZS1k
ZWNrLndtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy93bWwvcmVzb3VyY2VzL25ld2NvbnRl
eHQtc2FtZS1kZWNrLndtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3dtbC9yZXNvdXJj
ZXMvbmV3Y29udGV4dC1zYW1lLWRlY2sud21sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI1IEBA
Cis8P3htbCB2ZXJzaW9uPSIxLjAiPz4KKzwhRE9DVFlQRSB3bWwgUFVCTElDICItLy9XQVBGT1JV
TS8vRFREIFdNTCAxLjEvL0VOIiAiaHR0cDovL3d3dy53YXBmb3J1bS5vcmcvRFREL3dtbF8xLjEu
eG1sIj4KKzx3bWw+CisgICAgPGNhcmQgaWQ9Im9uZSI+CisgICAgICAgPGRvIHR5cGU9ImFjY2Vw
dCIgbGFiZWw9Ik5leHQgdGVzdCI+CisgICAgICAgICAgICA8Z28gaHJlZj0iI3R3byI+CisgICAg
ICAgICAgICAgICAgPHNldHZhciBuYW1lPSJ2YXIxIiB2YWx1ZT0iUEFTUyIvPgorICAgICAgICAg
ICAgPC9nbz4KKyAgICAgICAgPC9kbz4KKyAgICA8L2NhcmQ+CisKKyAgICA8Y2FyZCBpZD0idHdv
IiBuZXdjb250ZXh0PSJ0cnVlIj4KKyAgICAgICAgPGRvIHR5cGU9ImFjY2VwdCIgbGFiZWw9Ik5l
eHQgdGVzdCI+CisgICAgICAgICAgICA8Z28gaHJlZj0iI3RocmVlIj4KKyAgICAgICAgICAgICAg
ICA8c2V0dmFyIG5hbWU9InZhcjIiIHZhbHVlPSJQQVNTIi8+CisgICAgICAgICAgICA8L2dvPgor
ICAgICAgICA8L2RvPgorICAgICAgICA8cCBpZD0icmVzdWx0MSI+VGVzdCAxLzM6IHZhcjE9JyR2
YXIxJzwvcD4KKyAgICA8L2NhcmQ+CisKKyAgICA8Y2FyZCBpZD0idGhyZWUiPgorICAgICAgICA8
cCBpZD0icmVzdWx0MiI+VGVzdCAyLzM6IHZhcjE9JyR2YXIxJzwvcD4KKyAgICAgICAgPHAgaWQ9
InJlc3VsdDMiPlRlc3QgMy8zOiB2YXIyPSckdmFyMic8L3A+CisgICAgPC9jYXJkPgorPC93bWw+
CkluZGV4OiBMYXlvdXRUZXN0cy93bWwvcmVzb3VyY2VzL3NlbGVjdC1lbGVtZW50LXZhcmlhYmxl
cy5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy93bWwvcmVzb3VyY2VzL3NlbGVjdC1lbGVt
ZW50LXZhcmlhYmxlcy5qcwkocmV2aXNpb24gNDYzODMpCisrKyBMYXlvdXRUZXN0cy93bWwvcmVz
b3VyY2VzL3NlbGVjdC1lbGVtZW50LXZhcmlhYmxlcy5qcwkod29ya2luZyBjb3B5KQpAQCAtMzks
NyArMzksNyBAQCBmdW5jdGlvbiBzZXR1cFRlc3REb2N1bWVudCgpIHsKIH0KIAogZnVuY3Rpb24g
cHJlcGFyZVRlc3QoKSB7Ci0gICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJyZXN1bHRFbGVtZW50
LnRleHRDb250ZW50IiwgIlNlbGVjdGlvbiByZXN1bHQ6ICckcmVzdWx0JyIpOworICAgIHNob3Vs
ZEJlRXF1YWxUb1N0cmluZygicmVzdWx0RWxlbWVudC50ZXh0Q29udGVudCIsICJTZWxlY3Rpb24g
cmVzdWx0OiAnJyIpOwogICAgIHN0YXJ0VGVzdCgyNSwgMTUpOwogfQogCg==
</data>
<flag name="review"
          id="17763"
          type_id="1"
          status="+"
          setter="staikos"
    />
          </attachment>
      

    </bug>

</bugzilla>