<?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>67173</bug_id>
          
          <creation_ts>2011-08-29 18:23:40 -0700</creation_ts>
          <short_desc>Add a test for lastChangeWasUserEdit in HTMLInputElement and HTMLTextAreaElement</short_desc>
          <delta_ts>2011-08-29 19:02:49 -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>WebKit API</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>
          
          <blocked>67152</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>adele</cc>
    
    <cc>ap</cc>
    
    <cc>darin</cc>
    
    <cc>dglazkov</cc>
    
    <cc>morrita</cc>
    
    <cc>sam</cc>
    
    <cc>tkent</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>458621</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-08-29 18:23:40 -0700</bug_when>
    <thetext>We should have a test for lastChangeWasUserEdit per the discussion on the bug 67152</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>458623</commentid>
    <comment_count>1</comment_count>
      <attachid>105557</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-08-29 18:27:28 -0700</bug_when>
    <thetext>Created attachment 105557
adds a basic test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>458627</commentid>
    <comment_count>2</comment_count>
      <attachid>105557</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-08-29 18:35:32 -0700</bug_when>
    <thetext>Comment on attachment 105557
adds a basic test

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

&gt; Source/WebCore/testing/Internals.cpp:275
&gt; +    if (HTMLInputElement* input = textField-&gt;toInputElement())

Wow, never saw this function before. Having toInputElement is crazy. Did we really add that?! Why have this for one specific element type?

&gt; LayoutTests/fast/forms/textfield-lastchange-was-useredit.html:13
&gt; +if (!window.layoutTestController || !window.internals)

This is the only line of code that needs to say &quot;window.&quot; in its expression.

&gt; LayoutTests/fast/forms/textfield-lastchange-was-useredit.html:22
&gt; +    shouldBeFalse(&apos;window.internals.wasLastChangeUserEdit(textField)&apos;);

Just internals would be fine.

&gt; LayoutTests/fast/forms/textfield-lastchange-was-useredit.html:26
&gt; +    textField.value = &apos;hello&apos;;
&gt; +    debug(&apos;\nAfter setting value&apos;);
&gt; +    shouldBeFalse(&apos;window.internals.wasLastChangeUserEdit(textField)&apos;);

Another way to write this is:

    shouldBeFalse(&quot;textField.value = &apos;hello&apos;; internals.wasLastChangeUserEdit(textField)&quot;);

Using lines like that makes the test output less wordy than all those debug statements.

&gt; LayoutTests/fast/forms/textfield-lastchange-was-useredit.html:59
&gt; +        textField.textContent = &quot;hello\nworld&quot;;
&gt; +        debug(&apos;\nAfter modifying textContent&apos;);
&gt; +        shouldBeFalse(&apos;window.internals.wasLastChangeUserEdit(textField)&apos;);

Maybe should test modifying innerText too?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>458629</commentid>
    <comment_count>3</comment_count>
      <attachid>105557</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-08-29 18:41:23 -0700</bug_when>
    <thetext>Comment on attachment 105557
adds a basic test

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

&gt;&gt; Source/WebCore/testing/Internals.cpp:275
&gt;&gt; +    if (HTMLInputElement* input = textField-&gt;toInputElement())
&gt; 
&gt; Wow, never saw this function before. Having toInputElement is crazy. Did we really add that?! Why have this for one specific element type?

I think it was for WML-HTML abstraction.  toInputElement() returned dom/InputElement.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>458636</commentid>
    <comment_count>4</comment_count>
      <attachid>105557</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-08-29 18:43:28 -0700</bug_when>
    <thetext>Comment on attachment 105557
adds a basic test

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

&gt;&gt;&gt; Source/WebCore/testing/Internals.cpp:275
&gt;&gt;&gt; +    if (HTMLInputElement* input = textField-&gt;toInputElement())
&gt;&gt; 
&gt;&gt; Wow, never saw this function before. Having toInputElement is crazy. Did we really add that?! Why have this for one specific element type?
&gt; 
&gt; I think it was for WML-HTML abstraction.  toInputElement() returned dom/InputElement.

