<?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>36314</bug_id>
          
          <creation_ts>2010-03-18 11:47:28 -0700</creation_ts>
          <short_desc>Text field &quot;onchange&quot; event is triggered if actual value unchanged</short_desc>
          <delta_ts>2011-03-25 12:16: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>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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ivo Krab">ivo.krab</reporter>
          <assigned_to name="Emil A Eklund">eae</assigned_to>
          <cc>abarth</cc>
    
    <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>201447</commentid>
    <comment_count>0</comment_count>
    <who name="Ivo Krab">ivo.krab</who>
    <bug_when>2010-03-18 11:47:28 -0700</bug_when>
    <thetext>When the user types into a text field (input type=&quot;text&quot; or textarea) something that does not actually change the value of the field (i.e. the typed value is identical to the original value), blurring the field triggers the &quot;onchange&quot; event anyway.

This is unintuitive behavior and inconsistent with other browsers (FireFox, IE, although Opera behaves the same).

&quot;onchange&quot; should only be triggered if the new value is different from the original one.

In the attached test case, for comparison there is also a &lt;select&gt;: if one goes through the list and ends up seleting the same value as before, no onchange is triggered, only if the value actually changed.

For the text input and textarea, though, typing an &quot;l&quot; over the last letter &quot;l&quot; results in an &quot;onchange&quot; after moving the focus away.

Confirmed on r56152.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363414</commentid>
    <comment_count>1</comment_count>
      <attachid>84957</attachid>
    <who name="Emil A Eklund">eae</who>
    <bug_when>2011-03-07 11:01:43 -0800</bug_when>
    <thetext>Created attachment 84957
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>368439</commentid>
    <comment_count>2</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-16 11:58:41 -0700</bug_when>
    <thetext>Emil, I wonder if we can keep the machinery of comparing text value in the InputType? Storing Strings in a RenderObject just seems... suboptimal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>368441</commentid>
    <comment_count>3</comment_count>
    <who name="Emil A Eklund">eae</who>
    <bug_when>2011-03-16 12:04:23 -0700</bug_when>
    <thetext>Yeah, it seems a bit. I didn&apos;t want to change the code too much but moving logic into InputType makes sense. I&apos;ll update the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>373245</commentid>
    <comment_count>4</comment_count>
      <attachid>86864</attachid>
    <who name="Emil A Eklund">eae</who>
    <bug_when>2011-03-24 18:33:10 -0700</bug_when>
    <thetext>Created attachment 86864
Patch

This was a bit tricker than I first though, added tests for some of the tricker cases and made sure it works with input types other than text (checkbox, radio, password, search, number, range).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>373603</commentid>
    <comment_count>5</comment_count>
      <attachid>86864</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-03-25 10:53:58 -0700</bug_when>
    <thetext>Comment on attachment 86864
Patch

ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>373655</commentid>
    <comment_count>6</comment_count>
      <attachid>86864</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-25 12:08:49 -0700</bug_when>
    <thetext>Comment on attachment 86864
Patch

Clearing flags on attachment: 86864

Committed r81978: &lt;http://trac.webkit.org/changeset/81978&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>373656</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-25 12:08:52 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>373661</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-03-25 12:16:24 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/81978 might have broken Chromium Linux Release and EFL Linux Release (Build)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>84957</attachid>
            <date>2011-03-07 11:01:43 -0800</date>
            <delta_ts>2011-03-24 18:33:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>36314.patch</filename>
            <type>text/plain</type>
            <size>8393</size>
            <attacher name="Emil A Eklund">eae</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDgwNDc4KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMDMtMDcgIEVtaWwgQSBF
