<?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>50075</bug_id>
          
          <creation_ts>2010-11-25 06:47:20 -0800</creation_ts>
          <short_desc>IndexedDB: Better errors for not yet implemented features</short_desc>
          <delta_ts>2010-11-25 10:18:32 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Hans Wennborg">hans</reporter>
          <assigned_to name="Hans Wennborg">hans</assigned_to>
          <cc>andreip</cc>
    
    <cc>jorlow</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>313739</commentid>
    <comment_count>0</comment_count>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2010-11-25 06:47:20 -0800</bug_when>
    <thetext>IndexedDB: Better errors for not yet implemented features</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313743</commentid>
    <comment_count>1</comment_count>
      <attachid>74872</attachid>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2010-11-25 06:56:02 -0800</bug_when>
    <thetext>Created attachment 74872
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313753</commentid>
    <comment_count>2</comment_count>
      <attachid>74872</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-11-25 07:11:55 -0800</bug_when>
    <thetext>Comment on attachment 74872
Patch

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

close

&gt; LayoutTests/ChangeLog:11
&gt; +        Test that failing to supply a key when inserting data in an

Also test that supplying one when autoIncrement is set produces an error.

&gt; LayoutTests/storage/indexeddb/objectstore-basics.html:152
&gt; +        testPassed(&quot;Exception thrown: &quot; + err);

From now on, let&apos;s do this instead:

code = e.code
shouldBe(code, THE_EXCEPTION)

This way when we change the codes, everything still works fine.  And it makes the output less confusing in the mean time.

&gt; WebCore/ChangeLog:8
&gt; +        In createObjectStore, make autoIncrement default (as per the spec).

remove

&gt; WebCore/storage/IDBDatabase.cpp:68
&gt; +    bool autoIncrement = true;

revert this.  the spec needs to be fixed instead