I think we should stop using it, use hasTagName(inputTag) instead, and get rid of it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>458638</commentid>
    <comment_count>5</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-08-29 18:47:44 -0700</bug_when>
    <thetext>Thanks for the review! THAT was quick.

(In reply to comment #3)
&gt; (From update of attachment 105557 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=105557&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebCore/testing/Internals.cpp:275
&gt; &gt;&gt; +    if (HTMLInputElement* input = textField-&gt;toInputElement())
&gt; &gt; 
&gt; &gt; Wow, never saw this function before. Having toInputElement is crazy. Did we really add that?! Why have this for one specific element type?
&gt; 
&gt; I think it was for WML-HTML abstraction.  toInputElement() returned dom/InputElement.

I&apos;ll avoid using this function then.

(In reply to comment #2)
&gt; &gt; LayoutTests/fast/forms/textfield-lastchange-was-useredit.html:13
&gt; &gt; +if (!window.layoutTestController || !window.internals)
&gt; 
&gt; This is the only line of code that needs to say &quot;window.&quot; in its expression.

Oops, you&apos;re right. Will remove &quot;window.&quot; from other lines.

&gt; &gt; LayoutTests/fast/forms/textfield-lastchange-was-useredit.html:26
&gt; &gt; +    textField.value = &apos;hello&apos;;
&gt; &gt; +    debug(&apos;\nAfter setting value&apos;);
&gt; &gt; +    shouldBeFalse(&apos;window.internals.wasLastChangeUserEdit(textField)&apos;);
&gt; 
&gt; Another way to write this is:
&gt; 
&gt;     shouldBeFalse(&quot;textField.value = &apos;hello&apos;; internals.wasLastChangeUserEdit(textField)&quot;);
&gt; 
&gt; Using lines like that makes the test output less wordy than all those debug statements.

Okay.  I guess I&apos;ll change to that style for simple cases.

&gt; &gt; LayoutTests/fast/forms/textfield-lastchange-was-useredit.html:59
&gt; &gt; +        textField.textContent = &quot;hello\nworld&quot;;
&gt; &gt; +        debug(&apos;\nAfter modifying textContent&apos;);
&gt; &gt; +        shouldBeFalse(&apos;window.internals.wasLastChangeUserEdit(textField)&apos;);
&gt; 
&gt; Maybe should test modifying innerText too?

That&apos;s a good point.  Will do.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>458642</commentid>
    <comment_count>6</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-08-29 18:49:14 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; &gt; I think it was for WML-HTML abstraction.  toInputElement() returned dom/InputElement.
&gt; 
&gt; I think we should stop using it, use hasTagName(inputTag) instead, and get rid of it.

Enthusiastically agreed.  Filed https://bugs.webkit.org/show_bug.cgi?id=67175.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>458647</commentid>
    <comment_count>7</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-08-29 19:02:49 -0700</bug_when>
    <thetext>Committed r94038: &lt;http://trac.webkit.org/changeset/94038&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>105557</attachid>
            <date>2011-08-29 18:27:28 -0700</date>
            <delta_ts>2011-08-29 18:43:28 -0700</delta_ts>
            <desc>adds a basic test</desc>
            <filename>bug-67173-20110829182727.patch</filename>
            <type>text/plain</type>
            <size>8839</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk0MDMzKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMDgtMjkgIFJ5b3N1a2Ug
Tml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIGEgdGVzdCBmb3IgbGFzdENo
YW5nZVdhc1VzZXJFZGl0IGluIEhUTUxJbnB1dEVsZW1lbnQgYW5kIEhUTUxUZXh0QXJlYUVsZW1l
bnQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY3MTcz
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRXhwb3Nl
ZCBIVE1MSW5wdXRFbGVtZW50OjpsYXN0Q2hhbmdlV2FzVXNlckVkaXQgYW5kIEhUTUxUZXh0QXJl
YUVsZW1lbnQ6Omxhc3RDaGFuZ2VXYXNVc2VyRWRpdAorICAgICAgICB2aWEgaW50ZXJuYWxzLndh
c0xhc3RDaGFuZ2VVc2VyRWRpdChFbGVtZW50KiwgRXhjZXB0aW9uQ29kZSYpLiBUaGUgZmlyc3Qg
YXJndW1lbnQgbXVzdCBiZQorICAgICAgICBhbiBpbnB1dCBlbGVtZW50IG9yIGEgdGV4dGFyZWEg
ZWxlbWVudCBsYXN0Q2hhbmdlV2FzVXNlckVkaXQgaXMgY2FsbGVkIHVwb24uCisKKyAgICAgICAg
VGVzdDogZmFzdC9mb3Jtcy90ZXh0ZmllbGQtbGFzdGNoYW5nZS13YXMtdXNlcmVkaXQuaHRtbAor
CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW50
ZXJuYWxzOjp3YXNMYXN0Q2hhbmdlVXNlckVkaXQpOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJu
YWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaWRsOgorCiAyMDExLTA4LTI5ICBK
b2huIEJhdW1hbiAgPGpiYXVtYW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFNwZWVkIHVwIHRl
eEltYWdlIGZyb20gQkdSQQpJbmRleDogU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAko
cmV2aXNpb24gOTQwMjYpCisrKyBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTMyLDYgKzMyLDkgQEAKICNpbmNsdWRlICJEb2N1bWVudE1hcmtl
ckNvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJFbGVtZW50LmgiCiAjaW5jbHVkZSAiRXhjZXB0aW9u
Q29kZS5oIgorI2luY2x1ZGUgIkhUTUxJbnB1dEVsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MTmFt
ZXMuaCIKKyNpbmNsdWRlICJIVE1MVGV4dEFyZWFFbGVtZW50LmgiCiAjaW5jbHVkZSAiSW5zcGVj
dG9yQ29udHJvbGxlci5oIgogI2luY2x1ZGUgIk1lbW9yeUNhY2hlLmgiCiAjaW5jbHVkZSAiTm9k
ZVJlbmRlcmluZ0NvbnRleHQuaCIKQEAgLTI2Miw1ICsyNjUsMjIgQEAgdm9pZCBJbnRlcm5hbHM6
OnJlc2V0KERvY3VtZW50KiBkb2N1bWVudAogICAgIH0KIH0KIAorYm9vbCBJbnRlcm5hbHM6Ondh
c0xhc3RDaGFuZ2VVc2VyRWRpdChFbGVtZW50KiB0ZXh0RmllbGQsIEV4Y2VwdGlvbkNvZGUmIGVj
KQoreworICAgIGlmICghdGV4dEZpZWxkKSB7CisgICAgICAgIGVjID0gSU5WQUxJRF9BQ0NFU1Nf
RVJSOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgaWYgKEhUTUxJbnB1dEVs
ZW1lbnQqIGlucHV0ID0gdGV4dEZpZWxkLT50b0lucHV0RWxlbWVudCgpKQorICAgICAgICByZXR1
cm4gaW5wdXQtPmxhc3RDaGFuZ2VXYXNVc2VyRWRpdCgpOworCisgICAgaWYgKHRleHRGaWVsZC0+
aGFzVGFnTmFtZShIVE1MTmFtZXM6OnRleHRhcmVhVGFnKSkKKyAgICAgICAgcmV0dXJuIHN0YXRp
Y19jYXN0PEhUTUxUZXh0QXJlYUVsZW1lbnQqPih0ZXh0RmllbGQpLT5sYXN0Q2hhbmdlV2FzVXNl
ckVkaXQoKTsKKworICAgIGVjID0gSU5WQUxJRF9OT0RFX1RZUEVfRVJSOworICAgIHJldHVybiBm
YWxzZTsKK30KKwogfQogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgJKHJldmlz
aW9uIDk0MDI2KQorKysgU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNzYsNiArNzYsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRQYXNzd29yZEVj
aG9FbmFibGVkKERvY3VtZW50KiwgYm9vbCBlbmFibGVkLCBFeGNlcHRpb25Db2RlJik7CiAgICAg
dm9pZCBzZXRQYXNzd29yZEVjaG9EdXJhdGlvbkluU2Vjb25kcyhEb2N1bWVudCosIGRvdWJsZSBk
dXJhdGlvbkluU2Vjb25kcywgRXhjZXB0aW9uQ29kZSYpOwogCisgICAgYm9vbCB3YXNMYXN0Q2hh
bmdlVXNlckVkaXQoRWxlbWVudCogdGV4dEZpZWxkLCBFeGNlcHRpb25Db2RlJik7CisKICAgICBz
dGF0aWMgY29uc3QgY2hhciogaW50ZXJuYWxzSWQ7CiAKIHByaXZhdGU6CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCShyZXZpc2lvbiA5NDAyNikKKysrIFNvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAkod29ya2luZyBjb3B5KQpAQCAtNDksNiArNDksOCBA
QCBtb2R1bGUgd2luZG93IHsKIAogICAgICAgICB2b2lkIHNldFBhc3N3b3JkRWNob0VuYWJsZWQo
aW4gRG9jdW1lbnQgZG9jdW1lbnQsIGluIGJvb2xlYW4gZW5hYmxlZCkgcmFpc2VzKERPTUV4Y2Vw
dGlvbik7CiAgICAgICAgIHZvaWQgc2V0UGFzc3dvcmRFY2hvRHVyYXRpb25JblNlY29uZHMoaW4g
RG9jdW1lbnQgZG9jdW1lbnQsIGluIGRvdWJsZSBkdXJhdGlvbkluU2Vjb25kcykgcmFpc2VzKERP
TUV4Y2VwdGlvbik7CisKKyAgICAgICAgYm9vbGVhbiB3YXNMYXN0Q2hhbmdlVXNlckVkaXQoaW4g
RWxlbWVudCB0ZXh0RmllbGQpIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKICAgICB9OwogfQogCklu
ZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCShyZXZpc2lvbiA5NDAzMykKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDExLTA4LTI5ICBSeW9zdWtlIE5pd2EgIDxybml3
YUB3ZWJraXQub3JnPgorCisgICAgICAgIEFkZCBhIHRlc3QgZm9yIGxhc3RDaGFuZ2VXYXNVc2Vy
RWRpdCBpbiBIVE1MSW5wdXRFbGVtZW50IGFuZCBIVE1MVGV4dEFyZWFFbGVtZW50CisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02NzE3MworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIHNvbWUgYmFzaWMg
dGVzdCBmb3IgSFRNTElucHV0RWxlbWVudDo6bGFzdENoYW5nZVdhc1VzZXJFZGl0IGFuZAorICAg
ICAgICBIVE1MVGV4dEFyZWFFbGVtZW50OjpsYXN0Q2hhbmdlV2FzVXNlckVkaXQuCisKKyAgICAg
ICAgKiBmYXN0L2Zvcm1zL3RleHRmaWVsZC1sYXN0Y2hhbmdlLXdhcy11c2VyZWRpdC1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvZm9ybXMvdGV4dGZpZWxkLWxhc3RjaGFuZ2Ut
d2FzLXVzZXJlZGl0Lmh0bWw6IEFkZGVkLgorCiAyMDExLTA4LTI5ICBLZW5qaSBJbWFzYWtpICA8
aW1hc2FraUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW0Nocm9taXVtXSBBZGRlZCBuZXcgcmVi
YXNlbGluZXMgZm9yIG1lZGlhL21lZGlhLWRvY3VtZW50LWF1ZGlvLXJlcGFpbnQuCkluZGV4OiBM
YXlvdXRUZXN0cy9mYXN0L2Zvcm1zL3RleHRmaWVsZC1sYXN0Y2hhbmdlLXdhcy11c2VyZWRpdC1l
eHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy90ZXh0Zmll
bGQtbGFzdGNoYW5nZS13YXMtdXNlcmVkaXQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy90ZXh0ZmllbGQtbGFzdGNoYW5nZS13YXMtdXNlcmVkaXQt
ZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDU5IEBACitpbnB1dAorCitJbml0
aWFsIHN0YXRlCitQQVNTIHdpbmRvdy5pbnRlcm5hbHMud2FzTGFzdENoYW5nZVVzZXJFZGl0KHRl
eHRGaWVsZCkgaXMgZmFsc2UKKworQWZ0ZXIgc2V0dGluZyB2YWx1ZQorUEFTUyB3aW5kb3cuaW50
ZXJuYWxzLndhc0xhc3RDaGFuZ2VVc2VyRWRpdCh0ZXh0RmllbGQpIGlzIGZhbHNlCisKK0FmdGVy
IHR5cGluZyAiIHdvcmxkIgorUEFTUyB3aW5kb3cuaW50ZXJuYWxzLndhc0xhc3RDaGFuZ2VVc2Vy
RWRpdCh0ZXh0RmllbGQpIGlzIHRydWUKKworQWZ0ZXIgSGlkaW5nIHRoZSBpbnB1dAorUEFTUyB3
aW5kb3cuaW50ZXJuYWxzLndhc0xhc3RDaGFuZ2VVc2VyRWRpdCh0ZXh0RmllbGQpIGlzIHRydWUK
KworQWZ0ZXIgYXNzaWduaW5nIHZhbHVlIGFnYWluCitQQVNTIHdpbmRvdy5pbnRlcm5hbHMud2Fz
TGFzdENoYW5nZVVzZXJFZGl0KHRleHRGaWVsZCkgaXMgZmFsc2UKKworQWZ0ZXIgZGlzcGxheSB0
aGUgaW5wdXQgYWdhaW4KK1BBU1Mgd2luZG93LmludGVybmFscy53YXNMYXN0Q2hhbmdlVXNlckVk
aXQodGV4dEZpZWxkKSBpcyBmYWxzZQorCitBZnRlciBzZWxlY3RpbmcgYWxsCitQQVNTIHdpbmRv
dy5pbnRlcm5hbHMud2FzTGFzdENoYW5nZVVzZXJFZGl0KHRleHRGaWVsZCkgaXMgZmFsc2UKKwor
QWZ0ZXIgZGVsZXRpbmcKK1BBU1Mgd2luZG93LmludGVybmFscy53YXNMYXN0Q2hhbmdlVXNlckVk
aXQodGV4dEZpZWxkKSBpcyB0cnVlCisKKwordGV4dGFyZWEKKworSW5pdGlhbCBzdGF0ZQorUEFT
UyB3aW5kb3cuaW50ZXJuYWxzLndhc0xhc3RDaGFuZ2VVc2VyRWRpdCh0ZXh0RmllbGQpIGlzIGZh
bHNlCisKK0FmdGVyIHNldHRpbmcgdmFsdWUKK1BBU1Mgd2luZG93LmludGVybmFscy53YXNMYXN0
Q2hhbmdlVXNlckVkaXQodGV4dEZpZWxkKSBpcyBmYWxzZQorCitBZnRlciB0eXBpbmcgIiB3b3Js
ZCIKK1BBU1Mgd2luZG93LmludGVybmFscy53YXNMYXN0Q2hhbmdlVXNlckVkaXQodGV4dEZpZWxk
KSBpcyB0cnVlCisKK0FmdGVyIEhpZGluZyB0aGUgaW5wdXQKK1BBU1Mgd2luZG93LmludGVybmFs
cy53YXNMYXN0Q2hhbmdlVXNlckVkaXQodGV4dEZpZWxkKSBpcyB0cnVlCisKK0FmdGVyIGFzc2ln
bmluZyB2YWx1ZSBhZ2FpbgorUEFTUyB3aW5kb3cuaW50ZXJuYWxzLndhc0xhc3RDaGFuZ2VVc2Vy
RWRpdCh0ZXh0RmllbGQpIGlzIGZhbHNlCisKK0FmdGVyIGRpc3BsYXkgdGhlIGlucHV0IGFnYWlu
CitQQVNTIHdpbmRvdy5pbnRlcm5hbHMud2FzTGFzdENoYW5nZVVzZXJFZGl0KHRleHRGaWVsZCkg
aXMgZmFsc2UKKworQWZ0ZXIgc2VsZWN0aW5nIGFsbAorUEFTUyB3aW5kb3cuaW50ZXJuYWxzLndh
c0xhc3RDaGFuZ2VVc2VyRWRpdCh0ZXh0RmllbGQpIGlzIGZhbHNlCisKK0FmdGVyIGRlbGV0aW5n
CitQQVNTIHdpbmRvdy5pbnRlcm5hbHMud2FzTGFzdENoYW5nZVVzZXJFZGl0KHRleHRGaWVsZCkg
aXMgdHJ1ZQorCitBZnRlciBtb2RpZnlpbmcgdGV4dENvbnRlbnQKK0ZBSUwgd2luZG93LmludGVy
bmFscy53YXNMYXN0Q2hhbmdlVXNlckVkaXQodGV4dEZpZWxkKSBzaG91bGQgYmUgZmFsc2UuIFdh
cyB0cnVlLgorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQorCitURVNUIENPTVBMRVRF
CisKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvZm9ybXMvdGV4dGZpZWxkLWxhc3RjaGFuZ2Utd2Fz
LXVzZXJlZGl0Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9mb3Jtcy90ZXh0
ZmllbGQtbGFzdGNoYW5nZS13YXMtdXNlcmVkaXQuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL2Zhc3QvZm9ybXMvdGV4dGZpZWxkLWxhc3RjaGFuZ2Utd2FzLXVzZXJlZGl0Lmh0bWwJ
KHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNzMgQEAKKzwhRE9DVFlQRT4KKzxodG1sPgorPGhlYWQ+
Cis8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pz
LXRlc3Qtc3R5bGUuY3NzIj4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwIGlkPSJkZXNjcmlw
dGlvbiI+PC9wPgorPGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8aW5wdXQgdHlwZT0idGV4dCI+
PHRleHRhcmVhPjwvdGV4dGFyZWE+Cis8c2NyaXB0PgorCitpZiAoIXdpbmRvdy5sYXlvdXRUZXN0
Q29udHJvbGxlciB8fCAhd2luZG93LmludGVybmFscykKKyAgICB0ZXN0RmFpbGVkKCdUaGlzIHRl
c3QgcmVxdWlyZXMgYWNjZXNzIHRvIHdpbmRvdy5pbnRlcm5hbHMnKTsKKwordmFyIHRleHRGaWVs
ZDsKK2Z1bmN0aW9uIHJ1blRlc3QoZWxlbWVudCkgeworICAgIHRleHRGaWVsZCA9IGVsZW1lbnQ7
CisKKyAgICBkZWJ1ZygoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NvbnNvbGUnKS50ZXh0Q29u
dGVudC5sZW5ndGggPyAnXG5cbicgOiAnJykgKyB0ZXh0RmllbGQubG9jYWxOYW1lKTsKKyAgICBk
ZWJ1ZygnXG5Jbml0aWFsIHN0YXRlJyk7CisgICAgc2hvdWxkQmVGYWxzZSgnd2luZG93LmludGVy
bmFscy53YXNMYXN0Q2hhbmdlVXNlckVkaXQodGV4dEZpZWxkKScpOworCisgICAgdGV4dEZpZWxk
LnZhbHVlID0gJ2hlbGxvJzsKKyAgICBkZWJ1ZygnXG5BZnRlciBzZXR0aW5nIHZhbHVlJyk7Cisg
ICAgc2hvdWxkQmVGYWxzZSgnd2luZG93LmludGVybmFscy53YXNMYXN0Q2hhbmdlVXNlckVkaXQo
dGV4dEZpZWxkKScpOworCisgICAgdGV4dEZpZWxkLmZvY3VzKCk7CisgICAgdGV4dEZpZWxkLnNl
bGVjdGlvblN0YXJ0ID0gdGV4dEZpZWxkLnZhbHVlLmxlbmd0aDsKKyAgICB0ZXh0RmllbGQuc2Vs
ZWN0aW9uRW5kID0gdGV4dEZpZWxkLnNlbGVjdGlvblN0YXJ0OworICAgIGRvY3VtZW50LmV4ZWND
b21tYW5kKCdJbnNlcnRUZXh0JywgZmFsc2UsICIgd29ybGQiKTsKKyAgICBkZWJ1ZygnXG5BZnRl
ciB0eXBpbmcgIiB3b3JsZCInKTsKKyAgICBzaG91bGRCZVRydWUoJ3dpbmRvdy5pbnRlcm5hbHMu
d2FzTGFzdENoYW5nZVVzZXJFZGl0KHRleHRGaWVsZCknKTsKKworICAgIHRleHRGaWVsZC5zdHls
ZS5kaXNwbGF5ID0gJ25vbmUnOworICAgIGRlYnVnKCdcbkFmdGVyIEhpZGluZyB0aGUgaW5wdXQn
KTsKKyAgICBzaG91bGRCZVRydWUoJ3dpbmRvdy5pbnRlcm5hbHMud2FzTGFzdENoYW5nZVVzZXJF
ZGl0KHRleHRGaWVsZCknKTsKKworICAgIHRleHRGaWVsZC52YWx1ZSA9ICdXZWJLaXQnOworICAg
IGRlYnVnKCdcbkFmdGVyIGFzc2lnbmluZyB2YWx1ZSBhZ2FpbicpOworICAgIHNob3VsZEJlRmFs
c2UoJ3dpbmRvdy5pbnRlcm5hbHMud2FzTGFzdENoYW5nZVVzZXJFZGl0KHRleHRGaWVsZCknKTsK
KworICAgIHRleHRGaWVsZC5zdHlsZS5kaXNwbGF5ID0gbnVsbDsKKyAgICBkZWJ1ZygnXG5BZnRl
ciBkaXNwbGF5IHRoZSBpbnB1dCBhZ2FpbicpOworICAgIHNob3VsZEJlRmFsc2UoJ3dpbmRvdy5p
bnRlcm5hbHMud2FzTGFzdENoYW5nZVVzZXJFZGl0KHRleHRGaWVsZCknKTsKKworICAgIHRleHRG
aWVsZC5mb2N1cygpOworICAgIGRvY3VtZW50LmV4ZWNDb21tYW5kKCdTZWxlY3RBbGwnLCBmYWxz
ZSwgbnVsbCk7CisgICAgZGVidWcoJ1xuQWZ0ZXIgc2VsZWN0aW5nIGFsbCcpOworICAgIHNob3Vs
ZEJlRmFsc2UoJ3dpbmRvdy5pbnRlcm5hbHMud2FzTGFzdENoYW5nZVVzZXJFZGl0KHRleHRGaWVs
ZCknKTsKKworICAgIGRvY3VtZW50LmV4ZWNDb21tYW5kKCdEZWxldGUnLCBmYWxzZSwgbnVsbCk7
CisgICAgZGVidWcoJ1xuQWZ0ZXIgZGVsZXRpbmcnKTsKKyAgICBzaG91bGRCZVRydWUoJ3dpbmRv
dy5pbnRlcm5hbHMud2FzTGFzdENoYW5nZVVzZXJFZGl0KHRleHRGaWVsZCknKTsKKworICAgIGlm
ICh0ZXh0RmllbGQubG9jYWxOYW1lID09ICd0ZXh0YXJlYScpIHsKKyAgICAgICAgdGV4dEZpZWxk
LnRleHRDb250ZW50ID0gImhlbGxvXG53b3JsZCI7CisgICAgICAgIGRlYnVnKCdcbkFmdGVyIG1v
ZGlmeWluZyB0ZXh0Q29udGVudCcpOworICAgICAgICBzaG91bGRCZUZhbHNlKCd3aW5kb3cuaW50
ZXJuYWxzLndhc0xhc3RDaGFuZ2VVc2VyRWRpdCh0ZXh0RmllbGQpJyk7CisgICAgfQorCisgICAg
dGV4dEZpZWxkLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodGV4dEZpZWxkKTsKK30KKworcnVuVGVz
dChkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaW5wdXQnKVswXSk7CitydW5UZXN0KGRv
Y3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCd0ZXh0YXJlYScpWzBdKTsKKwordmFyIHN1Y2Nl
c3NmdWxseVBhcnNlZCA9IHRydWU7CisKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4uL2Zh
c3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0
bWw+Cg==
</data>
<flag name="review"
          id="101756"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>