a2x1bmQgIDxlYWVAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFRleHQgZmllbGQgIm9uY2hhbmdlIiBldmVudCBpcyB0cmlnZ2Vy
ZWQgaWYgYWN0dWFsIHZhbHVlIHVuY2hhbmdlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzYzMTQKKworICAgICAgICBDaGFuZ2UgUmVuZGVyVGV4dENv
bnRyb2w6OnN1YnRyZWVIYXNDaGFuZ2VkIHRvIG9ubHkgcmV0dXJuIHRydWUgaWYgdGhlCisgICAg
ICAgIHN1YnRyZWUgaGFzIGNoYW5nZWQgc2luY2UgdGhlIGxhc3QgZXZlbnQgd2FzIHRyaWdnZXJl
ZC4KKworICAgICAgICBUZXN0OiBmYXN0L2V2ZW50cy9vbmNoYW5nZS10ZXh0LWZvcm0tZmllbGQu
aHRtbAorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlclRleHRDb250cm9sOjpzZXRDaGFuZ2VkU2luY2VMYXN0Q2hhbmdl
RXZlbnQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGV4dENvbnRyb2w6OnNldElubmVyVGV4
dFZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRleHRDb250cm9sOjpzdWJ0cmVlSGFz
Q2hhbmdlZCk6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sLmg6CisKIDIw
MTEtMDMtMDcgIFlvbmcgTGkgIDx5b2xpQHJpbS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
RGFyaW4gQWRsZXIuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENv
bnRyb2wuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJU
ZXh0Q29udHJvbC5jcHAJKHJldmlzaW9uIDgwMjY5KQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL1JlbmRlclRleHRDb250cm9sLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODYsNiArODYsMTMg
QEAgUmVuZGVyVGV4dENvbnRyb2w6On5SZW5kZXJUZXh0Q29udHJvbCgpCiAgICAgICAgIG1faW5u
ZXJUZXh0LT5kZXRhY2goKTsKIH0KIAordm9pZCBSZW5kZXJUZXh0Q29udHJvbDo6c2V0Q2hhbmdl
ZFNpbmNlTGFzdENoYW5nZUV2ZW50KGJvb2wgd2FzQ2hhbmdlZFNpbmNlTGFzdENoYW5nZUV2ZW50
KQoreworICAgIG1fd2FzQ2hhbmdlZFNpbmNlTGFzdENoYW5nZUV2ZW50ID0gd2FzQ2hhbmdlZFNp
bmNlTGFzdENoYW5nZUV2ZW50OworICAgIGlmICghbV93YXNDaGFuZ2VkU2luY2VMYXN0Q2hhbmdl
RXZlbnQpCisgICAgICAgIG1fdGV4dEFzT2ZMYXN0Q2hhbmdlRXZlbnQgPSB0ZXh0KCk7Cit9CisK
IHZvaWQgUmVuZGVyVGV4dENvbnRyb2w6OnN0eWxlRGlkQ2hhbmdlKFN0eWxlRGlmZmVyZW5jZSBk
aWZmLCBjb25zdCBSZW5kZXJTdHlsZSogb2xkU3R5bGUpCiB7CiAgICAgUmVuZGVyQmxvY2s6OnN0
eWxlRGlkQ2hhbmdlKGRpZmYsIG9sZFN0eWxlKTsKQEAgLTE5Myw2ICsyMDAsNyBAQCB2b2lkIFJl
bmRlclRleHRDb250cm9sOjpzZXRJbm5lclRleHRWYWx1CiAgICAgfQogCiAgICAgc3RhdGljX2Nh
c3Q8RWxlbWVudCo+KG5vZGUoKSktPnNldEZvcm1Db250cm9sVmFsdWVNYXRjaGVzUmVuZGVyZXIo
dHJ1ZSk7CisgICAgbV90ZXh0QXNPZkxhc3RDaGFuZ2VFdmVudCA9IHRleHQoKTsKIH0KIAogdm9p
ZCBSZW5kZXJUZXh0Q29udHJvbDo6c2V0TGFzdENoYW5nZVdhc1VzZXJFZGl0KGJvb2wgbGFzdENo
YW5nZVdhc1VzZXJFZGl0KQpAQCAtMzUxLDcgKzM1OSw3IEBAIGludCBSZW5kZXJUZXh0Q29udHJv
bDo6aW5kZXhGb3JWaXNpYmxlUG8KIAogdm9pZCBSZW5kZXJUZXh0Q29udHJvbDo6c3VidHJlZUhh
c0NoYW5nZWQoKQogewotICAgIG1fd2FzQ2hhbmdlZFNpbmNlTGFzdENoYW5nZUV2ZW50ID0gdHJ1
ZTsKKyAgICBtX3dhc0NoYW5nZWRTaW5jZUxhc3RDaGFuZ2VFdmVudCA9IG1fdGV4dEFzT2ZMYXN0
Q2hhbmdlRXZlbnQgIT0gdGV4dCgpOwogICAgIG1fbGFzdENoYW5nZVdhc1VzZXJFZGl0ID0gdHJ1
ZTsKIH0KIApJbmRleDogU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9s
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHRDb250
cm9sLmgJKHJldmlzaW9uIDgwMjY5KQorKysgU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clRleHRDb250cm9sLmgJKHdvcmtpbmcgY29weSkKQEAgLTM3LDcgKzM3LDcgQEAgcHVibGljOgog
ICAgIEhUTUxFbGVtZW50KiBpbm5lclRleHRFbGVtZW50KCkgY29uc3Q7CiAKICAgICBib29sIHdh
c0NoYW5nZWRTaW5jZUxhc3RDaGFuZ2VFdmVudCgpIGNvbnN0IHsgcmV0dXJuIG1fd2FzQ2hhbmdl
ZFNpbmNlTGFzdENoYW5nZUV2ZW50OyB9Ci0gICAgdm9pZCBzZXRDaGFuZ2VkU2luY2VMYXN0Q2hh
bmdlRXZlbnQoYm9vbCB3YXNDaGFuZ2VkU2luY2VMYXN0Q2hhbmdlRXZlbnQpIHsgbV93YXNDaGFu
Z2VkU2luY2VMYXN0Q2hhbmdlRXZlbnQgPSB3YXNDaGFuZ2VkU2luY2VMYXN0Q2hhbmdlRXZlbnQ7
IH0KKyAgICB2b2lkIHNldENoYW5nZWRTaW5jZUxhc3RDaGFuZ2VFdmVudChib29sIHdhc0NoYW5n
ZWRTaW5jZUxhc3RDaGFuZ2VFdmVudCk7CiAKICAgICBib29sIGxhc3RDaGFuZ2VXYXNVc2VyRWRp
dCgpIGNvbnN0IHsgcmV0dXJuIG1fbGFzdENoYW5nZVdhc1VzZXJFZGl0OyB9CiAgICAgdm9pZCBz
ZXRMYXN0Q2hhbmdlV2FzVXNlckVkaXQoYm9vbCBsYXN0Q2hhbmdlV2FzVXNlckVkaXQpOwpAQCAt
MTE3LDYgKzExNyw3IEBAIHByaXZhdGU6CiAKICAgICBib29sIG1fd2FzQ2hhbmdlZFNpbmNlTGFz
dENoYW5nZUV2ZW50OwogICAgIGJvb2wgbV9sYXN0Q2hhbmdlV2FzVXNlckVkaXQ7CisgICAgU3Ry
aW5nIG1fdGV4dEFzT2ZMYXN0Q2hhbmdlRXZlbnQ7CiAgICAgUmVmUHRyPFRleHRDb250cm9sSW5u
ZXJUZXh0RWxlbWVudD4gbV9pbm5lclRleHQ7CiB9OwogCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA4MDQ3
OCkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1
IEBACisyMDExLTAzLTA3ICBFbWlsIEEgRWtsdW5kICA8ZWFlQGNocm9taXVtLm9yZz4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXh0IGZpZWxkICJv
bmNoYW5nZSIgZXZlbnQgaXMgdHJpZ2dlcmVkIGlmIGFjdHVhbCB2YWx1ZSB1bmNoYW5nZWQKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM2MzE0CisKKyAg
ICAgICAgQWRkIHRlc3RzIGZvciB0ZXh0IGZpZWxkIGNoYW5nZSBldmVudHMuCisKKyAgICAgICAg
KiBmYXN0L2V2ZW50cy9vbmNoYW5nZS10ZXh0LWZvcm0tZmllbGQtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBmYXN0L2V2ZW50cy9vbmNoYW5nZS10ZXh0LWZvcm0tZmllbGQuaHRtbDog
QWRkZWQuCisKIDIwMTEtMDMtMDcgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+
CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgU3RldmUgQmxvY2suCkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L2V2ZW50cy9vbmNoYW5nZS10ZXh0LWZvcm0tZmllbGQtZXhwZWN0ZWQudHh0Cj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL29uY2hhbmdlLXRleHQtZm9ybS1maWVsZC1l
eHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9vbmNo
YW5nZS10ZXh0LWZvcm0tZmllbGQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsx
LDIzIEBACisgICAgICAKK1BBU1Mgc2ltdWxhdGVUZXh0RW50cnkoZWxlbWVudHNbMF0sICcnLCB0
cnVlKTsgaXMgZmFsc2UKK1BBU1Mgc2ltdWxhdGVUZXh0RW50cnkoZWxlbWVudHNbMF0sICdmbycs
IHRydWUpOyBpcyB0cnVlCitQQVNTIHNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRzWzBdLCAnbycs
IGZhbHNlKTsgaXMgdHJ1ZQorUEFTUyBzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1swXSwgJ2Zv
bycsIHRydWUpOyBpcyBmYWxzZQorUEFTUyBzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1swXSwg
J2ZvbycsIHRydWUpOyBpcyBmYWxzZQorUEFTUyBzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1sw
XSwgJyAnLCBmYWxzZSk7IGlzIHRydWUKK1BBU1Mgc2ltdWxhdGVUZXh0RW50cnkoZWxlbWVudHNb
MF0sICdmb28gYmFyJywgdHJ1ZSk7IGlzIHRydWUKK1BBU1Mgc2ltdWxhdGVUZXh0RW50cnkoZWxl
bWVudHNbMF0sICdmb28gYmFyJywgdHJ1ZSk7IGlzIGZhbHNlCitQQVNTIHNpbXVsYXRlVGV4dEVu
dHJ5KGVsZW1lbnRzWzFdLCAnJywgdHJ1ZSk7IGlzIHRydWUKK1BBU1Mgc2ltdWxhdGVUZXh0RW50
cnkoZWxlbWVudHNbMV0sICdmbycsIHRydWUpOyBpcyB0cnVlCitQQVNTIHNpbXVsYXRlVGV4dEVu
dHJ5KGVsZW1lbnRzWzFdLCAnbycsIGZhbHNlKTsgaXMgdHJ1ZQorUEFTUyBzaW11bGF0ZVRleHRF
bnRyeShlbGVtZW50c1sxXSwgJ2ZvbycsIHRydWUpOyBpcyBmYWxzZQorUEFTUyBzaW11bGF0ZVRl
eHRFbnRyeShlbGVtZW50c1syXSwgJycsIHRydWUpOyBpcyBmYWxzZQorUEFTUyBzaW11bGF0ZVRl
eHRFbnRyeShlbGVtZW50c1syXSwgJ2ZvJywgdHJ1ZSk7IGlzIHRydWUKK1BBU1Mgc2ltdWxhdGVU
ZXh0RW50cnkoZWxlbWVudHNbMl0sICdvJywgZmFsc2UpOyBpcyB0cnVlCitQQVNTIHNpbXVsYXRl
VGV4dEVudHJ5KGVsZW1lbnRzWzJdLCAnZm9vJywgdHJ1ZSk7IGlzIGZhbHNlCitQQVNTIHNpbXVs
YXRlVGV4dEVudHJ5KGVsZW1lbnRzWzNdLCAnZm9vJywgdHJ1ZSk7IGlzIGZhbHNlCitQQVNTIHNp
bXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRzWzNdLCAnZm9vJywgdHJ1ZSk7IGlzIGZhbHNlCitQQVNT
IHNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRzWzNdLCAnZm8nLCB0cnVlKTsgaXMgdHJ1ZQorUEFT
UyBzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1szXSwgJ28nLCBmYWxzZSk7IGlzIHRydWUKK1BB
U1Mgc2ltdWxhdGVUZXh0RW50cnkoZWxlbWVudHNbM10sICdmb28nLCB0cnVlKTsgaXMgZmFsc2UK
KwpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvb25jaGFuZ2UtdGV4dC1mb3JtLWZpZWxk
Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvZmFzdC9ldmVudHMvb25jaGFuZ2UtdGV4
dC1mb3JtLWZpZWxkLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50
cy9vbmNoYW5nZS10ZXh0LWZvcm0tZmllbGQuaHRtbAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSw2
NCBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi9qcy9yZXNvdXJjZXMvanMtdGVz
dC1wcmUuanMiPjwvc2NyaXB0PgorPGJvZHk+CisgICAgPGRpdiBpZD0idGVzdCI+CisgICAgICAg
IDxpbnB1dCB0eXBlPSJ0ZXh0Ij4KKyAgICAgICAgPGlucHV0IHR5cGU9InRleHQidmFsdWU9ImZv
byI+CisgICAgICAgIDx0ZXh0YXJlYT48L3RleHRhcmVhPgorICAgICAgICA8dGV4dGFyZWE+Zm9v
PC90ZXh0YXJlYT4KKyAgICA8L2Rpdj4KKyAgICA8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzwv
Ym9keT4KKzxzY3JpcHQ+CisKKyAgICBmdW5jdGlvbiBzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50
LCB0ZXh0LCBvcHRfY2xlYXIpIHsKKyAgICAgICAgaWYgKCF3aW5kb3cuZXZlbnRTZW5kZXIpCisg
ICAgICAgICAgICByZXR1cm4gbnVsbDsKKyAgICAgICAgICAgIAorICAgICAgICB2YXIgZmlyZWRF
dmVudCA9IGZhbHNlOworICAgICAgICBmdW5jdGlvbiBsaXN0ZW5lcihldmVudCkgeworICAgICAg
ICAgICAgZmlyZWRFdmVudCA9IHRydWU7CisgICAgICAgIH0KKyAgICAgICAgZWxlbWVudC5hZGRF
dmVudExpc3RlbmVyKCdjaGFuZ2UnLCBsaXN0ZW5lcik7CisgICAgICAgIGVsZW1lbnQuZm9jdXMo
KTsKKyAgICAgICAgaWYgKG9wdF9jbGVhcikgeworICAgICAgICAgICAgZWxlbWVudC5zZWxlY3Qo
KTsKKyAgICAgICAgICAgIGV2ZW50U2VuZGVyLmtleURvd24oJ2RlbGV0ZScpOworICAgICAgICB9
CisgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGV4dC5sZW5ndGg7IGkrKykgeworICAgICAg
ICAgICAgZXZlbnRTZW5kZXIua2V5RG93bih0ZXh0LmNoYXJBdChpKSk7CisgICAgICAgIH0KKyAg
ICAgICAgZWxlbWVudC5ibHVyKCk7CisgICAgICAgIGVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5l
cignY2hhbmdlJywgbGlzdGVuZXIpOworICAgICAgICByZXR1cm4gZmlyZWRFdmVudDsKKyAgICB9
CisKKyAgICB2YXIgZWxlbWVudHMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdCcpLmdl
dEVsZW1lbnRzQnlUYWdOYW1lKCcqJyk7CisKKyAgICBzaG91bGRCZSgic2ltdWxhdGVUZXh0RW50
cnkoZWxlbWVudHNbMF0sICcnLCB0cnVlKTsiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgic2lt
dWxhdGVUZXh0RW50cnkoZWxlbWVudHNbMF0sICdmbycsIHRydWUpOyIsICJ0cnVlIik7CisgICAg
c2hvdWxkQmUoInNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRzWzBdLCAnbycsIGZhbHNlKTsiLCAi
dHJ1ZSIpOworICAgIHNob3VsZEJlKCJzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1swXSwgJ2Zv
bycsIHRydWUpOyAiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgic2ltdWxhdGVUZXh0RW50cnko
ZWxlbWVudHNbMF0sICdmb28nLCB0cnVlKTsgIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoInNp
bXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRzWzBdLCAnICcsIGZhbHNlKTsgIiwgInRydWUiKTsKKyAg
ICBzaG91bGRCZSgic2ltdWxhdGVUZXh0RW50cnkoZWxlbWVudHNbMF0sICdmb28gYmFyJywgdHJ1
ZSk7ICIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoInNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRz
WzBdLCAnZm9vIGJhcicsIHRydWUpOyAiLCAiZmFsc2UiKTsKKworICAgIHNob3VsZEJlKCJzaW11
bGF0ZVRleHRFbnRyeShlbGVtZW50c1sxXSwgJycsIHRydWUpOyIsICJ0cnVlIik7CisgICAgc2hv
dWxkQmUoInNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRzWzFdLCAnZm8nLCB0cnVlKTsiLCAidHJ1
ZSIpOworICAgIHNob3VsZEJlKCJzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1sxXSwgJ28nLCBm
YWxzZSk7IiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgic2ltdWxhdGVUZXh0RW50cnkoZWxlbWVu
dHNbMV0sICdmb28nLCB0cnVlKTsgIiwgImZhbHNlIik7CisKKyAgICBzaG91bGRCZSgic2ltdWxh
dGVUZXh0RW50cnkoZWxlbWVudHNbMl0sICcnLCB0cnVlKTsiLCAiZmFsc2UiKTsKKyAgICBzaG91
bGRCZSgic2ltdWxhdGVUZXh0RW50cnkoZWxlbWVudHNbMl0sICdmbycsIHRydWUpOyIsICJ0cnVl
Iik7CisgICAgc2hvdWxkQmUoInNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRzWzJdLCAnbycsIGZh
bHNlKTsiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50
c1syXSwgJ2ZvbycsIHRydWUpOyAiLCAiZmFsc2UiKTsKKworICAgIHNob3VsZEJlKCJzaW11bGF0
ZVRleHRFbnRyeShlbGVtZW50c1szXSwgJ2ZvbycsIHRydWUpOyIsICJmYWxzZSIpOworICAgIHNo
b3VsZEJlKCJzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1szXSwgJ2ZvbycsIHRydWUpOyIsICJm
YWxzZSIpOworICAgIHNob3VsZEJlKCJzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1szXSwgJ2Zv
JywgdHJ1ZSk7IiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgic2ltdWxhdGVUZXh0RW50cnkoZWxl
bWVudHNbM10sICdvJywgZmFsc2UpOyIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoInNpbXVsYXRl
VGV4dEVudHJ5KGVsZW1lbnRzWzNdLCAnZm9vJywgdHJ1ZSk7ICIsICJmYWxzZSIpOworPC9zY3Jp
cHQ+Cis8L2h0bWw+IAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>86864</attachid>
            <date>2011-03-24 18:33:10 -0700</date>
            <delta_ts>2011-03-25 12:08:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>36314.patch</filename>
            <type>text/plain</type>
            <size>11550</size>
            <attacher name="Emil A Eklund">eae</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDgxOTEwKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjUgQEAKKzIwMTEtMDMtMjQgIEVtaWwgQSBF