&gt; WebCore/storage/IDBObjectStoreBackendImpl.cpp:211
&gt; +    } else if (!key &amp;&amp; objectStore-&gt;autoIncrement()) {
&gt; +        callbacks-&gt;onError(IDBDatabaseError::create(IDBDatabaseException::DATA_ERR, &quot;No key supplied. Auto increment not currently supported.&quot;));

If autoIncrement is true and a key is supplied, it&apos;s an error..not something where we should ignore the key.

Add a fixme to implement this for realz.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313805</commentid>
    <comment_count>3</comment_count>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2010-11-25 09:34:01 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 74872 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=74872&amp;action=review
&gt; 
&gt; close
&gt; 
&gt; &gt; LayoutTests/ChangeLog:11
&gt; &gt; +        Test that failing to supply a key when inserting data in an
&gt; 
&gt; Also test that supplying one when autoIncrement is set produces an error.
Since we now decided autoIncrement should default to false, I think it should be sufficient to throw an exception if the user tries to set it to true?

&gt; 
&gt; &gt; LayoutTests/storage/indexeddb/objectstore-basics.html:152
&gt; &gt; +        testPassed(&quot;Exception thrown: &quot; + err);
&gt; 
&gt; From now on, let&apos;s do this instead:
&gt; 
&gt; code = e.code
&gt; shouldBe(code, THE_EXCEPTION)
Doing this.

&gt; 
&gt; This way when we change the codes, everything still works fine.  And it makes the output less confusing in the mean time.
&gt; 
&gt; &gt; WebCore/ChangeLog:8
&gt; &gt; +        In createObjectStore, make autoIncrement default (as per the spec).
&gt; 
&gt; remove
Done

&gt; 
&gt; &gt; WebCore/storage/IDBDatabase.cpp:68
&gt; &gt; +    bool autoIncrement = true;
&gt; 
&gt; revert this.  the spec needs to be fixed instead
Done (http://www.w3.org/Bugs/Public/show_bug.cgi?id=11407)

&gt; 
&gt; &gt; WebCore/storage/IDBObjectStoreBackendImpl.cpp:211
&gt; &gt; +    } else if (!key &amp;&amp; objectStore-&gt;autoIncrement()) {
&gt; &gt; +        callbacks-&gt;onError(IDBDatabaseError::create(IDBDatabaseException::DATA_ERR, &quot;No key supplied. Auto increment not currently supported.&quot;));
&gt; 
&gt; If autoIncrement is true and a key is supplied, it&apos;s an error..not something where we should ignore the key.
Changing to just make having autoIncrement true forbidden for now.

&gt; 
&gt; Add a fixme to implement this for realz.
Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313806</commentid>
    <comment_count>4</comment_count>
      <attachid>74888</attachid>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2010-11-25 09:34:23 -0800</bug_when>
    <thetext>Created attachment 74888
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313808</commentid>
    <comment_count>5</comment_count>
      <attachid>74888</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-11-25 09:49:49 -0800</bug_when>
    <thetext>Comment on attachment 74888
Patch

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

&gt; LayoutTests/storage/indexeddb/create-object-store-options.html:48
&gt; +        debug(&quot;db.createObjectStore(&apos;c&apos;, {autoIncrement: true});&quot;);

FIXME that this _should_ work..but not yet

&gt; LayoutTests/storage/indexeddb/create-object-store-options.html:50
&gt; +        fail(&apos;createObjectStore with autoIncrement = true should throw&apos;);

testFailed

&gt; LayoutTests/storage/indexeddb/objectstore-basics.html:146
&gt; +    debug(&quot;Try to insert data with a Date key:&quot;);

FIXME

&gt; LayoutTests/storage/indexeddb/objectstore-basics.html:160
&gt; +    result.onerror = function () {};

This should print pass and then run the next part.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313815</commentid>
    <comment_count>6</comment_count>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2010-11-25 10:02:30 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 74888 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=74888&amp;action=review
&gt; 
&gt; &gt; LayoutTests/storage/indexeddb/create-object-store-options.html:48
&gt; &gt; +        debug(&quot;db.createObjectStore(&apos;c&apos;, {autoIncrement: true});&quot;);
&gt; 
&gt; FIXME that this _should_ work..but not yet
Done.

&gt; 
&gt; &gt; LayoutTests/storage/indexeddb/create-object-store-options.html:50
&gt; &gt; +        fail(&apos;createObjectStore with autoIncrement = true should throw&apos;);
&gt; 
&gt; testFailed
Done.

&gt; 
&gt; &gt; LayoutTests/storage/indexeddb/objectstore-basics.html:146
&gt; &gt; +    debug(&quot;Try to insert data with a Date key:&quot;);
&gt; 
&gt; FIXME
Done.

&gt; 
&gt; &gt; LayoutTests/storage/indexeddb/objectstore-basics.html:160
&gt; &gt; +    result.onerror = function () {};
&gt; 
&gt; This should print pass and then run the next part.
Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313816</commentid>
    <comment_count>7</comment_count>
      <attachid>74889</attachid>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2010-11-25 10:02:53 -0800</bug_when>
    <thetext>Created attachment 74889
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313818</commentid>
    <comment_count>8</comment_count>
      <attachid>74889</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2010-11-25 10:11:36 -0800</bug_when>
    <thetext>Comment on attachment 74889
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313819</commentid>
    <comment_count>9</comment_count>
    <who name="Hans Wennborg">hans</who>
    <bug_when>2010-11-25 10:18:32 -0800</bug_when>
    <thetext>Committed r72738: &lt;http://trac.webkit.org/changeset/72738&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>74872</attachid>
            <date>2010-11-25 06:56:02 -0800</date>
            <delta_ts>2010-11-25 09:34:17 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-50075-20101125145559.patch</filename>
            <type>text/plain</type>
            <size>8167</size>
            <attacher name="Hans Wennborg">hans</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAzZWMyZDA4MTc1MzA3MjM1M2U2M2Q0NGY5ZTBhZjIyZjIxZDhhOTYzLi5iZmQ4Yjg0
OWViZWE5MDQ1NDM1NjM4NmY5OTkzMWYwZTQ0NTJlY2FjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjAgQEAK
KzIwMTAtMTEtMjUgIEhhbnMgV2VubmJvcmcgIDxoYW5zQGNocm9taXVtLm9yZz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbmRleGVkREI6IEJldHRl
ciBlcnJvcnMgZm9yIG5vdCB5ZXQgaW1wbGVtZW50ZWQgZmVhdHVyZXMKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUwMDc1CisKKyAgICAgICAgVGVzdCB0
aGF0IGluc2VydGluZyBhIHJlY29yZCB3aGVyZSB0aGUga2V5IGlzIGEgRGF0ZSAoZWl0aGVyCisg
ICAgICAgIGV4cGxpY2l0bHksIG9yIHZpYSBhIGtleSBwYXRoKSB5aWVsZHMgYW4gZXJyb3IuCisK
KyAgICAgICAgVGVzdCB0aGF0IGZhaWxpbmcgdG8gc3VwcGx5IGEga2V5IHdoZW4gaW5zZXJ0aW5n
IGRhdGEgaW4gYW4KKyAgICAgICAgb2JqZWN0IHN0b3JlIHdpdGggYXV0byBpbmNyZW1lbnQgbm90
aWZpZXMgdGhlIHVzZXIgdGhhdAorICAgICAgICBhdXRvIGluY3JlbWVudCBpcyBub3QgeWV0IGlt
cGxlbWVudGVkLgorCisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtYmFz
aWNzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9y
ZS1iYXNpY3MuaHRtbDoKKwogMjAxMC0xMS0yNSAgSWx5YSBUaWtob25vdnNreSAgPGxvaXNsb0Bj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gRW5hYmxlIHRlc3RzIGluIGNocm9t
aXVtLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3Rv
cmUtYmFzaWNzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29i
amVjdHN0b3JlLWJhc2ljcy1leHBlY3RlZC50eHQKaW5kZXggMzI1MmJjYzM5NzgyOGRmOTM5YzU0
ZjIzOTZkYzYyY2FjOWIxMzk5ZS4uMTQ3ODQyODgyMGJmYzcwMDZjODAxMjBjYTg2N2IzYzk0N2Nh
NjZhNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3Rv
cmUtYmFzaWNzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRk
Yi9vYmplY3RzdG9yZS1iYXNpY3MtZXhwZWN0ZWQudHh0CkBAIC05Nyw2ICs5NywxMSBAQCBQQVNT
IHN0b3JlLmluZGV4TmFtZXMuaXRlbSgxKSBpcyBudWxsCiBQQVNTIHN0b3JlLmluZGV4TmFtZXMu
aXRlbSgxMDApIGlzIG51bGwKIHRyYW5zYWN0aW9uID0gZGIudHJhbnNhY3Rpb24oKQogc3RvcmUg
PSB0cmFuc2FjdGlvbi5vYmplY3RTdG9yZSgnc3RvcmVOYW1lJykKK1RyeSB0byBpbnNlcnQgZGF0
YSB3aXRoIGEgRGF0ZSBrZXk6CitzdG9yZS5hZGQoe3g6ICdmb28nfSwgbmV3IERhdGUoKSkKK1BB
U1MgRXhjZXB0aW9uIHRocm93bjogRXJyb3I6IFRZUEVfTUlTTUFUQ0hfRVJSOiBET00gRXhjZXB0
aW9uIDE3CitUcnkgdG8gaW5zZXJ0IGRhdGEgd2hlcmUga2V5IHBhdGggeWllbGRzIGEgRGF0ZSBr
ZXk6CitzdG9yZS5hZGQoe3g6IG5ldyBEYXRlKCl9LCAnZm9vJykKIHN0b3JlLmFkZCh7eDogJ3Zh
bHVlJ30sICdrZXknKQogUEFTUyAnb25zdWNjZXNzJyBpbiByZXN1bHQgaXMgdHJ1ZQogUEFTUyAn
b25lcnJvcicgaW4gcmVzdWx0IGlzIHRydWUKQEAgLTExNiw2ICsxMjEsMjYgQEAgUEFTUyAncmVh
ZHlTdGF0ZScgaW4gZXZlbnQudGFyZ2V0IGlzIHRydWUKIFBBU1MgZXZlbnQudGFyZ2V0LnJlYWR5
U3RhdGUgaXMgZXZlbnQudGFyZ2V0LkRPTkUKIAogUEFTUyBldmVudC5yZXN1bHQgaXMgImtleSIK
K2V2ZW50LnNvdXJjZS5hZGQoe3g6ICd2YWx1ZSd9KQorUEFTUyAnb25zdWNjZXNzJyBpbiByZXN1
bHQgaXMgdHJ1ZQorUEFTUyAnb25lcnJvcicgaW4gcmVzdWx0IGlzIHRydWUKK1BBU1MgJ3JlYWR5
U3RhdGUnIGluIHJlc3VsdCBpcyB0cnVlCitBbiBldmVudCBzaG91bGQgZmlyZSBzaG9ydGx5Li4u
CisKK2FkZFdpdGhvdXRLZXlGYWlsdXJlKCk6CitFcnJvciBldmVudCBmaXJlZDoKK1BBU1MgJ3Jl
c3VsdCcgaW4gZXZlbnQgaXMgZmFsc2UKK1BBU1MgJ2NvZGUnIGluIGV2ZW50IGlzIHRydWUKK1BB
U1MgJ21lc3NhZ2UnIGluIGV2ZW50IGlzIHRydWUKK1BBU1MgJ3NvdXJjZScgaW4gZXZlbnQgaXMg
dHJ1ZQorUEFTUyBldmVudC5zb3VyY2UgIT0gbnVsbCBpcyB0cnVlCitQQVNTICdvbnN1Y2Nlc3Mn
IGluIGV2ZW50LnRhcmdldCBpcyB0cnVlCitQQVNTICdvbmVycm9yJyBpbiBldmVudC50YXJnZXQg
aXMgdHJ1ZQorUEFTUyAncmVhZHlTdGF0ZScgaW4gZXZlbnQudGFyZ2V0IGlzIHRydWUKK1BBU1Mg
ZXZlbnQudGFyZ2V0LnJlYWR5U3RhdGUgaXMgZXZlbnQudGFyZ2V0LkRPTkUKKworUEFTUyBldmVu
dC5jb2RlIGlzIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLkRBVEFfRVJSCitQQVNTIGV2ZW50
Lm1lc3NhZ2UgaXMgJ05vIGtleSBzdXBwbGllZC4gQXV0byBpbmNyZW1lbnQgbm90IGN1cnJlbnRs
eSBzdXBwb3J0ZWQuJwogZXZlbnQuc291cmNlLmFkZCh7eDogJ3ZhbHVlJ30sICd6enonKQogUEFT
UyAnb25zdWNjZXNzJyBpbiByZXN1bHQgaXMgdHJ1ZQogUEFTUyAnb25lcnJvcicgaW4gcmVzdWx0
IGlzIHRydWUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVj
dHN0b3JlLWJhc2ljcy5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0
c3RvcmUtYmFzaWNzLmh0bWwKaW5kZXggMDUwMWYzMDEyMDkwMmNhYTQwNDRhYzQ5Nzc3NGZhMzFl
ZGI4ZTczMC4uN2MxMjQ1ZmQyZTYyNzIyOTc2NWQ4OTc2ZTg0MThhYjRjMTJkZWM1MyAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtYmFzaWNzLmh0
bWwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtYmFzaWNz
Lmh0bWwKQEAgLTE0Miw2ICsxNDIsMjEgQEAgZnVuY3Rpb24gYWRkRGF0YSgpCiAgICAgdmFyIHRy
YW5zYWN0aW9uID0gZXZhbEFuZExvZygidHJhbnNhY3Rpb24gPSBkYi50cmFuc2FjdGlvbigpIik7
CiAgICAgdHJhbnNhY3Rpb24ub25hYm9ydCA9IHVuZXhwZWN0ZWRBYm9ydENhbGxiYWNrOwogICAg
IHdpbmRvdy5zdG9yZSA9IGV2YWxBbmRMb2coInN0b3JlID0gdHJhbnNhY3Rpb24ub2JqZWN0U3Rv
cmUoJ3N0b3JlTmFtZScpIik7CisKKyAgICBkZWJ1ZygiVHJ5IHRvIGluc2VydCBkYXRhIHdpdGgg
YSBEYXRlIGtleToiKTsKKyAgICB0cnkgeworICAgICAgICBkZWJ1Zygic3RvcmUuYWRkKHt4OiAn
Zm9vJ30sIG5ldyBEYXRlKCkpIik7CisgICAgICAgIHN0b3JlLmFkZCh7eDogJ2Zvbyd9LCBuZXcg
RGF0ZSgpKTsKKyAgICAgICAgdGVzdEZhaWxlZCgiUGFzc2luZyBhIERhdGUgYXMga2V5IGFyZ3Vt
ZW50IHNob3VsZCBoYXZlIHRocm93bi4iKTsKKyAgICB9IGNhdGNoIChlcnIpIHsKKyAgICAgICAg
dGVzdFBhc3NlZCgiRXhjZXB0aW9uIHRocm93bjogIiArIGVycik7CisgICAgfQorCisgICAgZGVi
dWcoIlRyeSB0byBpbnNlcnQgZGF0YSB3aGVyZSBrZXkgcGF0aCB5aWVsZHMgYSBEYXRlIGtleToi
KTsKKyAgICByZXN1bHQgPSBldmFsQW5kTG9nKCJzdG9yZS5hZGQoe3g6IG5ldyBEYXRlKCl9LCAn
Zm9vJykiKTsKKyAgICByZXN1bHQub25zdWNjZXNzID0gdW5leHBlY3RlZFN1Y2Nlc3NDYWxsYmFj
azsKKyAgICByZXN1bHQub25lcnJvciA9IGZ1bmN0aW9uICgpIHt9OworCiAgICAgcmVzdWx0ID0g
ZXZhbEFuZExvZygic3RvcmUuYWRkKHt4OiAndmFsdWUnfSwgJ2tleScpIik7CiAgICAgdmVyaWZ5
UmVzdWx0KHJlc3VsdCk7CiAgICAgcmVzdWx0Lm9uc3VjY2VzcyA9IGFkZFN1Y2Nlc3M7CkBAIC0x
NTQsNiArMTY5LDE5IEBAIGZ1bmN0aW9uIGFkZFN1Y2Nlc3MoKQogICAgIHZlcmlmeVN1Y2Nlc3NF
dmVudChldmVudCk7CiAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJldmVudC5yZXN1bHQiLCAi
a2V5Iik7CiAKKyAgICByZXN1bHQgPSBldmFsQW5kTG9nKCJldmVudC5zb3VyY2UuYWRkKHt4OiAn
dmFsdWUnfSkiKTsKKyAgICB2ZXJpZnlSZXN1bHQocmVzdWx0KTsKKyAgICByZXN1bHQub25zdWNj
ZXNzID0gdW5leHBlY3RlZFN1Y2Nlc3NDYWxsYmFjazsKKyAgICByZXN1bHQub25lcnJvciA9IGFk
ZFdpdGhvdXRLZXlGYWlsdXJlOworfQorCitmdW5jdGlvbiBhZGRXaXRob3V0S2V5RmFpbHVyZSgp
Cit7CisgICAgZGVidWcoImFkZFdpdGhvdXRLZXlGYWlsdXJlKCk6Iik7CisgICAgdmVyaWZ5RXJy
b3JFdmVudChldmVudCk7CisgICAgc2hvdWxkQmUoImV2ZW50LmNvZGUiLCAid2Via2l0SURCRGF0
YWJhc2VFeGNlcHRpb24uREFUQV9FUlIiKTsKKyAgICBzaG91bGRCZSgiZXZlbnQubWVzc2FnZSIs
ICInTm8ga2V5IHN1cHBsaWVkLiBBdXRvIGluY3JlbWVudCBub3QgY3VycmVudGx5IHN1cHBvcnRl
ZC4nIik7CisKICAgICByZXN1bHQgPSBldmFsQW5kTG9nKCJldmVudC5zb3VyY2UuYWRkKHt4OiAn
dmFsdWUnfSwgJ3p6eicpIik7CiAgICAgdmVyaWZ5UmVzdWx0KHJlc3VsdCk7CiAgICAgcmVzdWx0
Lm9uc3VjY2VzcyA9IHVuZXhwZWN0ZWRTdWNjZXNzQ2FsbGJhY2s7CmRpZmYgLS1naXQgYS9XZWJD
b3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDgwMDcyMmQ2MzIwN2RjYzUz
M2M3NTQyZjA3MDdlYTY4Y2I0N2Q5ZDMuLjBjOTE4MjQwN2UwYWM0NWE2M2QxOTZlZjU1YmYzYjdk
N2E5ZTBjOGIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hh
bmdlTG9nCkBAIC0xLDUgKzEsMjUgQEAKIDIwMTAtMTEtMjUgIEhhbnMgV2VubmJvcmcgIDxoYW5z
QGNocm9taXVtLm9yZz4KIAorICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBJbmRleGVkREI6IEJldHRlciBlcnJvcnMgZm9yIG5vdCB5ZXQgaW1wbGVtZW50ZWQg
ZmVhdHVyZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTUwMDc1CisKKyAgICAgICAgSW4gY3JlYXRlT2JqZWN0U3RvcmUsIG1ha2UgYXV0b0luY3JlbWVu
dCBkZWZhdWx0IChhcyBwZXIgdGhlIHNwZWMpLgorICAgICAgICBQcm92aWRlIGJldHRlciBlcnJv
ciBtZXNzYWdlIHdoZW4gdHJ5aW5nIHRvIHVzZSBhdXRvIGluY3JlbWVudC4KKworICAgICAgICBC
ZSBhIGxpdHRsZSBiaXQgbW9yZSBleHBsaWNpdCBpbiBJREJCaW5kaW5nVXRpbGl0aWVzIHRoYXQg
d2UgZG9uJ3QKKyAgICAgICAgYWxsb3cgdXNpbmcgRGF0ZSBvYmplY3RzIGFzIGtleXMgeWV0Lgor
CisgICAgICAgICogYmluZGluZ3MvdjgvSURCQmluZGluZ1V0aWxpdGllcy5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpjcmVhdGVJREJLZXlGcm9tVmFsdWUpOgorICAgICAgICAqIHN0b3JhZ2UvSURC
RGF0YWJhc2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2U6OmNyZWF0ZU9iamVj
dFN0b3JlKToKKyAgICAgICAgKiBzdG9yYWdlL0lEQk9iamVjdFN0b3JlQmFja2VuZEltcGwuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SURCT2JqZWN0U3RvcmVCYWNrZW5kSW1wbDo6cHV0SW50ZXJu
YWwpOgorCisyMDEwLTExLTI1ICBIYW5zIFdlbm5ib3JnICA8aGFuc0BjaHJvbWl1bS5vcmc+CisK
ICAgICAgICAgUmV2aWV3ZWQgYnkgSmVyZW15IE9ybG93LgogCiAgICAgICAgIFY4IEJpbmRpbmdz
OiByZW1vdmUgZmF1bHR5IGluY2x1ZGUgaW4gT3B0aW9uc09iamVjdC5oCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L0lEQkJpbmRpbmdVdGlsaXRpZXMuY3BwIGIvV2ViQ29yZS9iaW5k
aW5ncy92OC9JREJCaW5kaW5nVXRpbGl0aWVzLmNwcAppbmRleCAxMjNiMTVjMTAxZDY4YmMwOTVk
NTJjYzJlMjIxYTFmMTU4ZTA2NjU3Li42NDRlMmQyZWZjMDQ0NTcwYWNiZDc5Nzc1YjljYzc5NWVm
OTMzYmIzIDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0lEQkJpbmRpbmdVdGlsaXRp
ZXMuY3BwCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvdjgvSURCQmluZGluZ1V0aWxpdGllcy5jcHAK
QEAgLTQ1LDcgKzQ1LDggQEAgUGFzc1JlZlB0cjxJREJLZXk+IGNyZWF0ZUlEQktleUZyb21WYWx1
ZSh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCiAgICAgICAgIHJldHVybiBJREJLZXk6OmNy
ZWF0ZSh2YWx1ZS0+SW50MzJWYWx1ZSgpKTsKICAgICBpZiAodmFsdWUtPklzU3RyaW5nKCkpCiAg
ICAgICAgIHJldHVybiBJREJLZXk6OmNyZWF0ZSh2OFZhbHVlVG9XZWJDb3JlU3RyaW5nKHZhbHVl
KSk7Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudCBkYXRlcy4KKyAgICBpZiAodmFsdWUtPklzRGF0
ZSgpKQorICAgICAgICByZXR1cm4gMDsgLy8gU2lnbmFscyB0eXBlIGVycm9yLiBGSVhNRTogSW1w
bGVtZW50IGRhdGVzLgogCiAgICAgcmV0dXJuIDA7IC8vIFNpZ25hbHMgdHlwZSBlcnJvci4KIH0K
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZS5jcHAgYi9XZWJDb3JlL3N0
b3JhZ2UvSURCRGF0YWJhc2UuY3BwCmluZGV4IDcyZmYxN2Q0NWJkZTVlM2E2YWMzNjEzYjE3Zjdi
OTY1MGZlNzc5M2EuLjQ1ZTViMjk5ODJlNGEwZjdiNTcwOGU1NjZjZDEzZmYyNWU2M2Y1MzcgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZS5jcHAKKysrIGIvV2ViQ29yZS9z
dG9yYWdlL0lEQkRhdGFiYXNlLmNwcApAQCAtNjUsNyArNjUsNyBAQCBQYXNzUmVmUHRyPElEQk9i
amVjdFN0b3JlPiBJREJEYXRhYmFzZTo6Y3JlYXRlT2JqZWN0U3RvcmUoY29uc3QgU3RyaW5nJiBu
YW1lLCBjbwogCiAgICAgU3RyaW5nIGtleVBhdGg7CiAgICAgb3B0aW9ucy5nZXRLZXlTdHJpbmco
ImtleVBhdGgiLCBrZXlQYXRoKTsKLSAgICBib29sIGF1dG9JbmNyZW1lbnQgPSBmYWxzZTsKKyAg
ICBib29sIGF1dG9JbmNyZW1lbnQgPSB0cnVlOwogICAgIG9wdGlvbnMuZ2V0S2V5Qm9vbCgiYXV0
b0luY3JlbWVudCIsIGF1dG9JbmNyZW1lbnQpOwogICAgIC8vIEZJWE1FOiBMb29rIHVwIGV2aWN0
YWJsZSBhbmQgcGFzcyB0aGF0IG9uIGFzIHdlbGwuCiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvc3Rv
cmFnZS9JREJPYmplY3RTdG9yZUJhY2tlbmRJbXBsLmNwcCBiL1dlYkNvcmUvc3RvcmFnZS9JREJP
YmplY3RTdG9yZUJhY2tlbmRJbXBsLmNwcAppbmRleCA3ZmM0Zjk4YmNjMzczYjhiYjdlYTc2ZmM0
M2E3YzYwMjJiMGEzNGYwLi5lYTk3YTBmMDFlN2FjZWZmNWU3ZTZkNzhkYzkzMTYyZTJiNjhjZjU5
IDEwMDY0NAotLS0gYS9XZWJDb3JlL3N0b3JhZ2UvSURCT2JqZWN0U3RvcmVCYWNrZW5kSW1wbC5j
cHAKKysrIGIvV2ViQ29yZS9zdG9yYWdlL0lEQk9iamVjdFN0b3JlQmFja2VuZEltcGwuY3BwCkBA
IC0yMDcsNiArMjA3LDkgQEAgdm9pZCBJREJPYmplY3RTdG9yZUJhY2tlbmRJbXBsOjpwdXRJbnRl
cm5hbChTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgUGFzc1JlZlB0cjwKICAgICAgICAgICAgIGNh
bGxiYWNrcy0+b25FcnJvcihJREJEYXRhYmFzZUVycm9yOjpjcmVhdGUoSURCRGF0YWJhc2VFeGNl
cHRpb246OlVOS05PV05fRVJSLCAiVGhlIGtleSBjb3VsZCBub3QgYmUgZmV0Y2hlZCBmcm9tIHRo
ZSBrZXlQYXRoLiIpKTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQorICAgIH0gZWxz
ZSBpZiAoIWtleSAmJiBvYmplY3RTdG9yZS0+YXV0b0luY3JlbWVudCgpKSB7CisgICAgICAgIGNh
bGxiYWNrcy0+b25FcnJvcihJREJEYXRhYmFzZUVycm9yOjpjcmVhdGUoSURCRGF0YWJhc2VFeGNl
cHRpb246OkRBVEFfRVJSLCAiTm8ga2V5IHN1cHBsaWVkLiBBdXRvIGluY3JlbWVudCBub3QgY3Vy
cmVudGx5IHN1cHBvcnRlZC4iKSk7CisgICAgICAgIHJldHVybjsKICAgICB9IGVsc2UgaWYgKCFr
ZXkpIHsKICAgICAgICAgY2FsbGJhY2tzLT5vbkVycm9yKElEQkRhdGFiYXNlRXJyb3I6OmNyZWF0
ZShJREJEYXRhYmFzZUV4Y2VwdGlvbjo6REFUQV9FUlIsICJObyBrZXkgc3VwcGxpZWQuIikpOwog
ICAgICAgICByZXR1cm47Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>74888</attachid>
            <date>2010-11-25 09:34:23 -0800</date>
            <delta_ts>2010-11-25 10:02:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-50075-20101125173420.patch</filename>
            <type>text/plain</type>
            <size>7898</size>
            <attacher name="Hans Wennborg">hans</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAzZWMyZDA4MTc1MzA3MjM1M2U2M2Q0NGY5ZTBhZjIyZjIxZDhhOTYzLi40OWVlZjMy
YjQ4N2NmYmNlYzliNzE4YTY3MDQ5YTllNDUyYzk3ZjM3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAK
KzIwMTAtMTEtMjUgIEhhbnMgV2VubmJvcmcgIDxoYW5zQGNocm9taXVtLm9yZz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbmRleGVkREI6IEJldHRl
ciBlcnJvcnMgZm9yIG5vdCB5ZXQgaW1wbGVtZW50ZWQgZmVhdHVyZXMKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUwMDc1CisKKyAgICAgICAgVGVzdCB0
aGF0IGluc2VydGluZyBhIHJlY29yZCB3aGVyZSB0aGUga2V5IGlzIGEgRGF0ZSAoZWl0aGVyCisg
ICAgICAgIGV4cGxpY2l0bHksIG9yIHZpYSBhIGtleSBwYXRoKSB5aWVsZHMgYW4gZXJyb3IuCisK
KyAgICAgICAgVGVzdCB0aGF0IGNhbGxpbmcgY3JlYXRlT2JqZWN0U3RvcmUgd2l0aCBhdXRvSW5j
cmVtZW50ID0gdHJ1ZQorICAgICAgICByYWlzZXMgYW4gZXhjZXB0aW9uLgorCisgICAgICAgICog
c3RvcmFnZS9pbmRleGVkZGIvY3JlYXRlLW9iamVjdC1zdG9yZS1vcHRpb25zLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9jcmVhdGUtb2JqZWN0LXN0b3JlLW9wdGlv
bnMuaHRtbDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1iYXNpY3Mt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLWJh
c2ljcy5odG1sOgorCiAyMDEwLTExLTI1ICBJbHlhIFRpa2hvbm92c2t5ICA8bG9pc2xvQGNocm9t
aXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLiBFbmFibGUgdGVzdHMgaW4gY2hyb21pdW0u
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9jcmVhdGUtb2JqZWN0
LXN0b3JlLW9wdGlvbnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVk
ZGIvY3JlYXRlLW9iamVjdC1zdG9yZS1vcHRpb25zLWV4cGVjdGVkLnR4dAppbmRleCBhZWMzODFm
OWQyNzE4OGNjYjZiNTFjODk3NGJkZDJlMzJmMjA2ZWEyLi5mMTE2MjgwZDFmYmY0NmQ5YTAwMDlm
ZWVkYmM2YTEzY2QxYzkyZjA2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4
ZWRkYi9jcmVhdGUtb2JqZWN0LXN0b3JlLW9wdGlvbnMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2NyZWF0ZS1vYmplY3Qtc3RvcmUtb3B0aW9ucy1leHBl
Y3RlZC50eHQKQEAgLTE2LDYgKzE2LDkgQEAgcmVzdWx0ID0gZGIuc2V0VmVyc2lvbigndmVyc2lv
biAxJykKIERlbGV0ZWQgYWxsIG9iamVjdCBzdG9yZXMuCiBkYi5jcmVhdGVPYmplY3RTdG9yZSgn
YScsIHtrZXlQYXRoOiAnYSd9KQogZGIuY3JlYXRlT2JqZWN0U3RvcmUoJ2InKQorZGIuY3JlYXRl
T2JqZWN0U3RvcmUoJ2MnLCB7YXV0b0luY3JlbWVudDogdHJ1ZX0pOworUEFTUyBFeGNlcHRpb24g
dGhyb3duCitQQVNTIGNvZGUgaXMgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uVU5LTk9XTl9F
UlIKIHRyYW5zID0gZGIudHJhbnNhY3Rpb24oW10sIHdlYmtpdElEQlRyYW5zYWN0aW9uLlJFQURf
V1JJVEUpCiB0cmFucy5vYmplY3RTdG9yZSgnYScpLnB1dCh7J2EnOiAwfSkKIHRyYW5zLm9iamVj
dFN0b3JlKCdiJykucHV0KHsnYSc6IDB9LCAwKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3Rv
cmFnZS9pbmRleGVkZGIvY3JlYXRlLW9iamVjdC1zdG9yZS1vcHRpb25zLmh0bWwgYi9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9jcmVhdGUtb2JqZWN0LXN0b3JlLW9wdGlvbnMuaHRtbApp
bmRleCBiMjhkMmQyNjg1MzRiYzYzNTBhODJjMjljMGI3NDViZjk2MDI4YTBjLi45NGJiY2I2MGIy
ODA5NjhhZDI2NjFiYzQ3MTUzMmM3ODExYTRiMmJmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9z
dG9yYWdlL2luZGV4ZWRkYi9jcmVhdGUtb2JqZWN0LXN0b3JlLW9wdGlvbnMuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9jcmVhdGUtb2JqZWN0LXN0b3JlLW9wdGlvbnMu
aHRtbApAQCAtNDQsNiArNDQsMTYgQEAgZnVuY3Rpb24gY2xlYW5lZCgpCiAgICAgZXZhbEFuZExv
ZygiZGIuY3JlYXRlT2JqZWN0U3RvcmUoJ2EnLCB7a2V5UGF0aDogJ2EnfSkiKTsKICAgICBldmFs
QW5kTG9nKCJkYi5jcmVhdGVPYmplY3RTdG9yZSgnYicpIik7CiAKKyAgICB0cnkgeworICAgICAg
ICBkZWJ1ZygiZGIuY3JlYXRlT2JqZWN0U3RvcmUoJ2MnLCB7YXV0b0luY3JlbWVudDogdHJ1ZX0p
OyIpOworICAgICAgICBkYi5jcmVhdGVPYmplY3RTdG9yZSgnYycsIHthdXRvSW5jcmVtZW50OiB0
cnVlfSk7CisgICAgICAgIGZhaWwoJ2NyZWF0ZU9iamVjdFN0b3JlIHdpdGggYXV0b0luY3JlbWVu
dCA9IHRydWUgc2hvdWxkIHRocm93Jyk7CisgICAgfSBjYXRjaCAoZXJyKSB7CisgICAgICAgIHRl
c3RQYXNzZWQoIkV4Y2VwdGlvbiB0aHJvd24iKTsKKyAgICAgICAgY29kZSA9IGVyci5jb2RlOwor
ICAgICAgICBzaG91bGRCZSgiY29kZSIsICJ3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5VTktO
T1dOX0VSUiIpOworICAgIH0KKwogICAgIHRyYW5zID0gZXZhbEFuZExvZygidHJhbnMgPSBkYi50
cmFuc2FjdGlvbihbXSwgd2Via2l0SURCVHJhbnNhY3Rpb24uUkVBRF9XUklURSkiKTsKIAogICAg
IHJlcSA9IGV2YWxBbmRMb2coInRyYW5zLm9iamVjdFN0b3JlKCdhJykucHV0KHsnYSc6IDB9KSIp
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUt
YmFzaWNzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVj
dHN0b3JlLWJhc2ljcy1leHBlY3RlZC50eHQKaW5kZXggMzI1MmJjYzM5NzgyOGRmOTM5YzU0ZjIz
OTZkYzYyY2FjOWIxMzk5ZS4uNWM4MzhkMWY5N2IwMTA3OGQyOGU2MDk5ZTJkZTc5OGIyZDc1ODc2
ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUt
YmFzaWNzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9v
YmplY3RzdG9yZS1iYXNpY3MtZXhwZWN0ZWQudHh0CkBAIC05Nyw2ICs5NywxMiBAQCBQQVNTIHN0
b3JlLmluZGV4TmFtZXMuaXRlbSgxKSBpcyBudWxsCiBQQVNTIHN0b3JlLmluZGV4TmFtZXMuaXRl
bSgxMDApIGlzIG51bGwKIHRyYW5zYWN0aW9uID0gZGIudHJhbnNhY3Rpb24oKQogc3RvcmUgPSB0
cmFuc2FjdGlvbi5vYmplY3RTdG9yZSgnc3RvcmVOYW1lJykKK1RyeSB0byBpbnNlcnQgZGF0YSB3
aXRoIGEgRGF0ZSBrZXk6CitzdG9yZS5hZGQoe3g6ICdmb28nfSwgbmV3IERhdGUoKSkKK1BBU1Mg
RXhjZXB0aW9uIHRocm93bgorUEFTUyBjb2RlIGlzIERPTUV4Y2VwdGlvbi5UWVBFX01JU01BVENI
X0VSUgorVHJ5IHRvIGluc2VydCBkYXRhIHdoZXJlIGtleSBwYXRoIHlpZWxkcyBhIERhdGUga2V5
Ogorc3RvcmUuYWRkKHt4OiBuZXcgRGF0ZSgpfSwgJ2ZvbycpCiBzdG9yZS5hZGQoe3g6ICd2YWx1
ZSd9LCAna2V5JykKIFBBU1MgJ29uc3VjY2VzcycgaW4gcmVzdWx0IGlzIHRydWUKIFBBU1MgJ29u
ZXJyb3InIGluIHJlc3VsdCBpcyB0cnVlCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdl
L2luZGV4ZWRkYi9vYmplY3RzdG9yZS1iYXNpY3MuaHRtbCBiL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL29iamVjdHN0b3JlLWJhc2ljcy5odG1sCmluZGV4IDA1MDFmMzAxMjA5MDJjYWE0
MDQ0YWM0OTc3NzRmYTMxZWRiOGU3MzAuLmY2MWFhOWYwMzAyNGMwNjBmNmRmNTgzNDcwNTJlMDlj
OTVkMWFjMTggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVj
dHN0b3JlLWJhc2ljcy5odG1sCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29i
amVjdHN0b3JlLWJhc2ljcy5odG1sCkBAIC0xNDIsNiArMTQyLDIzIEBAIGZ1bmN0aW9uIGFkZERh
dGEoKQogICAgIHZhciB0cmFuc2FjdGlvbiA9IGV2YWxBbmRMb2coInRyYW5zYWN0aW9uID0gZGIu
dHJhbnNhY3Rpb24oKSIpOwogICAgIHRyYW5zYWN0aW9uLm9uYWJvcnQgPSB1bmV4cGVjdGVkQWJv
cnRDYWxsYmFjazsKICAgICB3aW5kb3cuc3RvcmUgPSBldmFsQW5kTG9nKCJzdG9yZSA9IHRyYW5z
YWN0aW9uLm9iamVjdFN0b3JlKCdzdG9yZU5hbWUnKSIpOworCisgICAgZGVidWcoIlRyeSB0byBp
bnNlcnQgZGF0YSB3aXRoIGEgRGF0ZSBrZXk6Iik7CisgICAgdHJ5IHsKKyAgICAgICAgZGVidWco
InN0b3JlLmFkZCh7eDogJ2Zvbyd9LCBuZXcgRGF0ZSgpKSIpOworICAgICAgICBzdG9yZS5hZGQo
e3g6ICdmb28nfSwgbmV3IERhdGUoKSk7CisgICAgICAgIHRlc3RGYWlsZWQoIlBhc3NpbmcgYSBE
YXRlIGFzIGtleSBhcmd1bWVudCBzaG91bGQgaGF2ZSB0aHJvd24uIik7CisgICAgfSBjYXRjaCAo
ZXJyKSB7CisgICAgICAgIHRlc3RQYXNzZWQoIkV4Y2VwdGlvbiB0aHJvd24iKTsKKyAgICAgICAg
Y29kZSA9IGVyci5jb2RlOworICAgICAgICBzaG91bGRCZSgiY29kZSIsICJET01FeGNlcHRpb24u
VFlQRV9NSVNNQVRDSF9FUlIiKTsKKyAgICB9CisKKyAgICBkZWJ1ZygiVHJ5IHRvIGluc2VydCBk
YXRhIHdoZXJlIGtleSBwYXRoIHlpZWxkcyBhIERhdGUga2V5OiIpOworICAgIHJlc3VsdCA9IGV2
YWxBbmRMb2coInN0b3JlLmFkZCh7eDogbmV3IERhdGUoKX0sICdmb28nKSIpOworICAgIHJlc3Vs
dC5vbnN1Y2Nlc3MgPSB1bmV4cGVjdGVkU3VjY2Vzc0NhbGxiYWNrOworICAgIHJlc3VsdC5vbmVy
cm9yID0gZnVuY3Rpb24gKCkge307CisKICAgICByZXN1bHQgPSBldmFsQW5kTG9nKCJzdG9yZS5h
ZGQoe3g6ICd2YWx1ZSd9LCAna2V5JykiKTsKICAgICB2ZXJpZnlSZXN1bHQocmVzdWx0KTsKICAg
ICByZXN1bHQub25zdWNjZXNzID0gYWRkU3VjY2VzczsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hh
bmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODAwNzIyZDYzMjA3ZGNjNTMzYzc1NDJm
MDcwN2VhNjhjYjQ3ZDlkMy4uZDAwOTkwMzc2ZmFjNmMyNzY2OTk0YzEzMjJkODViYmQ0YTFmNDcx
OSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cK
QEAgLTEsNSArMSwyNSBAQAogMjAxMC0xMS0yNSAgSGFucyBXZW5uYm9yZyAgPGhhbnNAY2hyb21p
dW0ub3JnPgogCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEluZGV4ZWREQjogQmV0dGVyIGVycm9ycyBmb3Igbm90IHlldCBpbXBsZW1lbnRlZCBmZWF0dXJl
cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTAwNzUK
KworICAgICAgICBSYWlzZSBhbiBleGNlcHRpb24gaWYgY3JlYXRlT2JqZWN0U3RvcmUgaXMgY2Fs
bGVkIHdpdGggYXV0b0luY3JlbWVudAorICAgICAgICBzZXQgdG8gdHJ1ZS4KKworICAgICAgICBC
ZSBhIGxpdHRsZSBiaXQgbW9yZSBleHBsaWNpdCBpbiBJREJCaW5kaW5nVXRpbGl0aWVzIHRoYXQg
d2UgZG9uJ3QKKyAgICAgICAgYWxsb3cgdXNpbmcgRGF0ZSBvYmplY3RzIGFzIGtleXMgeWV0Lgor
CisgICAgICAgICogYmluZGluZ3MvdjgvSURCQmluZGluZ1V0aWxpdGllcy5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpjcmVhdGVJREJLZXlGcm9tVmFsdWUpOgorICAgICAgICAqIHN0b3JhZ2UvSURC
RGF0YWJhc2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURCRGF0YWJhc2U6OmNyZWF0ZU9iamVj
dFN0b3JlKToKKyAgICAgICAgKiBzdG9yYWdlL0lEQk9iamVjdFN0b3JlQmFja2VuZEltcGwuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SURCT2JqZWN0U3RvcmVCYWNrZW5kSW1wbDo6cHV0SW50ZXJu
YWwpOgorCisyMDEwLTExLTI1ICBIYW5zIFdlbm5ib3JnICA8aGFuc0BjaHJvbWl1bS5vcmc+CisK
ICAgICAgICAgUmV2aWV3ZWQgYnkgSmVyZW15IE9ybG93LgogCiAgICAgICAgIFY4IEJpbmRpbmdz
OiByZW1vdmUgZmF1bHR5IGluY2x1ZGUgaW4gT3B0aW9uc09iamVjdC5oCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2JpbmRpbmdzL3Y4L0lEQkJpbmRpbmdVdGlsaXRpZXMuY3BwIGIvV2ViQ29yZS9iaW5k
aW5ncy92OC9JREJCaW5kaW5nVXRpbGl0aWVzLmNwcAppbmRleCAxMjNiMTVjMTAxZDY4YmMwOTVk
NTJjYzJlMjIxYTFmMTU4ZTA2NjU3Li42NDRlMmQyZWZjMDQ0NTcwYWNiZDc5Nzc1YjljYzc5NWVm
OTMzYmIzIDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L0lEQkJpbmRpbmdVdGlsaXRp
ZXMuY3BwCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvdjgvSURCQmluZGluZ1V0aWxpdGllcy5jcHAK
QEAgLTQ1LDcgKzQ1LDggQEAgUGFzc1JlZlB0cjxJREJLZXk+IGNyZWF0ZUlEQktleUZyb21WYWx1
ZSh2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdmFsdWUpCiAgICAgICAgIHJldHVybiBJREJLZXk6OmNy
ZWF0ZSh2YWx1ZS0+SW50MzJWYWx1ZSgpKTsKICAgICBpZiAodmFsdWUtPklzU3RyaW5nKCkpCiAg
ICAgICAgIHJldHVybiBJREJLZXk6OmNyZWF0ZSh2OFZhbHVlVG9XZWJDb3JlU3RyaW5nKHZhbHVl
KSk7Ci0gICAgLy8gRklYTUU6IEltcGxlbWVudCBkYXRlcy4KKyAgICBpZiAodmFsdWUtPklzRGF0
ZSgpKQorICAgICAgICByZXR1cm4gMDsgLy8gU2lnbmFscyB0eXBlIGVycm9yLiBGSVhNRTogSW1w
bGVtZW50IGRhdGVzLgogCiAgICAgcmV0dXJuIDA7IC8vIFNpZ25hbHMgdHlwZSBlcnJvci4KIH0K
ZGlmZiAtLWdpdCBhL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZS5jcHAgYi9XZWJDb3JlL3N0
b3JhZ2UvSURCRGF0YWJhc2UuY3BwCmluZGV4IDcyZmYxN2Q0NWJkZTVlM2E2YWMzNjEzYjE3Zjdi
OTY1MGZlNzc5M2EuLjlhODcyN2Y5ZjIxMWRkNzE4NjMyNGEyMDY4ZWM1MmEwOWQ0OTIwZjAgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZS5jcHAKKysrIGIvV2ViQ29yZS9z
dG9yYWdlL0lEQkRhdGFiYXNlLmNwcApAQCAtNjksOSArNjksMTUgQEAgUGFzc1JlZlB0cjxJREJP
YmplY3RTdG9yZT4gSURCRGF0YWJhc2U6OmNyZWF0ZU9iamVjdFN0b3JlKGNvbnN0IFN0cmluZyYg
bmFtZSwgY28KICAgICBvcHRpb25zLmdldEtleUJvb2woImF1dG9JbmNyZW1lbnQiLCBhdXRvSW5j
cmVtZW50KTsKICAgICAvLyBGSVhNRTogTG9vayB1cCBldmljdGFibGUgYW5kIHBhc3MgdGhhdCBv
biBhcyB3ZWxsLgogCisgICAgaWYgKGF1dG9JbmNyZW1lbnQpIHsKKyAgICAgICAgLy8gRklYTUU6
IEltcGxlbWVudCBzdXBwb3J0IGZvciBhdXRvIGluY3JlbWVudC4KKyAgICAgICAgZWMgPSBJREJE
YXRhYmFzZUV4Y2VwdGlvbjo6VU5LTk9XTl9FUlI7CisgICAgICAgIHJldHVybiAwOworICAgIH0K
KwogICAgIFJlZlB0cjxJREJPYmplY3RTdG9yZUJhY2tlbmRJbnRlcmZhY2U+IG9iamVjdFN0b3Jl
ID0gbV9iYWNrZW5kLT5jcmVhdGVPYmplY3RTdG9yZShuYW1lLCBrZXlQYXRoLCBhdXRvSW5jcmVt
ZW50LCBtX3NldFZlcnNpb25UcmFuc2FjdGlvbi5nZXQoKSwgZWMpOwogICAgIGlmICghb2JqZWN0
U3RvcmUpIHsKLSAgICAgICAgLy8gRklYTUU6IEFTU0VSVChlYykgb25jZSBVTktOT1dOX0VSUiBp
cyBub3QgMC4KKyAgICAgICAgQVNTRVJUKGVjKTsKICAgICAgICAgcmV0dXJuIDA7CiAgICAgfQog
ICAgIHJldHVybiBJREJPYmplY3RTdG9yZTo6Y3JlYXRlKG9iamVjdFN0b3JlLnJlbGVhc2UoKSwg
bV9zZXRWZXJzaW9uVHJhbnNhY3Rpb24uZ2V0KCkpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>74889</attachid>
            <date>2010-11-25 10:02:53 -0800</date>
            <delta_ts>2010-11-25 10:11:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-50075-20101125180251.patch</filename>
            <type>text/plain</type>
            <size>8266</size>
            <attacher name="Hans Wennborg">hans</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAzZWMyZDA4MTc1MzA3MjM1M2U2M2Q0NGY5ZTBhZjIyZjIxZDhhOTYzLi40OWVlZjMy
YjQ4N2NmYmNlYzliNzE4YTY3MDQ5YTllNDUyYzk3ZjM3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAK
KzIwMTAtMTEtMjUgIEhhbnMgV2VubmJvcmcgIDxoYW5zQGNocm9taXVtLm9yZz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbmRleGVkREI6IEJldHRl
ciBlcnJvcnMgZm9yIG5vdCB5ZXQgaW1wbGVtZW50ZWQgZmVhdHVyZXMKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUwMDc1CisKKyAgICAgICAgVGVzdCB0
aGF0IGluc2VydGluZyBhIHJlY29yZCB3aGVyZSB0aGUga2V5IGlzIGEgRGF0ZSAoZWl0aGVyCisg
ICAgICAgIGV4cGxpY2l0bHksIG9yIHZpYSBhIGtleSBwYXRoKSB5aWVsZHMgYW4gZXJyb3IuCisK
KyAgICAgICAgVGVzdCB0aGF0IGNhbGxpbmcgY3JlYXRlT2JqZWN0U3RvcmUgd2l0aCBhdXRvSW5j
cmVtZW50ID0gdHJ1ZQorICAgICAgICByYWlzZXMgYW4gZXhjZXB0aW9uLgorCisgICAgICAgICog
c3RvcmFnZS9pbmRleGVkZGIvY3JlYXRlLW9iamVjdC1zdG9yZS1vcHRpb25zLWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9jcmVhdGUtb2JqZWN0LXN0b3JlLW9wdGlv
bnMuaHRtbDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1iYXNpY3Mt
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLWJh
c2ljcy5odG1sOgorCiAyMDEwLTExLTI1ICBJbHlhIFRpa2hvbm92c2t5ICA8bG9pc2xvQGNocm9t
aXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLiBFbmFibGUgdGVzdHMgaW4gY2hyb21pdW0u
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9jcmVhdGUtb2JqZWN0
LXN0b3JlLW9wdGlvbnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVk
ZGIvY3JlYXRlLW9iamVjdC1zdG9yZS1vcHRpb25zLWV4cGVjdGVkLnR4dAppbmRleCBhZWMzODFm
OWQyNzE4OGNjYjZiNTFjODk3NGJkZDJlMzJmMjA2ZWEyLi5mMTE2MjgwZDFmYmY0NmQ5YTAwMDlm
ZWVkYmM2YTEzY2QxYzkyZjA2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4
ZWRkYi9jcmVhdGUtb2JqZWN0LXN0b3JlLW9wdGlvbnMtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2NyZWF0ZS1vYmplY3Qtc3RvcmUtb3B0aW9ucy1leHBl
Y3RlZC50eHQKQEAgLTE2LDYgKzE2LDkgQEAgcmVzdWx0ID0gZGIuc2V0VmVyc2lvbigndmVyc2lv
biAxJykKIERlbGV0ZWQgYWxsIG9iamVjdCBzdG9yZXMuCiBkYi5jcmVhdGVPYmplY3RTdG9yZSgn
YScsIHtrZXlQYXRoOiAnYSd9KQogZGIuY3JlYXRlT2JqZWN0U3RvcmUoJ2InKQorZGIuY3JlYXRl
T2JqZWN0U3RvcmUoJ2MnLCB7YXV0b0luY3JlbWVudDogdHJ1ZX0pOworUEFTUyBFeGNlcHRpb24g
dGhyb3duCitQQVNTIGNvZGUgaXMgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uVU5LTk9XTl9F
UlIKIHRyYW5zID0gZGIudHJhbnNhY3Rpb24oW10sIHdlYmtpdElEQlRyYW5zYWN0aW9uLlJFQURf
V1JJVEUpCiB0cmFucy5vYmplY3RTdG9yZSgnYScpLnB1dCh7J2EnOiAwfSkKIHRyYW5zLm9iamVj
dFN0b3JlKCdiJykucHV0KHsnYSc6IDB9LCAwKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3Rv
cmFnZS9pbmRleGVkZGIvY3JlYXRlLW9iamVjdC1zdG9yZS1vcHRpb25zLmh0bWwgYi9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9jcmVhdGUtb2JqZWN0LXN0b3JlLW9wdGlvbnMuaHRtbApp
bmRleCBiMjhkMmQyNjg1MzRiYzYzNTBhODJjMjljMGI3NDViZjk2MDI4YTBjLi4zZGIyZGQ0YjFk
ZTk2YzBmMDlmMTlhMjYzNjM1MjRhNmNiZjA1OGUzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9z
dG9yYWdlL2luZGV4ZWRkYi9jcmVhdGUtb2JqZWN0LXN0b3JlLW9wdGlvbnMuaHRtbAorKysgYi9M
YXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9jcmVhdGUtb2JqZWN0LXN0b3JlLW9wdGlvbnMu
aHRtbApAQCAtNDQsNiArNDQsMTcgQEAgZnVuY3Rpb24gY2xlYW5lZCgpCiAgICAgZXZhbEFuZExv
ZygiZGIuY3JlYXRlT2JqZWN0U3RvcmUoJ2EnLCB7a2V5UGF0aDogJ2EnfSkiKTsKICAgICBldmFs
QW5kTG9nKCJkYi5jcmVhdGVPYmplY3RTdG9yZSgnYicpIik7CiAKKyAgICB0cnkgeworICAgICAg
ICAvLyBGSVhNRTogVGhpcyBzaG91bGQgd29yayBpbiB0aGUgZnV0dXJlLgorICAgICAgICBkZWJ1
ZygiZGIuY3JlYXRlT2JqZWN0U3RvcmUoJ2MnLCB7YXV0b0luY3JlbWVudDogdHJ1ZX0pOyIpOwor
ICAgICAgICBkYi5jcmVhdGVPYmplY3RTdG9yZSgnYycsIHthdXRvSW5jcmVtZW50OiB0cnVlfSk7
CisgICAgICAgIHRlc3RGYWlsZWQoJ2NyZWF0ZU9iamVjdFN0b3JlIHdpdGggYXV0b0luY3JlbWVu
dCA9IHRydWUgc2hvdWxkIHRocm93Jyk7CisgICAgfSBjYXRjaCAoZXJyKSB7CisgICAgICAgIHRl
c3RQYXNzZWQoIkV4Y2VwdGlvbiB0aHJvd24iKTsKKyAgICAgICAgY29kZSA9IGVyci5jb2RlOwor
ICAgICAgICBzaG91bGRCZSgiY29kZSIsICJ3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5VTktO
T1dOX0VSUiIpOworICAgIH0KKwogICAgIHRyYW5zID0gZXZhbEFuZExvZygidHJhbnMgPSBkYi50
cmFuc2FjdGlvbihbXSwgd2Via2l0SURCVHJhbnNhY3Rpb24uUkVBRF9XUklURSkiKTsKIAogICAg
IHJlcSA9IGV2YWxBbmRMb2coInRyYW5zLm9iamVjdFN0b3JlKCdhJykucHV0KHsnYSc6IDB9KSIp
OwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUt
YmFzaWNzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVj
dHN0b3JlLWJhc2ljcy1leHBlY3RlZC50eHQKaW5kZXggMzI1MmJjYzM5NzgyOGRmOTM5YzU0ZjIz
OTZkYzYyY2FjOWIxMzk5ZS4uZGVjZDM2Y2YzMDQ1NjBjZDc4YTZjMGI2YjIyMWM0NjdkMTE0ZWU4
ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUt
YmFzaWNzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9v
YmplY3RzdG9yZS1iYXNpY3MtZXhwZWN0ZWQudHh0CkBAIC05Nyw2ICs5NywxMyBAQCBQQVNTIHN0
b3JlLmluZGV4TmFtZXMuaXRlbSgxKSBpcyBudWxsCiBQQVNTIHN0b3JlLmluZGV4TmFtZXMuaXRl
bSgxMDApIGlzIG51bGwKIHRyYW5zYWN0aW9uID0gZGIudHJhbnNhY3Rpb24oKQogc3RvcmUgPSB0
cmFuc2FjdGlvbi5vYmplY3RTdG9yZSgnc3RvcmVOYW1lJykKK1RyeSB0byBpbnNlcnQgZGF0YSB3
aXRoIGEgRGF0ZSBrZXk6CitzdG9yZS5hZGQoe3g6ICdmb28nfSwgbmV3IERhdGUoKSkKK1BBU1Mg
RXhjZXB0aW9uIHRocm93bgorUEFTUyBjb2RlIGlzIERPTUV4Y2VwdGlvbi5UWVBFX01JU01BVENI
X0VSUgorVHJ5IHRvIGluc2VydCBkYXRhIHdoZXJlIGtleSBwYXRoIHlpZWxkcyBhIERhdGUga2V5
Ogorc3RvcmUuYWRkKHt4OiBuZXcgRGF0ZSgpfSwgJ2ZvbycpCitQQVNTIEFkZGluZyBkYXRhIHdo
ZXJlIGtleSBwYXRoIHlpZWxkZWQgRGF0ZSBrZXkgcmVzdWx0ZWQgaW4gZXJyb3IuCiBzdG9yZS5h
ZGQoe3g6ICd2YWx1ZSd9LCAna2V5JykKIFBBU1MgJ29uc3VjY2VzcycgaW4gcmVzdWx0IGlzIHRy
dWUKIFBBU1MgJ29uZXJyb3InIGluIHJlc3VsdCBpcyB0cnVlCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1iYXNpY3MuaHRtbCBiL0xheW91dFRl
c3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLWJhc2ljcy5odG1sCmluZGV4IDA1MDFm
MzAxMjA5MDJjYWE0MDQ0YWM0OTc3NzRmYTMxZWRiOGU3MzAuLjVmZjUwYzJkMjhkZjM4NzhlMWIx
NDIxYTIxMzZiYTM4YTQ1ZjgxNTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5k
ZXhlZGRiL29iamVjdHN0b3JlLWJhc2ljcy5odG1sCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL29iamVjdHN0b3JlLWJhc2ljcy5odG1sCkBAIC0xNDIsNiArMTQyLDMwIEBAIGZ1
bmN0aW9uIGFkZERhdGEoKQogICAgIHZhciB0cmFuc2FjdGlvbiA9IGV2YWxBbmRMb2coInRyYW5z
YWN0aW9uID0gZGIudHJhbnNhY3Rpb24oKSIpOwogICAgIHRyYW5zYWN0aW9uLm9uYWJvcnQgPSB1
bmV4cGVjdGVkQWJvcnRDYWxsYmFjazsKICAgICB3aW5kb3cuc3RvcmUgPSBldmFsQW5kTG9nKCJz
dG9yZSA9IHRyYW5zYWN0aW9uLm9iamVjdFN0b3JlKCdzdG9yZU5hbWUnKSIpOworCisgICAgZGVi
dWcoIlRyeSB0byBpbnNlcnQgZGF0YSB3aXRoIGEgRGF0ZSBrZXk6Iik7CisgICAgLy8gRklYTUU6
IFRoaXMgc2hvdWxkIHdvcmsgaW4gdGhlIGZ1dHVyZS4KKyAgICB0cnkgeworICAgICAgICBkZWJ1
Zygic3RvcmUuYWRkKHt4OiAnZm9vJ30sIG5ldyBEYXRlKCkpIik7CisgICAgICAgIHN0b3JlLmFk
ZCh7eDogJ2Zvbyd9LCBuZXcgRGF0ZSgpKTsKKyAgICAgICAgdGVzdEZhaWxlZCgiUGFzc2luZyBh
IERhdGUgYXMga2V5IGFyZ3VtZW50IHNob3VsZCBoYXZlIHRocm93bi4iKTsKKyAgICB9IGNhdGNo
IChlcnIpIHsKKyAgICAgICAgdGVzdFBhc3NlZCgiRXhjZXB0aW9uIHRocm93biIpOworICAgICAg
ICBjb2RlID0gZXJyLmNvZGU7CisgICAgICAgIHNob3VsZEJlKCJjb2RlIiwgIkRPTUV4Y2VwdGlv
bi5UWVBFX01JU01BVENIX0VSUiIpOworICAgIH0KKworICAgIC8vIEZJWE1FOiBUaGlzIHNob3Vs
ZCB3b3JrIGluIHRoZSBmdXR1cmUuCisgICAgZGVidWcoIlRyeSB0byBpbnNlcnQgZGF0YSB3aGVy
ZSBrZXkgcGF0aCB5aWVsZHMgYSBEYXRlIGtleToiKTsKKyAgICByZXN1bHQgPSBldmFsQW5kTG9n
KCJzdG9yZS5hZGQoe3g6IG5ldyBEYXRlKCl9LCAnZm9vJykiKTsKKyAgICByZXN1bHQub25zdWNj
ZXNzID0gdW5leHBlY3RlZFN1Y2Nlc3NDYWxsYmFjazsKKyAgICByZXN1bHQub25lcnJvciA9IGFk
ZEtleVBhdGhZaWVsZGluZ0RhdGVGYWlsdXJlOworfQorCitmdW5jdGlvbiBhZGRLZXlQYXRoWWll
bGRpbmdEYXRlRmFpbHVyZSgpCit7CisgICAgdGVzdFBhc3NlZCgiQWRkaW5nIGRhdGEgd2hlcmUg
a2V5IHBhdGggeWllbGRlZCBEYXRlIGtleSByZXN1bHRlZCBpbiBlcnJvci4iKTsKKwogICAgIHJl
c3VsdCA9IGV2YWxBbmRMb2coInN0b3JlLmFkZCh7eDogJ3ZhbHVlJ30sICdrZXknKSIpOwogICAg
IHZlcmlmeVJlc3VsdChyZXN1bHQpOwogICAgIHJlc3VsdC5vbnN1Y2Nlc3MgPSBhZGRTdWNjZXNz
OwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRl
eCA4MDA3MjJkNjMyMDdkY2M1MzNjNzU0MmYwNzA3ZWE2OGNiNDdkOWQzLi5kMDA5OTAzNzZmYWM2
YzI3NjY5OTRjMTMyMmQ4NWJiZDRhMWY0NzE5IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxv
ZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI1IEBACiAyMDEwLTExLTI1ICBI
YW5zIFdlbm5ib3JnICA8aGFuc0BjaHJvbWl1bS5vcmc+CiAKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW5kZXhlZERCOiBCZXR0ZXIgZXJyb3JzIGZvciBu
b3QgeWV0IGltcGxlbWVudGVkIGZlYXR1cmVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD01MDA3NQorCisgICAgICAgIFJhaXNlIGFuIGV4Y2VwdGlvbiBp
ZiBjcmVhdGVPYmplY3RTdG9yZSBpcyBjYWxsZWQgd2l0aCBhdXRvSW5jcmVtZW50CisgICAgICAg
IHNldCB0byB0cnVlLgorCisgICAgICAgIEJlIGEgbGl0dGxlIGJpdCBtb3JlIGV4cGxpY2l0IGlu
IElEQkJpbmRpbmdVdGlsaXRpZXMgdGhhdCB3ZSBkb24ndAorICAgICAgICBhbGxvdyB1c2luZyBE
YXRlIG9iamVjdHMgYXMga2V5cyB5ZXQuCisKKyAgICAgICAgKiBiaW5kaW5ncy92OC9JREJCaW5k
aW5nVXRpbGl0aWVzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUlEQktleUZyb21WYWx1
ZSk6CisgICAgICAgICogc3RvcmFnZS9JREJEYXRhYmFzZS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpJREJEYXRhYmFzZTo6Y3JlYXRlT2JqZWN0U3RvcmUpOgorICAgICAgICAqIHN0b3JhZ2UvSURC
T2JqZWN0U3RvcmVCYWNrZW5kSW1wbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJPYmplY3RT
dG9yZUJhY2tlbmRJbXBsOjpwdXRJbnRlcm5hbCk6CisKKzIwMTAtMTEtMjUgIEhhbnMgV2VubmJv
cmcgIDxoYW5zQGNocm9taXVtLm9yZz4KKwogICAgICAgICBSZXZpZXdlZCBieSBKZXJlbXkgT3Js
b3cuCiAKICAgICAgICAgVjggQmluZGluZ3M6IHJlbW92ZSBmYXVsdHkgaW5jbHVkZSBpbiBPcHRp
b25zT2JqZWN0LmgKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvSURCQmluZGluZ1V0
aWxpdGllcy5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L0lEQkJpbmRpbmdVdGlsaXRpZXMuY3Bw
CmluZGV4IDEyM2IxNWMxMDFkNjhiYzA5NWQ1MmNjMmUyMjFhMWYxNThlMDY2NTcuLjY0NGUyZDJl
ZmMwNDQ1NzBhY2JkNzk3NzViOWNjNzk1ZWY5MzNiYjMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmlu
ZGluZ3MvdjgvSURCQmluZGluZ1V0aWxpdGllcy5jcHAKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy92
OC9JREJCaW5kaW5nVXRpbGl0aWVzLmNwcApAQCAtNDUsNyArNDUsOCBAQCBQYXNzUmVmUHRyPElE
QktleT4gY3JlYXRlSURCS2V5RnJvbVZhbHVlKHY4OjpIYW5kbGU8djg6OlZhbHVlPiB2YWx1ZSkK
ICAgICAgICAgcmV0dXJuIElEQktleTo6Y3JlYXRlKHZhbHVlLT5JbnQzMlZhbHVlKCkpOwogICAg
IGlmICh2YWx1ZS0+SXNTdHJpbmcoKSkKICAgICAgICAgcmV0dXJuIElEQktleTo6Y3JlYXRlKHY4
VmFsdWVUb1dlYkNvcmVTdHJpbmcodmFsdWUpKTsKLSAgICAvLyBGSVhNRTogSW1wbGVtZW50IGRh
dGVzLgorICAgIGlmICh2YWx1ZS0+SXNEYXRlKCkpCisgICAgICAgIHJldHVybiAwOyAvLyBTaWdu
YWxzIHR5cGUgZXJyb3IuIEZJWE1FOiBJbXBsZW1lbnQgZGF0ZXMuCiAKICAgICByZXR1cm4gMDsg
Ly8gU2lnbmFscyB0eXBlIGVycm9yLgogfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9zdG9yYWdlL0lE
QkRhdGFiYXNlLmNwcCBiL1dlYkNvcmUvc3RvcmFnZS9JREJEYXRhYmFzZS5jcHAKaW5kZXggNzJm
ZjE3ZDQ1YmRlNWUzYTZhYzM2MTNiMTdmN2I5NjUwZmU3NzkzYS4uOWE4NzI3ZjlmMjExZGQ3MTg2
MzI0YTIwNjhlYzUyYTA5ZDQ5MjBmMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdG9yYWdlL0lEQkRh
dGFiYXNlLmNwcAorKysgYi9XZWJDb3JlL3N0b3JhZ2UvSURCRGF0YWJhc2UuY3BwCkBAIC02OSw5
ICs2OSwxNSBAQCBQYXNzUmVmUHRyPElEQk9iamVjdFN0b3JlPiBJREJEYXRhYmFzZTo6Y3JlYXRl
T2JqZWN0U3RvcmUoY29uc3QgU3RyaW5nJiBuYW1lLCBjbwogICAgIG9wdGlvbnMuZ2V0S2V5Qm9v
bCgiYXV0b0luY3JlbWVudCIsIGF1dG9JbmNyZW1lbnQpOwogICAgIC8vIEZJWE1FOiBMb29rIHVw
IGV2aWN0YWJsZSBhbmQgcGFzcyB0aGF0IG9uIGFzIHdlbGwuCiAKKyAgICBpZiAoYXV0b0luY3Jl
bWVudCkgeworICAgICAgICAvLyBGSVhNRTogSW1wbGVtZW50IHN1cHBvcnQgZm9yIGF1dG8gaW5j
cmVtZW50LgorICAgICAgICBlYyA9IElEQkRhdGFiYXNlRXhjZXB0aW9uOjpVTktOT1dOX0VSUjsK
KyAgICAgICAgcmV0dXJuIDA7CisgICAgfQorCiAgICAgUmVmUHRyPElEQk9iamVjdFN0b3JlQmFj
a2VuZEludGVyZmFjZT4gb2JqZWN0U3RvcmUgPSBtX2JhY2tlbmQtPmNyZWF0ZU9iamVjdFN0b3Jl
KG5hbWUsIGtleVBhdGgsIGF1dG9JbmNyZW1lbnQsIG1fc2V0VmVyc2lvblRyYW5zYWN0aW9uLmdl
dCgpLCBlYyk7CiAgICAgaWYgKCFvYmplY3RTdG9yZSkgewotICAgICAgICAvLyBGSVhNRTogQVNT
RVJUKGVjKSBvbmNlIFVOS05PV05fRVJSIGlzIG5vdCAwLgorICAgICAgICBBU1NFUlQoZWMpOwog
ICAgICAgICByZXR1cm4gMDsKICAgICB9CiAgICAgcmV0dXJuIElEQk9iamVjdFN0b3JlOjpjcmVh
dGUob2JqZWN0U3RvcmUucmVsZWFzZSgpLCBtX3NldFZlcnNpb25UcmFuc2FjdGlvbi5nZXQoKSk7
Cg==
</data>
<flag name="review"
          id="65596"
          type_id="1"
          status="+"
          setter="jorlow"
    />
          </attachment>
      

    </bug>

</bugzilla>