a2x1bmQgIDxlYWVAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFRleHQgZmllbGQgIm9uY2hhbmdlIiBldmVudCBpcyB0cmlnZ2Vy
ZWQgaWYgYWN0dWFsIHZhbHVlIHVuY2hhbmdlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzYzMTQKKworICAgICAgICBDaGFuZ2UgUmVuZGVyVGV4dENv
bnRyb2w6OnN1YnRyZWVIYXNDaGFuZ2VkIHRvIG9ubHkgcmV0dXJuIHRydWUgaWYgdGhlCisgICAg
ICAgIHN1YnRyZWUgaGFzIGNoYW5nZWQgc2luY2UgdGhlIGxhc3QgZXZlbnQgd2FzIHRyaWdnZXJl
ZC4KKworICAgICAgICAqIGh0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1l
bnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQ6OmRpc3Bh
dGNoRm9ybUNvbnRyb2xDaGFuZ2VFdmVudCk6CisgICAgICAgICogaHRtbC9IVE1MRm9ybUNvbnRy
b2xFbGVtZW50Lmg6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVu
dDo6c2V0VGV4dEFzT2ZMYXN0Rm9ybUNvbnRyb2xDaGFuZ2VFdmVudCk6CisgICAgICAgICogaHRt
bC9IVE1MSW5wdXRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxJbnB1dEVsZW1l
bnQ6OnNldENoZWNrZWQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxlbWVudDo6c2V0
VmFsdWUpOgorICAgICAgICAqIGh0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXRWYWx1ZSk6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MVGV4dEFyZWFFbGVtZW50OjpzZXROb25EaXJ0eVZhbHVlKToKKwogMjAxMS0wMy0y
NCAgRGltaXRyaSBHbGF6a292ICA8ZGdsYXprb3ZAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IERhcmluIEFkbGVyLgpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRm9y
bUNvbnRyb2xFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxGb3JtQ29udHJvbEVsZW1lbnQuY3BwCShyZXZpc2lvbiA4MTc4NikKKysrIFNvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU0
Nyw2ICs1NDcsMTIgQEAgSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQ6On5IVE1MVGV4dEZvcgog
ewogfQogCit2b2lkIEhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50OjppbnNlcnRlZEludG9Eb2N1
bWVudCgpCit7CisgICAgSFRNTEZvcm1Db250cm9sRWxlbWVudDo6aW5zZXJ0ZWRJbnRvRG9jdW1l
bnQoKTsKKyAgICBzZXRUZXh0QXNPZkxhc3RGb3JtQ29udHJvbENoYW5nZUV2ZW50KHZhbHVlKCkp
OworfQorCiB2b2lkIEhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50OjpkaXNwYXRjaEZvY3VzRXZl
bnQoKQogewogICAgIGlmIChzdXBwb3J0c1BsYWNlaG9sZGVyKCkpCkBAIC02MjksNiArNjM1LDE1
IEBAIHZvaWQgSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQ6OnNlbGVjdCgKICAgICBzZXRTZWxl
Y3Rpb25SYW5nZSgwLCBudW1lcmljX2xpbWl0czxpbnQ+OjptYXgoKSk7CiB9CiAKK3ZvaWQgSFRN
TFRleHRGb3JtQ29udHJvbEVsZW1lbnQ6OmRpc3BhdGNoRm9ybUNvbnRyb2xDaGFuZ2VFdmVudCgp
Cit7CisgICAgaWYgKG1fdGV4dEFzT2ZMYXN0Rm9ybUNvbnRyb2xDaGFuZ2VFdmVudCAhPSB2YWx1
ZSgpKSB7CisgICAgICAgIEhUTUxFbGVtZW50OjpkaXNwYXRjaENoYW5nZUV2ZW50cygpOworICAg
ICAgICBzZXRUZXh0QXNPZkxhc3RGb3JtQ29udHJvbENoYW5nZUV2ZW50KHZhbHVlKCkpOworICAg
IH0KKyAgICBzZXRDaGFuZ2VkU2luY2VMYXN0Rm9ybUNvbnRyb2xDaGFuZ2VFdmVudChmYWxzZSk7
Cit9CisKIHZvaWQgSFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQ6OnNldFNlbGVjdGlvblJhbmdl
KGludCBzdGFydCwgaW50IGVuZCkKIHsKICAgICBXZWJDb3JlOjpzZXRTZWxlY3Rpb25SYW5nZSh0
aGlzLCBzdGFydCwgZW5kKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250
cm9sRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1D
b250cm9sRWxlbWVudC5oCShyZXZpc2lvbiA4MTc4NikKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTEZvcm1Db250cm9sRWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOTQsNiArMTk0LDgg
QEAgcHVibGljOgogCiAgICAgdmlydHVhbCB+SFRNTFRleHRGb3JtQ29udHJvbEVsZW1lbnQoKTsK
IAorICAgIHZpcnR1YWwgdm9pZCBpbnNlcnRlZEludG9Eb2N1bWVudCgpOworCiAgICAgLy8gVGhl
IGRlcml2ZWQgY2xhc3Mgc2hvdWxkIHJldHVybiB0cnVlIGlmIHBsYWNlaG9sZGVyIHByb2Nlc3Np
bmcgaXMgbmVlZGVkLgogICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0c1BsYWNlaG9sZGVyKCkgY29u
c3QgPSAwOwogICAgIFN0cmluZyBzdHJpcHBlZFBsYWNlaG9sZGVyKCkgY29uc3Q7CkBAIC0yMDcs
NiArMjA5LDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0U2VsZWN0aW9uUmFuZ2UoaW50IHN0YXJ0
LCBpbnQgZW5kKTsKICAgICBQYXNzUmVmUHRyPFJhbmdlPiBzZWxlY3Rpb24oKSBjb25zdDsKIAor
ICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaEZvcm1Db250cm9sQ2hhbmdlRXZlbnQoKTsKKwogICAg
IHZpcnR1YWwgaW50IG1heExlbmd0aCgpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIFN0cmluZyB2
YWx1ZSgpIGNvbnN0ID0gMDsKIApAQCAtMjE2LDYgKzIyMCw3IEBAIHByb3RlY3RlZDoKICAgICB2
b2lkIHVwZGF0ZVBsYWNlaG9sZGVyVmlzaWJpbGl0eShib29sKTsKIAogICAgIHZpcnR1YWwgdm9p
ZCBwYXJzZU1hcHBlZEF0dHJpYnV0ZShBdHRyaWJ1dGUqKTsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0
VGV4dEFzT2ZMYXN0Rm9ybUNvbnRyb2xDaGFuZ2VFdmVudChTdHJpbmcgdGV4dCkgeyBtX3RleHRB
c09mTGFzdEZvcm1Db250cm9sQ2hhbmdlRXZlbnQgPSB0ZXh0OyB9CiAKIHByaXZhdGU6CiAgICAg
dmlydHVhbCB2b2lkIGRpc3BhdGNoRm9jdXNFdmVudCgpOwpAQCAtMjM2LDYgKzI0MSw4IEBAIHBy
aXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIGhhbmRsZUJsdXJFdmVudCgpIHsgfQogCiAgICAgUmVu
ZGVyVGV4dENvbnRyb2wqIHRleHRSZW5kZXJlckFmdGVyVXBkYXRlTGF5b3V0KCk7CisKKyAgICBT
dHJpbmcgbV90ZXh0QXNPZkxhc3RGb3JtQ29udHJvbENoYW5nZUV2ZW50OwogfTsKIAogfSAvLyBu
YW1lc3BhY2UKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmNwcAko
cmV2aXNpb24gODE3ODYpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC03OTAsOCArNzkwLDEwIEBAIHZvaWQgSFRNTElucHV0RWxl
bWVudDo6c2V0Q2hlY2tlZChib29sIG4KICAgICAvLyB1bmNoZWNrZWQgdG8gbWF0Y2ggb3RoZXIg
YnJvd3NlcnMuIERPTSBpcyBub3QgYSB1c2VmdWwgc3RhbmRhcmQgZm9yIHRoaXMKICAgICAvLyBi
ZWNhdXNlIGl0IHNheXMgb25seSB0byBmaXJlIGNoYW5nZSBldmVudHMgYXQgImxvc2UgZm9jdXMi
IHRpbWUsIHdoaWNoIGlzCiAgICAgLy8gZGVmaW5pdGVseSB3cm9uZyBpbiBwcmFjdGljZSBmb3Ig
dGhlc2UgdHlwZXMgb2YgZWxlbWVudHMuCi0gICAgaWYgKHNlbmRDaGFuZ2VFdmVudCAmJiBpbkRv
Y3VtZW50KCkgJiYgbV9pbnB1dFR5cGUtPnNob3VsZFNlbmRDaGFuZ2VFdmVudEFmdGVyQ2hlY2tl
ZENoYW5nZWQoKSkKKyAgICBpZiAoc2VuZENoYW5nZUV2ZW50ICYmIGluRG9jdW1lbnQoKSAmJiBt
X2lucHV0VHlwZS0+c2hvdWxkU2VuZENoYW5nZUV2ZW50QWZ0ZXJDaGVja2VkQ2hhbmdlZCgpKSB7
CisgICAgICAgIHNldFRleHRBc09mTGFzdEZvcm1Db250cm9sQ2hhbmdlRXZlbnQoU3RyaW5nKCkp
OwogICAgICAgICBkaXNwYXRjaEZvcm1Db250cm9sQ2hhbmdlRXZlbnQoKTsKKyAgICB9CiB9CiAK
IHZvaWQgSFRNTElucHV0RWxlbWVudDo6c2V0SW5kZXRlcm1pbmF0ZShib29sIG5ld1ZhbHVlKQpA
QCAtOTEyLDYgKzkxNCw5IEBAIHZvaWQgSFRNTElucHV0RWxlbWVudDo6c2V0VmFsdWUoY29uc3Qg
U3QKICAgICAgICAgICAgIGRpc3BhdGNoRm9ybUNvbnRyb2xDaGFuZ2VFdmVudCgpOwogICAgIH0K
IAorICAgIGlmIChpc1RleHQoKSAmJiAoIWZvY3VzZWQoKSB8fCAhc2VuZENoYW5nZUV2ZW50KSkK
KyAgICAgICAgc2V0VGV4dEFzT2ZMYXN0Rm9ybUNvbnRyb2xDaGFuZ2VFdmVudCh2YWx1ZSk7CisK
ICAgICBJbnB1dEVsZW1lbnQ6Om5vdGlmeUZvcm1TdGF0ZUNoYW5nZWQodGhpcyk7CiB9CiAKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFRleHRBcmVhRWxlbWVudC5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVGV4dEFyZWFFbGVtZW50LmNwcAkocmV2aXNp
b24gODE3ODYpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxUZXh0QXJlYUVsZW1lbnQuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0yOTEsNiArMjkxLDcgQEAgdm9pZCBIVE1MVGV4dEFyZWFFbGVt
ZW50OjpzZXRWYWx1ZShjb25zdAogICAgIHNldFZhbHVlQ29tbW9uKHZhbHVlKTsKICAgICBtX2lz
RGlydHkgPSB0cnVlOwogICAgIHNldE5lZWRzVmFsaWRpdHlDaGVjaygpOworICAgIHNldFRleHRB
c09mTGFzdEZvcm1Db250cm9sQ2hhbmdlRXZlbnQodmFsdWUpOwogfQogCiB2b2lkIEhUTUxUZXh0
QXJlYUVsZW1lbnQ6OnNldE5vbkRpcnR5VmFsdWUoY29uc3QgU3RyaW5nJiB2YWx1ZSkKQEAgLTI5
OCw2ICsyOTksNyBAQCB2b2lkIEhUTUxUZXh0QXJlYUVsZW1lbnQ6OnNldE5vbkRpcnR5VmFsCiAg
ICAgc2V0VmFsdWVDb21tb24odmFsdWUpOwogICAgIG1faXNEaXJ0eSA9IGZhbHNlOwogICAgIHNl
dE5lZWRzVmFsaWRpdHlDaGVjaygpOworICAgIHNldFRleHRBc09mTGFzdEZvcm1Db250cm9sQ2hh
bmdlRXZlbnQodmFsdWUpOwogfQogCiB2b2lkIEhUTUxUZXh0QXJlYUVsZW1lbnQ6OnNldFZhbHVl
Q29tbW9uKGNvbnN0IFN0cmluZyYgdmFsdWUpCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiA4MTkxMCkKKysr
IExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisy
MDExLTAzLTI0ICBFbWlsIEEgRWtsdW5kICA8ZWFlQGNocm9taXVtLm9yZz4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXh0IGZpZWxkICJvbmNoYW5n
ZSIgZXZlbnQgaXMgdHJpZ2dlcmVkIGlmIGFjdHVhbCB2YWx1ZSB1bmNoYW5nZWQKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM2MzE0CisKKyAgICAgICAg
QWRkIHRlc3RzIGZvciB0ZXh0IGZpZWxkIGNoYW5nZSBldmVudHMuCisKKyAgICAgICAgKiBmYXN0
L2V2ZW50cy9vbmNoYW5nZS10ZXh0LWZvcm0tZmllbGQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiBmYXN0L2V2ZW50cy9vbmNoYW5nZS10ZXh0LWZvcm0tZmllbGQuaHRtbDogQWRkZWQu
CisKIDIwMTEtMDMtMjQgIEFkYW0gS2xlaW4gIDxhZGFta0BjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgRGF2aWQgTGV2aW4uCkluZGV4OiBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50
cy9vbmNoYW5nZS10ZXh0LWZvcm0tZmllbGQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExh
eW91dFRlc3RzL2Zhc3QvZXZlbnRzL29uY2hhbmdlLXRleHQtZm9ybS1maWVsZC1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9vbmNoYW5nZS10ZXh0
LWZvcm0tZmllbGQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDI2IEBACisg
ICAgICAKK1BBU1Mgc2ltdWxhdGVUZXh0RW50cnkoZWxlbWVudHNbMF0sICcnLCB0cnVlKTsgaXMg
ZmFsc2UKK1BBU1Mgc2ltdWxhdGVUZXh0RW50cnkoZWxlbWVudHNbMF0sICdmbycsIHRydWUpOyBp
cyB0cnVlCitQQVNTIHNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRzWzBdLCAnbycsIGZhbHNlKTsg
aXMgdHJ1ZQorUEFTUyBzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1swXSwgJ2ZvbycsIHRydWUp
OyBpcyBmYWxzZQorUEFTUyBzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1swXSwgJ2ZvbycsIHRy
dWUpOyBpcyBmYWxzZQorUEFTUyBzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1swXSwgJyAnLCBm
YWxzZSk7IGlzIHRydWUKK1BBU1Mgc2ltdWxhdGVUZXh0RW50cnkoZWxlbWVudHNbMF0sICdmb28g
YmFyJywgdHJ1ZSk7IGlzIHRydWUKK1BBU1Mgc2ltdWxhdGVUZXh0RW50cnkoZWxlbWVudHNbMF0s
ICdmb28gYmFyJywgdHJ1ZSk7IGlzIGZhbHNlCitQQVNTIHNldFRleHRWYWx1ZShlbGVtZW50c1sw
XSwgJ2ZvbycpOyBpcyBmYWxzZQorUEFTUyBzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1swXSwg
J2ZvbyBiYXInLCB0cnVlKTsgaXMgdHJ1ZQorUEFTUyBzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50
c1sxXSwgJycsIHRydWUpOyBpcyB0cnVlCitQQVNTIHNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRz
WzFdLCAnZm8nLCB0cnVlKTsgaXMgdHJ1ZQorUEFTUyBzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50
c1sxXSwgJ28nLCBmYWxzZSk7IGlzIHRydWUKK1BBU1Mgc2ltdWxhdGVUZXh0RW50cnkoZWxlbWVu
dHNbMV0sICdmb28nLCB0cnVlKTsgaXMgZmFsc2UKK1BBU1Mgc2ltdWxhdGVUZXh0RW50cnkoZWxl
bWVudHNbMl0sICcnLCB0cnVlKTsgaXMgZmFsc2UKK1BBU1Mgc2ltdWxhdGVUZXh0RW50cnkoZWxl
bWVudHNbMl0sICdmbycsIHRydWUpOyBpcyB0cnVlCitQQVNTIHNpbXVsYXRlVGV4dEVudHJ5KGVs
ZW1lbnRzWzJdLCAnbycsIGZhbHNlKTsgaXMgdHJ1ZQorUEFTUyBzaW11bGF0ZVRleHRFbnRyeShl
bGVtZW50c1syXSwgJ2ZvbycsIHRydWUpOyBpcyBmYWxzZQorUEFTUyBzaW11bGF0ZVRleHRFbnRy
eShlbGVtZW50c1szXSwgJ2ZvbycsIHRydWUpOyBpcyBmYWxzZQorUEFTUyBzaW11bGF0ZVRleHRF
bnRyeShlbGVtZW50c1szXSwgJ2ZvbycsIHRydWUpOyBpcyBmYWxzZQorUEFTUyBzZXRUZXh0VmFs
dWUoZWxlbWVudHNbM10sICcnKTsgaXMgZmFsc2UKK1BBU1Mgc2ltdWxhdGVUZXh0RW50cnkoZWxl
bWVudHNbM10sICdmbycsIHRydWUpOyBpcyB0cnVlCitQQVNTIHNpbXVsYXRlVGV4dEVudHJ5KGVs
ZW1lbnRzWzNdLCAnbycsIGZhbHNlKTsgaXMgdHJ1ZQorUEFTUyBzaW11bGF0ZVRleHRFbnRyeShl
bGVtZW50c1szXSwgJ2ZvbycsIHRydWUpOyBpcyBmYWxzZQorCkluZGV4OiBMYXlvdXRUZXN0cy9m
YXN0L2V2ZW50cy9vbmNoYW5nZS10ZXh0LWZvcm0tZmllbGQuaHRtbAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9mYXN0L2V2ZW50cy9vbmNoYW5nZS10ZXh0LWZvcm0tZmllbGQuaHRtbAkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL2Zhc3QvZXZlbnRzL29uY2hhbmdlLXRleHQtZm9ybS1m
aWVsZC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDgxIEBACis8aHRtbD4KKzxoZWFkPgor
PHNjcmlwdCBzcmM9Ii4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8
Ym9keT4KKyAgICA8ZGl2IGlkPSJ0ZXN0Ij4KKyAgICAgICAgPGlucHV0IHR5cGU9InRleHQiPgor
ICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCJ2YWx1ZT0iZm9vIj4KKyAgICAgICAgPHRleHRhcmVh
PjwvdGV4dGFyZWE+CisgICAgICAgIDx0ZXh0YXJlYT5mb288L3RleHRhcmVhPgorICAgIDwvZGl2
PgorICAgIDxkaXYgaWQ9ImNvbnNvbGUiPjwvZGl2PgorPC9ib2R5PgorPHNjcmlwdD4KKworICAg
IGZ1bmN0aW9uIHNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnQsIHRleHQsIG9wdF9jbGVhcikgewor
ICAgICAgICBpZiAoIXdpbmRvdy5ldmVudFNlbmRlcikKKyAgICAgICAgICAgIHJldHVybiBudWxs
OworICAgICAgICAgICAgCisgICAgICAgIHZhciBmaXJlZEV2ZW50ID0gZmFsc2U7CisgICAgICAg
IGZ1bmN0aW9uIGxpc3RlbmVyKGV2ZW50KSB7CisgICAgICAgICAgICBmaXJlZEV2ZW50ID0gdHJ1
ZTsKKyAgICAgICAgfQorICAgICAgICBlbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScs
IGxpc3RlbmVyLCBmYWxzZSk7CisgICAgICAgIGVsZW1lbnQuZm9jdXMoKTsKKyAgICAgICAgaWYg
KG9wdF9jbGVhcikgeworICAgICAgICAgICAgZWxlbWVudC5zZWxlY3QoKTsKKyAgICAgICAgICAg
IGV2ZW50U2VuZGVyLmtleURvd24oJ2RlbGV0ZScpOworICAgICAgICB9CisgICAgICAgIGZvciAo
dmFyIGkgPSAwOyBpIDwgdGV4dC5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAgZXZlbnRTZW5k
ZXIua2V5RG93bih0ZXh0LmNoYXJBdChpKSk7CisgICAgICAgIH0KKyAgICAgICAgZWxlbWVudC5i
bHVyKCk7CisgICAgICAgIGVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgbGlz
dGVuZXIsIGZhbHNlKTsKKyAgICAgICAgcmV0dXJuIGZpcmVkRXZlbnQ7CisgICAgfQorCisKKyAg
ICBmdW5jdGlvbiBzZXRUZXh0VmFsdWUoZWxlbWVudCwgdGV4dCkgeworICAgICAgICB2YXIgZmly
ZWRFdmVudCA9IGZhbHNlOworICAgICAgICBmdW5jdGlvbiBsaXN0ZW5lcihldmVudCkgeworICAg
ICAgICAgICAgZmlyZWRFdmVudCA9IHRydWU7CisgICAgICAgIH0KKyAgICAgICAgZWxlbWVudC5h
ZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBsaXN0ZW5lciwgZmFsc2UpOworICAgICAgICBlbGVt
ZW50LmZvY3VzKCk7CisgICAgICAgIGVsZW1lbnQudmFsdWUgPSB0ZXh0OworICAgICAgICBlbGVt
ZW50LmJsdXIoKTsKKyAgICAgICAgZWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdjaGFuZ2Un
LCBsaXN0ZW5lciwgZmFsc2UpOworICAgICAgICByZXR1cm4gZmlyZWRFdmVudDsKKyAgICB9CisK
KyAgICB2YXIgZWxlbWVudHMgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndGVzdCcpLmdldEVs
ZW1lbnRzQnlUYWdOYW1lKCcqJyk7CisKKyAgICBzaG91bGRCZSgic2ltdWxhdGVUZXh0RW50cnko
ZWxlbWVudHNbMF0sICcnLCB0cnVlKTsiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgic2ltdWxh
dGVUZXh0RW50cnkoZWxlbWVudHNbMF0sICdmbycsIHRydWUpOyIsICJ0cnVlIik7CisgICAgc2hv
dWxkQmUoInNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRzWzBdLCAnbycsIGZhbHNlKTsiLCAidHJ1
ZSIpOworICAgIHNob3VsZEJlKCJzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1swXSwgJ2Zvbycs
IHRydWUpOyAiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgic2ltdWxhdGVUZXh0RW50cnkoZWxl
bWVudHNbMF0sICdmb28nLCB0cnVlKTsgIiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoInNpbXVs
YXRlVGV4dEVudHJ5KGVsZW1lbnRzWzBdLCAnICcsIGZhbHNlKTsgIiwgInRydWUiKTsKKyAgICBz
aG91bGRCZSgic2ltdWxhdGVUZXh0RW50cnkoZWxlbWVudHNbMF0sICdmb28gYmFyJywgdHJ1ZSk7
ICIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoInNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRzWzBd
LCAnZm9vIGJhcicsIHRydWUpOyAiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgic2V0VGV4dFZh
bHVlKGVsZW1lbnRzWzBdLCAnZm9vJyk7ICIsICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJzaW11
bGF0ZVRleHRFbnRyeShlbGVtZW50c1swXSwgJ2ZvbyBiYXInLCB0cnVlKTsiLCAidHJ1ZSIpOwor
CisgICAgc2hvdWxkQmUoInNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRzWzFdLCAnJywgdHJ1ZSk7
IiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgic2ltdWxhdGVUZXh0RW50cnkoZWxlbWVudHNbMV0s
ICdmbycsIHRydWUpOyIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoInNpbXVsYXRlVGV4dEVudHJ5
KGVsZW1lbnRzWzFdLCAnbycsIGZhbHNlKTsiLCAidHJ1ZSIpOworICAgIHNob3VsZEJlKCJzaW11
bGF0ZVRleHRFbnRyeShlbGVtZW50c1sxXSwgJ2ZvbycsIHRydWUpOyAiLCAiZmFsc2UiKTsKKwor
ICAgIHNob3VsZEJlKCJzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1syXSwgJycsIHRydWUpOyIs
ICJmYWxzZSIpOworICAgIHNob3VsZEJlKCJzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1syXSwg
J2ZvJywgdHJ1ZSk7IiwgInRydWUiKTsKKyAgICBzaG91bGRCZSgic2ltdWxhdGVUZXh0RW50cnko
ZWxlbWVudHNbMl0sICdvJywgZmFsc2UpOyIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUoInNpbXVs
YXRlVGV4dEVudHJ5KGVsZW1lbnRzWzJdLCAnZm9vJywgdHJ1ZSk7ICIsICJmYWxzZSIpOworCisg
ICAgc2hvdWxkQmUoInNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRzWzNdLCAnZm9vJywgdHJ1ZSk7
IiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoInNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRzWzNd
LCAnZm9vJywgdHJ1ZSk7IiwgImZhbHNlIik7CisgICAgc2hvdWxkQmUoInNldFRleHRWYWx1ZShl
bGVtZW50c1szXSwgJycpOyAiLCAiZmFsc2UiKTsKKyAgICBzaG91bGRCZSgic2ltdWxhdGVUZXh0
RW50cnkoZWxlbWVudHNbM10sICdmbycsIHRydWUpOyIsICJ0cnVlIik7CisgICAgc2hvdWxkQmUo
InNpbXVsYXRlVGV4dEVudHJ5KGVsZW1lbnRzWzNdLCAnbycsIGZhbHNlKTsiLCAidHJ1ZSIpOwor
ICAgIHNob3VsZEJlKCJzaW11bGF0ZVRleHRFbnRyeShlbGVtZW50c1szXSwgJ2ZvbycsIHRydWUp
OyAiLCAiZmFsc2UiKTsKKzwvc2NyaXB0PgorPC9odG1sPiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>