<?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>28836</bug_id>
          
          <creation_ts>2009-08-30 15:29:08 -0700</creation_ts>
          <short_desc>[Qt] Add a setting to turn SessionStorage on/off</short_desc>
          <delta_ts>2009-09-03 01:57:44 -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 Qt</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>0</everconfirmed>
          <reporter name="Laszlo Gombos">laszlo.gombos</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ariya.hidayat</cc>
    
    <cc>eric</cc>
    
    <cc>hausmann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>143559</commentid>
    <comment_count>0</comment_count>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2009-08-30 15:29:08 -0700</bug_when>
    <thetext>Az LocalStorage can be turned on/off with a public QtWebKit API and the WebCore internal API allows to turn on/off SessionStorage the same way as LocalStorage, it might make sense to expose a setting for SessionStorage as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143560</commentid>
    <comment_count>1</comment_count>
      <attachid>38796</attachid>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2009-08-30 15:38:50 -0700</bug_when>
    <thetext>Created attachment 38796
Proposed patch.

Also added a test case to make sure that the page content can detect if a particular feature is disabled/enabled runtime via a JS test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143597</commentid>
    <comment_count>2</comment_count>
      <attachid>38796</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-31 03:00:56 -0700</bug_when>
    <thetext>Comment on attachment 38796
Proposed patch.

What is:
 1213 void tst_QWebPage::disableEnable()

and why is it so poorly named?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143641</commentid>
    <comment_count>3</comment_count>
      <attachid>38809</attachid>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2009-08-31 05:52:08 -0700</bug_when>
    <thetext>Created attachment 38809
second try

Updated the patch to change the test case name to testOptionalJSObjects(). The test is to make sure that turning off the feature will make the corresponding JS object undefined.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143893</commentid>
    <comment_count>4</comment_count>
      <attachid>38809</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-01 08:05:00 -0700</bug_when>
    <thetext>Comment on attachment 38809
second try

Not to pick on the naming too much, but testOptionalJSObjects doesn&apos;t mention anything about storage maybe testOptionalStorageJSObjects?

Why does testOptionalJSObjects use two web views?  Seems it doesn&apos;t need to.

Seems like we could make a simple inline function to do all of these tests easier:

testStorageFlag(QWebSettings::SessionStorageEnabled, &quot;sessionStorage&quot;, false);

static inline testStorageFlag(QString settingName, QString jsObjectName, bool settingValue)

Why use:
QCOMPARE(webPage1-&gt;mainFrame()-&gt;evaluateJavaScript(&quot;if(window.sessionStorage == undefined) {2}&quot;).toInt(), 2);
instead of something like this:
QCOMPARE(webPage1-&gt;mainFrame()-&gt;evaluateJavaScript(&quot;window.sessionStorage == undefined&quot;).toInt(), true);
Then it would be easier to compare with teh bool value passed into your little helper function.

Turning the &quot;sessionStorage&quot; stirng passed into your helper into the JS string will require a bit of printf magic. :)

I think this change is fine.  I&apos;m OK to r+ this, but since I expect you&apos;ll read my fantastically convincing arguments above and want to change the test to be more super awesome, I&apos;ll r- this.  If you disagree that the test should be so awsome, feel free to r? this again as-is.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144367</commentid>
    <comment_count>5</comment_count>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2009-09-02 18:53:34 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 38809 [details])

Eric, thanks for the review !

&gt; Not to pick on the naming too much, but testOptionalJSObjects doesn&apos;t mention
&gt; anything about storage maybe testOptionalStorageJSObjects?

I intentionally did not wanted to restrict the name of the test for Storage only. I was hoping that we could expand this test kater as more and more (HTML5) features and with that more and more JS objects become available.

&gt; Why does testOptionalJSObjects use two web views?  Seems it doesn&apos;t need to.

We need two different instances of QWebPage. I will addressed this with a comment in the test case itself in the revised patch.

&gt; Seems like we could make a simple inline function to do all of these tests
&gt; easier:
&gt; 
&gt; testStorageFlag(QWebSettings::SessionStorageEnabled, &quot;sessionStorage&quot;, false);
&gt; 
&gt; static inline testStorageFlag(QString settingName, QString jsObjectName, bool
&gt; settingValue)
&gt; 

This is a valid point I will make this change. I think it is important to do the actual test (e.g. like QCOMPARE) outside of the helper functions, so that if the test fails it would give a meaningful line number for the failure. For this reason the test is not optimized for min lines of code but for most descriptive error message if the test fails.

&gt; Why use:
&gt; QCOMPARE(webPage1-&gt;mainFrame()-&gt;evaluateJavaScript(&quot;if(window.sessionStorage ==
&gt; undefined) {2}&quot;).toInt(), 2);
&gt; instead of something like this:
&gt; QCOMPARE(webPage1-&gt;mainFrame()-&gt;evaluateJavaScript(&quot;window.sessionStorage ==
&gt; undefined&quot;).toInt(), true);
&gt; Then it would be easier to compare with teh bool value passed into your little
&gt; helper function.

Again valid point, will change it.

&gt; Turning the &quot;sessionStorage&quot; stirng passed into your helper into the JS string
&gt; will require a bit of printf magic. :)
&gt; 
&gt; I think this change is fine.  I&apos;m OK to r+ this, but since I expect you&apos;ll read
&gt; my fantastically convincing arguments above and want to change the test to be
&gt; more super awesome, I&apos;ll r- this.  If you disagree that the test should be so
&gt; awsome, feel free to r? this again as-is.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144368</commentid>
    <comment_count>6</comment_count>
      <attachid>38960</attachid>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2009-09-02 18:54:42 -0700</bug_when>
    <thetext>Created attachment 38960
3. try

Address Eric&apos;s comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144435</commentid>
    <comment_count>7</comment_count>
      <attachid>38960</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-03 01:45:43 -0700</bug_when>
    <thetext>Comment on attachment 38960
3. try

LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144446</commentid>
    <comment_count>8</comment_count>
      <attachid>38960</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-03 01:57:40 -0700</bug_when>
    <thetext>Comment on attachment 38960
3. try

Clearing flags on attachment: 38960

Committed r48007: &lt;http://trac.webkit.org/changeset/48007&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>144447</commentid>
    <comment_count>9</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-03 01:57:44 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38796</attachid>
            <date>2009-08-30 15:38:50 -0700</date>
            <delta_ts>2009-08-31 05:52:08 -0700</delta_ts>
            <desc>Proposed patch.</desc>
            <filename>patch_28836.txt</filename>
            <type>text/plain</type>
            <size>5190</size>
            <attacher name="Laszlo Gombos">laszlo.gombos</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNDc4ODMpCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDktMDgtMzAgIExhc3psbyBHb21ib3MgIDxsYXN6bG8u
MS5nb21ib3NAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFtRdF0gQWRkIGEgc2V0dGluZyB0byB0dXJuIFNlc3Npb25TdG9yYWdlIG9u
L29mZgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjg4
MzYKKworICAgICAgICAqIEFwaS9xd2Vic2V0dGluZ3MuY3BwOgorICAgICAgICAoUVdlYlNldHRp
bmdzUHJpdmF0ZTo6YXBwbHkpOgorICAgICAgICAoUVdlYlNldHRpbmdzOjpRV2ViU2V0dGluZ3Mp
OgorICAgICAgICAqIEFwaS9xd2Vic2V0dGluZ3MuaDoKKyAgICAgICAgKiB0ZXN0cy9xd2VicGFn
ZS90c3RfcXdlYnBhZ2UuY3BwOgorICAgICAgICAodHN0X1FXZWJQYWdlOjpkaXNhYmxlRW5hYmxl
KToKKwogMjAwOS0wOC0yOCAgR3VzdGF2byBOb3JvbmhhIFNpbHZhICA8Z3VzdGF2by5ub3Jvbmhh
QGNvbGxhYm9yYS5jby51az4KIAogICAgICAgICBSZXZpZXdlZCBieSBIb2xnZXIgRnJleXRoZXIu
CkluZGV4OiBXZWJLaXQvcXQvQXBpL3F3ZWJzZXR0aW5ncy5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
S2l0L3F0L0FwaS9xd2Vic2V0dGluZ3MuY3BwCShyZXZpc2lvbiA0Nzg3MikKKysrIFdlYktpdC9x
dC9BcGkvcXdlYnNldHRpbmdzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTk0LDYgKzE5NCwxMCBA
QCB2b2lkIFFXZWJTZXR0aW5nc1ByaXZhdGU6OmFwcGx5KCkKICAgICAgICAgdmFsdWUgPSBhdHRy
aWJ1dGVzLnZhbHVlKFFXZWJTZXR0aW5nczo6TG9jYWxDb250ZW50Q2FuQWNjZXNzUmVtb3RlVXJs
cywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2xvYmFsLT5hdHRyaWJ1
dGVzLnZhbHVlKFFXZWJTZXR0aW5nczo6TG9jYWxDb250ZW50Q2FuQWNjZXNzUmVtb3RlVXJscykp
OwogICAgICAgICBzZXR0aW5ncy0+c2V0QWxsb3dVbml2ZXJzYWxBY2Nlc3NGcm9tRmlsZVVSTHMo
dmFsdWUpOworCisgICAgICAgIHZhbHVlID0gYXR0cmlidXRlcy52YWx1ZShRV2ViU2V0dGluZ3M6
OlNlc3Npb25TdG9yYWdlRW5hYmxlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGdsb2JhbC0+YXR0cmlidXRlcy52YWx1ZShRV2ViU2V0dGluZ3M6OlNlc3Npb25TdG9yYWdl
RW5hYmxlZCkpOworICAgICAgICBzZXR0aW5ncy0+c2V0U2Vzc2lvblN0b3JhZ2VFbmFibGVkKHZh
bHVlKTsKICAgICB9IGVsc2UgewogICAgICAgICBRTGlzdDxRV2ViU2V0dGluZ3NQcml2YXRlKj4g
c2V0dGluZ3MgPSAqOjphbGxTZXR0aW5ncygpOwogICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8
IHNldHRpbmdzLmNvdW50KCk7ICsraSkKQEAgLTMzMiw2ICszMzYsOCBAQCBRV2ViU2V0dGluZ3Mq
IFFXZWJTZXR0aW5nczo6Z2xvYmFsU2V0dGluCiAgICAgXHZhbHVlIExvY2FsU3RvcmFnZUVuYWJs
ZWQgU3BlY2lmaWVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgdGhlIEhUTUwgNQogICAgICAgICBsb2Nh
bCBzdG9yYWdlIGZlYXR1cmUgaXMgZW5hYmxlZCBvciBub3QuIERpc2FibGVkIGJ5IGRlZmF1bHQu
CiAgICAgXHZhbHVlIExvY2FsQ29udGVudENhbkFjY2Vzc1JlbW90ZVVybHMgU3BlY2lmaWVzIHdo
ZXRoZXIgbG9jYWxseSBsb2FkZWQgZG9jdW1lbnRzIGFyZSBhbGxvd2VkIHRvIGFjY2VzcyByZW1v
dGUgdXJscy4KKyAgICBcdmFsdWUgU2Vzc2lvblN0b3JhZ2VFbmFibGVkIFNwZWNpZmllcyB3aGV0
aGVyIHN1cHBvcnQgZm9yIHRoZSBIVE1MIDUKKyAgICAgICAgc2Vzc2lvbiBzdG9yYWdlIGZlYXR1
cmUgaXMgZW5hYmxlZCBvciBub3QuIEVuYWJsZWQgYnkgZGVmYXVsdC4gICAgICAgICAgICAgICAg
CiAqLwogCiAvKiEKQEAgLTM2Miw2ICszNjgsNyBAQCBRV2ViU2V0dGluZ3M6OlFXZWJTZXR0aW5n
cygpCiAgICAgZC0+YXR0cmlidXRlcy5pbnNlcnQoUVdlYlNldHRpbmdzOjpPZmZsaW5lV2ViQXBw
bGljYXRpb25DYWNoZUVuYWJsZWQsIHRydWUpOwogICAgIGQtPmF0dHJpYnV0ZXMuaW5zZXJ0KFFX
ZWJTZXR0aW5nczo6TG9jYWxTdG9yYWdlRW5hYmxlZCwgZmFsc2UpOwogICAgIGQtPmF0dHJpYnV0
ZXMuaW5zZXJ0KFFXZWJTZXR0aW5nczo6TG9jYWxDb250ZW50Q2FuQWNjZXNzUmVtb3RlVXJscywg
ZmFsc2UpOworICAgIGQtPmF0dHJpYnV0ZXMuaW5zZXJ0KFFXZWJTZXR0aW5nczo6U2Vzc2lvblN0
b3JhZ2VFbmFibGVkLCB0cnVlKTsKICAgICBkLT5vZmZsaW5lU3RvcmFnZURlZmF1bHRRdW90YSA9
IDUgKiAxMDI0ICogMTAyNDsKIH0KIApJbmRleDogV2ViS2l0L3F0L0FwaS9xd2Vic2V0dGluZ3Mu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJLaXQvcXQvQXBpL3F3ZWJzZXR0aW5ncy5oCShyZXZpc2lvbiA0
Nzg3MikKKysrIFdlYktpdC9xdC9BcGkvcXdlYnNldHRpbmdzLmgJKHdvcmtpbmcgY29weSkKQEAg
LTY3LDcgKzY3LDggQEAgcHVibGljOgogI2lmZGVmIFFUX0RFUFJFQ0FURUQKICAgICAgICAgTG9j
YWxTdG9yYWdlRGF0YWJhc2VFbmFibGVkID0gTG9jYWxTdG9yYWdlRW5hYmxlZCwKICNlbmRpZgot
ICAgICAgICBMb2NhbENvbnRlbnRDYW5BY2Nlc3NSZW1vdGVVcmxzCisgICAgICAgIExvY2FsQ29u
dGVudENhbkFjY2Vzc1JlbW90ZVVybHMsCisgICAgICAgIFNlc3Npb25TdG9yYWdlRW5hYmxlZAog
ICAgIH07CiAgICAgZW51bSBXZWJHcmFwaGljIHsKICAgICAgICAgTWlzc2luZ0ltYWdlR3JhcGhp
YywKSW5kZXg6IFdlYktpdC9xdC90ZXN0cy9xd2VicGFnZS90c3RfcXdlYnBhZ2UuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYktpdC9xdC90ZXN0cy9xd2VicGFnZS90c3RfcXdlYnBhZ2UuY3BwCShyZXZp
c2lvbiA0Nzg3MikKKysrIFdlYktpdC9xdC90ZXN0cy9xd2VicGFnZS90c3RfcXdlYnBhZ2UuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xMTEsNiArMTExLDcgQEAgcHJpdmF0ZSBzbG90czoKICAgICB2
b2lkIHJlcXVlc3RDYWNoZSgpOwogICAgIHZvaWQgcHJvdGVjdEJpbmRpbmdzUnVudGltZU9iamVj
dHNGcm9tQ29sbGVjdG9yKCk7CiAgICAgdm9pZCBsb2NhbFVSTFNjaGVtZXMoKTsKKyAgICB2b2lk
IGRpc2FibGVFbmFibGUoKTsKIAogcHJpdmF0ZToKIApAQCAtMTIwOSw1ICsxMjEwLDMyIEBAIHZv
aWQgdHN0X1FXZWJQYWdlOjpsb2NhbFVSTFNjaGVtZXMoKQogICAgIFFUUllfQ09NUEFSRShRV2Vi
U2VjdXJpdHlPcmlnaW46OmxvY2FsU2NoZW1lcygpLnNpemUoKSwgaSk7CiB9CiAKK3ZvaWQgdHN0
X1FXZWJQYWdlOjpkaXNhYmxlRW5hYmxlKCkKK3sKKyAgICBRV2ViVmlldyB3ZWJWaWV3MTsKKyAg
ICBRV2ViUGFnZSogd2ViUGFnZTEgPSB3ZWJWaWV3MS5wYWdlKCk7CisKKyAgICBRV2ViVmlldyB3
ZWJWaWV3MjsKKyAgICBRV2ViUGFnZSogd2ViUGFnZTIgPSB3ZWJWaWV3MS5wYWdlKCk7CisKKyAg
ICB3ZWJWaWV3MS5zZXRIdG1sKFFTdHJpbmcoIjxodG1sPjxib2R5PnRlc3Q8L2JvZHk+PC9odG1s
PiIpLCBRVXJsKCkpOworICAgIHdlYlZpZXcyLnNldEh0bWwoUVN0cmluZygiPGh0bWw+PGJvZHk+
dGVzdDwvYm9keT48L2h0bWw+IiksIFFVcmwoKSk7CisKKyAgICB3ZWJQYWdlMS0+c2V0dGluZ3Mo
KS0+c2V0QXR0cmlidXRlKFFXZWJTZXR0aW5nczo6T2ZmbGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVF
bmFibGVkLCBmYWxzZSk7CisgICAgUUNPTVBBUkUod2ViUGFnZTEtPm1haW5GcmFtZSgpLT5ldmFs
dWF0ZUphdmFTY3JpcHQoImlmKHdpbmRvdy5hcHBsaWNhdGlvbkNhY2hlID09IHVuZGVmaW5lZCkg
ezJ9IikudG9JbnQoKSwgMik7CisgICAgd2ViUGFnZTItPnNldHRpbmdzKCktPnNldEF0dHJpYnV0
ZShRV2ViU2V0dGluZ3M6Ok9mZmxpbmVXZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCwgdHJ1ZSk7
CisgICAgUUNPTVBBUkUod2ViUGFnZTItPm1haW5GcmFtZSgpLT5ldmFsdWF0ZUphdmFTY3JpcHQo
ImlmKHdpbmRvdy5hcHBsaWNhdGlvbkNhY2hlICE9IHVuZGVmaW5lZCkgezJ9IikudG9JbnQoKSwg
Mik7CisKKyAgICB3ZWJQYWdlMS0+c2V0dGluZ3MoKS0+c2V0QXR0cmlidXRlKFFXZWJTZXR0aW5n
czo6TG9jYWxTdG9yYWdlRW5hYmxlZCwgZmFsc2UpOworICAgIFFDT01QQVJFKHdlYlBhZ2UxLT5t
YWluRnJhbWUoKS0+ZXZhbHVhdGVKYXZhU2NyaXB0KCJpZih3aW5kb3cubG9jYWxTdG9yYWdlID09
IHVuZGVmaW5lZCkgezJ9IikudG9JbnQoKSwgMik7CisgICAgd2ViUGFnZTItPnNldHRpbmdzKCkt
PnNldEF0dHJpYnV0ZShRV2ViU2V0dGluZ3M6OkxvY2FsU3RvcmFnZUVuYWJsZWQsIHRydWUpOwor
ICAgIFFDT01QQVJFKHdlYlBhZ2UyLT5tYWluRnJhbWUoKS0+ZXZhbHVhdGVKYXZhU2NyaXB0KCJp
Zih3aW5kb3cubG9jYWxTdG9yYWdlICE9IHVuZGVmaW5lZCkgezJ9IikudG9JbnQoKSwgMik7CisK
KyAgICB3ZWJQYWdlMS0+c2V0dGluZ3MoKS0+c2V0QXR0cmlidXRlKFFXZWJTZXR0aW5nczo6U2Vz
c2lvblN0b3JhZ2VFbmFibGVkLCBmYWxzZSk7CisgICAgUUNPTVBBUkUod2ViUGFnZTEtPm1haW5G
cmFtZSgpLT5ldmFsdWF0ZUphdmFTY3JpcHQoImlmKHdpbmRvdy5zZXNzaW9uU3RvcmFnZSA9PSB1
bmRlZmluZWQpIHsyfSIpLnRvSW50KCksIDIpOworICAgIHdlYlBhZ2UyLT5zZXR0aW5ncygpLT5z
ZXRBdHRyaWJ1dGUoUVdlYlNldHRpbmdzOjpTZXNzaW9uU3RvcmFnZUVuYWJsZWQsIHRydWUpOwor
ICAgIFFDT01QQVJFKHdlYlBhZ2UyLT5tYWluRnJhbWUoKS0+ZXZhbHVhdGVKYXZhU2NyaXB0KCJp
Zih3aW5kb3cuc2Vzc2lvblN0b3JhZ2UgIT0gdW5kZWZpbmVkKSB7Mn0iKS50b0ludCgpLCAyKTsK
K30KKwogUVRFU1RfTUFJTih0c3RfUVdlYlBhZ2UpCiAjaW5jbHVkZSAidHN0X3F3ZWJwYWdlLm1v
YyIK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38809</attachid>
            <date>2009-08-31 05:52:08 -0700</date>
            <delta_ts>2009-09-02 18:54:42 -0700</delta_ts>
            <desc>second try</desc>
            <filename>patch_28836.txt</filename>
            <type>text/plain</type>
            <size>5214</size>
            <attacher name="Laszlo Gombos">laszlo.gombos</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNDc4OTMpCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDktMDgtMzEgIExhc3psbyBHb21ib3MgIDxsYXN6bG8u
MS5nb21ib3NAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFtRdF0gQWRkIGEgc2V0dGluZyB0byB0dXJuIFNlc3Npb25TdG9yYWdlIG9u
L29mZgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjg4
MzYKKworICAgICAgICAqIEFwaS9xd2Vic2V0dGluZ3MuY3BwOgorICAgICAgICAoUVdlYlNldHRp
bmdzUHJpdmF0ZTo6YXBwbHkpOgorICAgICAgICAoUVdlYlNldHRpbmdzOjpRV2ViU2V0dGluZ3Mp
OgorICAgICAgICAqIEFwaS9xd2Vic2V0dGluZ3MuaDoKKyAgICAgICAgKiB0ZXN0cy9xd2VicGFn
ZS90c3RfcXdlYnBhZ2UuY3BwOgorICAgICAgICAodHN0X1FXZWJQYWdlOjp0ZXN0T3B0aW9uYWxK
U09iamVjdHMpOgorCiAyMDA5LTA4LTI4ICBHdXN0YXZvIE5vcm9uaGEgU2lsdmEgIDxndXN0YXZv
Lm5vcm9uaGFAY29sbGFib3JhLmNvLnVrPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEhvbGdlciBG
cmV5dGhlci4KSW5kZXg6IFdlYktpdC9xdC9BcGkvcXdlYnNldHRpbmdzLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJLaXQvcXQvQXBpL3F3ZWJzZXR0aW5ncy5jcHAJKHJldmlzaW9uIDQ3ODcyKQorKysg
V2ViS2l0L3F0L0FwaS9xd2Vic2V0dGluZ3MuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xOTQsNiAr
MTk0LDEwIEBAIHZvaWQgUVdlYlNldHRpbmdzUHJpdmF0ZTo6YXBwbHkoKQogICAgICAgICB2YWx1
ZSA9IGF0dHJpYnV0ZXMudmFsdWUoUVdlYlNldHRpbmdzOjpMb2NhbENvbnRlbnRDYW5BY2Nlc3NS
ZW1vdGVVcmxzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnbG9iYWwt
PmF0dHJpYnV0ZXMudmFsdWUoUVdlYlNldHRpbmdzOjpMb2NhbENvbnRlbnRDYW5BY2Nlc3NSZW1v
dGVVcmxzKSk7CiAgICAgICAgIHNldHRpbmdzLT5zZXRBbGxvd1VuaXZlcnNhbEFjY2Vzc0Zyb21G
aWxlVVJMcyh2YWx1ZSk7CisKKyAgICAgICAgdmFsdWUgPSBhdHRyaWJ1dGVzLnZhbHVlKFFXZWJT
ZXR0aW5nczo6U2Vzc2lvblN0b3JhZ2VFbmFibGVkLAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgZ2xvYmFsLT5hdHRyaWJ1dGVzLnZhbHVlKFFXZWJTZXR0aW5nczo6U2Vzc2lv
blN0b3JhZ2VFbmFibGVkKSk7CisgICAgICAgIHNldHRpbmdzLT5zZXRTZXNzaW9uU3RvcmFnZUVu
YWJsZWQodmFsdWUpOwogICAgIH0gZWxzZSB7CiAgICAgICAgIFFMaXN0PFFXZWJTZXR0aW5nc1By
aXZhdGUqPiBzZXR0aW5ncyA9ICo6OmFsbFNldHRpbmdzKCk7CiAgICAgICAgIGZvciAoaW50IGkg
PSAwOyBpIDwgc2V0dGluZ3MuY291bnQoKTsgKytpKQpAQCAtMzMyLDYgKzMzNiw4IEBAIFFXZWJT
ZXR0aW5ncyogUVdlYlNldHRpbmdzOjpnbG9iYWxTZXR0aW4KICAgICBcdmFsdWUgTG9jYWxTdG9y
YWdlRW5hYmxlZCBTcGVjaWZpZXMgd2hldGhlciBzdXBwb3J0IGZvciB0aGUgSFRNTCA1CiAgICAg
ICAgIGxvY2FsIHN0b3JhZ2UgZmVhdHVyZSBpcyBlbmFibGVkIG9yIG5vdC4gRGlzYWJsZWQgYnkg
ZGVmYXVsdC4KICAgICBcdmFsdWUgTG9jYWxDb250ZW50Q2FuQWNjZXNzUmVtb3RlVXJscyBTcGVj
aWZpZXMgd2hldGhlciBsb2NhbGx5IGxvYWRlZCBkb2N1bWVudHMgYXJlIGFsbG93ZWQgdG8gYWNj
ZXNzIHJlbW90ZSB1cmxzLgorICAgIFx2YWx1ZSBTZXNzaW9uU3RvcmFnZUVuYWJsZWQgU3BlY2lm
aWVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgdGhlIEhUTUwgNQorICAgICAgICBzZXNzaW9uIHN0b3Jh
Z2UgZmVhdHVyZSBpcyBlbmFibGVkIG9yIG5vdC4gRW5hYmxlZCBieSBkZWZhdWx0LiAgICAgICAg
ICAgICAgICAKICovCiAKIC8qIQpAQCAtMzYyLDYgKzM2OCw3IEBAIFFXZWJTZXR0aW5nczo6UVdl
YlNldHRpbmdzKCkKICAgICBkLT5hdHRyaWJ1dGVzLmluc2VydChRV2ViU2V0dGluZ3M6Ok9mZmxp
bmVXZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCwgdHJ1ZSk7CiAgICAgZC0+YXR0cmlidXRlcy5p
bnNlcnQoUVdlYlNldHRpbmdzOjpMb2NhbFN0b3JhZ2VFbmFibGVkLCBmYWxzZSk7CiAgICAgZC0+
YXR0cmlidXRlcy5pbnNlcnQoUVdlYlNldHRpbmdzOjpMb2NhbENvbnRlbnRDYW5BY2Nlc3NSZW1v
dGVVcmxzLCBmYWxzZSk7CisgICAgZC0+YXR0cmlidXRlcy5pbnNlcnQoUVdlYlNldHRpbmdzOjpT
ZXNzaW9uU3RvcmFnZUVuYWJsZWQsIHRydWUpOwogICAgIGQtPm9mZmxpbmVTdG9yYWdlRGVmYXVs
dFF1b3RhID0gNSAqIDEwMjQgKiAxMDI0OwogfQogCkluZGV4OiBXZWJLaXQvcXQvQXBpL3F3ZWJz
ZXR0aW5ncy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9xdC9BcGkvcXdlYnNldHRpbmdzLmgJKHJl
dmlzaW9uIDQ3ODcyKQorKysgV2ViS2l0L3F0L0FwaS9xd2Vic2V0dGluZ3MuaAkod29ya2luZyBj
b3B5KQpAQCAtNjcsNyArNjcsOCBAQCBwdWJsaWM6CiAjaWZkZWYgUVRfREVQUkVDQVRFRAogICAg
ICAgICBMb2NhbFN0b3JhZ2VEYXRhYmFzZUVuYWJsZWQgPSBMb2NhbFN0b3JhZ2VFbmFibGVkLAog
I2VuZGlmCi0gICAgICAgIExvY2FsQ29udGVudENhbkFjY2Vzc1JlbW90ZVVybHMKKyAgICAgICAg
TG9jYWxDb250ZW50Q2FuQWNjZXNzUmVtb3RlVXJscywKKyAgICAgICAgU2Vzc2lvblN0b3JhZ2VF
bmFibGVkCiAgICAgfTsKICAgICBlbnVtIFdlYkdyYXBoaWMgewogICAgICAgICBNaXNzaW5nSW1h
Z2VHcmFwaGljLApJbmRleDogV2ViS2l0L3F0L3Rlc3RzL3F3ZWJwYWdlL3RzdF9xd2VicGFnZS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L3Rlc3RzL3F3ZWJwYWdlL3RzdF9xd2VicGFnZS5j
cHAJKHJldmlzaW9uIDQ3ODcyKQorKysgV2ViS2l0L3F0L3Rlc3RzL3F3ZWJwYWdlL3RzdF9xd2Vi
cGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTExMSw2ICsxMTEsNyBAQCBwcml2YXRlIHNsb3Rz
OgogICAgIHZvaWQgcmVxdWVzdENhY2hlKCk7CiAgICAgdm9pZCBwcm90ZWN0QmluZGluZ3NSdW50
aW1lT2JqZWN0c0Zyb21Db2xsZWN0b3IoKTsKICAgICB2b2lkIGxvY2FsVVJMU2NoZW1lcygpOwor
ICAgIHZvaWQgdGVzdE9wdGlvbmFsSlNPYmplY3RzKCk7CiAKIHByaXZhdGU6CiAKQEAgLTEyMDks
NSArMTIxMCwzMiBAQCB2b2lkIHRzdF9RV2ViUGFnZTo6bG9jYWxVUkxTY2hlbWVzKCkKICAgICBR
VFJZX0NPTVBBUkUoUVdlYlNlY3VyaXR5T3JpZ2luOjpsb2NhbFNjaGVtZXMoKS5zaXplKCksIGkp
OwogfQogCit2b2lkIHRzdF9RV2ViUGFnZTo6dGVzdE9wdGlvbmFsSlNPYmplY3RzKCkKK3sKKyAg
ICBRV2ViVmlldyB3ZWJWaWV3MTsKKyAgICBRV2ViUGFnZSogd2ViUGFnZTEgPSB3ZWJWaWV3MS5w
YWdlKCk7CisKKyAgICBRV2ViVmlldyB3ZWJWaWV3MjsKKyAgICBRV2ViUGFnZSogd2ViUGFnZTIg
PSB3ZWJWaWV3MS5wYWdlKCk7CisKKyAgICB3ZWJWaWV3MS5zZXRIdG1sKFFTdHJpbmcoIjxodG1s
Pjxib2R5PnRlc3Q8L2JvZHk+PC9odG1sPiIpLCBRVXJsKCkpOworICAgIHdlYlZpZXcyLnNldEh0
bWwoUVN0cmluZygiPGh0bWw+PGJvZHk+dGVzdDwvYm9keT48L2h0bWw+IiksIFFVcmwoKSk7CisK
KyAgICB3ZWJQYWdlMS0+c2V0dGluZ3MoKS0+c2V0QXR0cmlidXRlKFFXZWJTZXR0aW5nczo6T2Zm
bGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVFbmFibGVkLCBmYWxzZSk7CisgICAgUUNPTVBBUkUod2Vi
UGFnZTEtPm1haW5GcmFtZSgpLT5ldmFsdWF0ZUphdmFTY3JpcHQoImlmKHdpbmRvdy5hcHBsaWNh
dGlvbkNhY2hlID09IHVuZGVmaW5lZCkgezJ9IikudG9JbnQoKSwgMik7CisgICAgd2ViUGFnZTIt
PnNldHRpbmdzKCktPnNldEF0dHJpYnV0ZShRV2ViU2V0dGluZ3M6Ok9mZmxpbmVXZWJBcHBsaWNh
dGlvbkNhY2hlRW5hYmxlZCwgdHJ1ZSk7CisgICAgUUNPTVBBUkUod2ViUGFnZTItPm1haW5GcmFt
ZSgpLT5ldmFsdWF0ZUphdmFTY3JpcHQoImlmKHdpbmRvdy5hcHBsaWNhdGlvbkNhY2hlICE9IHVu
ZGVmaW5lZCkgezJ9IikudG9JbnQoKSwgMik7CisKKyAgICB3ZWJQYWdlMS0+c2V0dGluZ3MoKS0+
c2V0QXR0cmlidXRlKFFXZWJTZXR0aW5nczo6TG9jYWxTdG9yYWdlRW5hYmxlZCwgZmFsc2UpOwor
ICAgIFFDT01QQVJFKHdlYlBhZ2UxLT5tYWluRnJhbWUoKS0+ZXZhbHVhdGVKYXZhU2NyaXB0KCJp
Zih3aW5kb3cubG9jYWxTdG9yYWdlID09IHVuZGVmaW5lZCkgezJ9IikudG9JbnQoKSwgMik7Cisg
ICAgd2ViUGFnZTItPnNldHRpbmdzKCktPnNldEF0dHJpYnV0ZShRV2ViU2V0dGluZ3M6OkxvY2Fs
U3RvcmFnZUVuYWJsZWQsIHRydWUpOworICAgIFFDT01QQVJFKHdlYlBhZ2UyLT5tYWluRnJhbWUo
KS0+ZXZhbHVhdGVKYXZhU2NyaXB0KCJpZih3aW5kb3cubG9jYWxTdG9yYWdlICE9IHVuZGVmaW5l
ZCkgezJ9IikudG9JbnQoKSwgMik7CisKKyAgICB3ZWJQYWdlMS0+c2V0dGluZ3MoKS0+c2V0QXR0
cmlidXRlKFFXZWJTZXR0aW5nczo6U2Vzc2lvblN0b3JhZ2VFbmFibGVkLCBmYWxzZSk7CisgICAg
UUNPTVBBUkUod2ViUGFnZTEtPm1haW5GcmFtZSgpLT5ldmFsdWF0ZUphdmFTY3JpcHQoImlmKHdp
bmRvdy5zZXNzaW9uU3RvcmFnZSA9PSB1bmRlZmluZWQpIHsyfSIpLnRvSW50KCksIDIpOworICAg
IHdlYlBhZ2UyLT5zZXR0aW5ncygpLT5zZXRBdHRyaWJ1dGUoUVdlYlNldHRpbmdzOjpTZXNzaW9u
U3RvcmFnZUVuYWJsZWQsIHRydWUpOworICAgIFFDT01QQVJFKHdlYlBhZ2UyLT5tYWluRnJhbWUo
KS0+ZXZhbHVhdGVKYXZhU2NyaXB0KCJpZih3aW5kb3cuc2Vzc2lvblN0b3JhZ2UgIT0gdW5kZWZp
bmVkKSB7Mn0iKS50b0ludCgpLCAyKTsKK30KKwogUVRFU1RfTUFJTih0c3RfUVdlYlBhZ2UpCiAj
aW5jbHVkZSAidHN0X3F3ZWJwYWdlLm1vYyIK
</data>
<flag name="review"
          id="19799"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38960</attachid>
            <date>2009-09-02 18:54:42 -0700</date>
            <delta_ts>2009-09-03 01:57:40 -0700</delta_ts>
            <desc>3. try</desc>
            <filename>patch_28836.txt</filename>
            <type>text/plain</type>
            <size>5952</size>
            <attacher name="Laszlo Gombos">laszlo.gombos</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9xdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5n
ZUxvZwkocmV2aXNpb24gNDgwMDIpCisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNv
cHkpCkBAIC0xLDMgKzEsMTggQEAKKzIwMDktMDktMDIgIExhc3psbyBHb21ib3MgIDxsYXN6bG8u
MS5nb21ib3NAbm9raWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFtRdF0gQWRkIGEgc2V0dGluZyB0byB0dXJuIFNlc3Npb25TdG9yYWdlIG9u
L29mZgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Mjg4
MzYKKworICAgICAgICAqIEFwaS9xd2Vic2V0dGluZ3MuY3BwOgorICAgICAgICAoUVdlYlNldHRp
bmdzUHJpdmF0ZTo6YXBwbHkpOgorICAgICAgICAoUVdlYlNldHRpbmdzOjpRV2ViU2V0dGluZ3Mp
OgorICAgICAgICAqIEFwaS9xd2Vic2V0dGluZ3MuaDoKKyAgICAgICAgKiB0ZXN0cy9xd2VicGFn
ZS90c3RfcXdlYnBhZ2UuY3BwOgorICAgICAgICAodGVzdEZsYWcpOgorICAgICAgICAodHN0X1FX
ZWJQYWdlOjp0ZXN0T3B0aW9uYWxKU09iamVjdHMpOgorCiAyMDA5LTA5LTAyICBSaWNoYXJkIE1v
b3JlICA8cmljaEBrZGUub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFRvciBBcm5lIFZlc3Ri
w7guCkluZGV4OiBXZWJLaXQvcXQvQXBpL3F3ZWJzZXR0aW5ncy5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViS2l0L3F0L0FwaS9xd2Vic2V0dGluZ3MuY3BwCShyZXZpc2lvbiA0Nzk2MykKKysrIFdlYktp
dC9xdC9BcGkvcXdlYnNldHRpbmdzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTk0LDYgKzE5NCwx
MCBAQCB2b2lkIFFXZWJTZXR0aW5nc1ByaXZhdGU6OmFwcGx5KCkKICAgICAgICAgdmFsdWUgPSBh
dHRyaWJ1dGVzLnZhbHVlKFFXZWJTZXR0aW5nczo6TG9jYWxDb250ZW50Q2FuQWNjZXNzUmVtb3Rl
VXJscywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2xvYmFsLT5hdHRy
aWJ1dGVzLnZhbHVlKFFXZWJTZXR0aW5nczo6TG9jYWxDb250ZW50Q2FuQWNjZXNzUmVtb3RlVXJs
cykpOwogICAgICAgICBzZXR0aW5ncy0+c2V0QWxsb3dVbml2ZXJzYWxBY2Nlc3NGcm9tRmlsZVVS
THModmFsdWUpOworCisgICAgICAgIHZhbHVlID0gYXR0cmlidXRlcy52YWx1ZShRV2ViU2V0dGlu
Z3M6OlNlc3Npb25TdG9yYWdlRW5hYmxlZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGdsb2JhbC0+YXR0cmlidXRlcy52YWx1ZShRV2ViU2V0dGluZ3M6OlNlc3Npb25TdG9y
YWdlRW5hYmxlZCkpOworICAgICAgICBzZXR0aW5ncy0+c2V0U2Vzc2lvblN0b3JhZ2VFbmFibGVk
KHZhbHVlKTsKICAgICB9IGVsc2UgewogICAgICAgICBRTGlzdDxRV2ViU2V0dGluZ3NQcml2YXRl
Kj4gc2V0dGluZ3MgPSAqOjphbGxTZXR0aW5ncygpOwogICAgICAgICBmb3IgKGludCBpID0gMDsg
aSA8IHNldHRpbmdzLmNvdW50KCk7ICsraSkKQEAgLTMzMiw2ICszMzYsOCBAQCBRV2ViU2V0dGlu
Z3MqIFFXZWJTZXR0aW5nczo6Z2xvYmFsU2V0dGluCiAgICAgXHZhbHVlIExvY2FsU3RvcmFnZUVu
YWJsZWQgU3BlY2lmaWVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgdGhlIEhUTUwgNQogICAgICAgICBs
b2NhbCBzdG9yYWdlIGZlYXR1cmUgaXMgZW5hYmxlZCBvciBub3QuIERpc2FibGVkIGJ5IGRlZmF1
bHQuCiAgICAgXHZhbHVlIExvY2FsQ29udGVudENhbkFjY2Vzc1JlbW90ZVVybHMgU3BlY2lmaWVz
IHdoZXRoZXIgbG9jYWxseSBsb2FkZWQgZG9jdW1lbnRzIGFyZSBhbGxvd2VkIHRvIGFjY2VzcyBy
ZW1vdGUgdXJscy4KKyAgICBcdmFsdWUgU2Vzc2lvblN0b3JhZ2VFbmFibGVkIFNwZWNpZmllcyB3
aGV0aGVyIHN1cHBvcnQgZm9yIHRoZSBIVE1MIDUKKyAgICAgICAgc2Vzc2lvbiBzdG9yYWdlIGZl
YXR1cmUgaXMgZW5hYmxlZCBvciBub3QuIEVuYWJsZWQgYnkgZGVmYXVsdC4gICAgICAgICAgICAg
ICAgCiAqLwogCiAvKiEKQEAgLTM2Miw2ICszNjgsNyBAQCBRV2ViU2V0dGluZ3M6OlFXZWJTZXR0
aW5ncygpCiAgICAgZC0+YXR0cmlidXRlcy5pbnNlcnQoUVdlYlNldHRpbmdzOjpPZmZsaW5lV2Vi
QXBwbGljYXRpb25DYWNoZUVuYWJsZWQsIHRydWUpOwogICAgIGQtPmF0dHJpYnV0ZXMuaW5zZXJ0
KFFXZWJTZXR0aW5nczo6TG9jYWxTdG9yYWdlRW5hYmxlZCwgZmFsc2UpOwogICAgIGQtPmF0dHJp
YnV0ZXMuaW5zZXJ0KFFXZWJTZXR0aW5nczo6TG9jYWxDb250ZW50Q2FuQWNjZXNzUmVtb3RlVXJs
cywgZmFsc2UpOworICAgIGQtPmF0dHJpYnV0ZXMuaW5zZXJ0KFFXZWJTZXR0aW5nczo6U2Vzc2lv
blN0b3JhZ2VFbmFibGVkLCB0cnVlKTsKICAgICBkLT5vZmZsaW5lU3RvcmFnZURlZmF1bHRRdW90
YSA9IDUgKiAxMDI0ICogMTAyNDsKIH0KIApJbmRleDogV2ViS2l0L3F0L0FwaS9xd2Vic2V0dGlu
Z3MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvcXQvQXBpL3F3ZWJzZXR0aW5ncy5oCShyZXZpc2lv
biA0Nzk2MykKKysrIFdlYktpdC9xdC9BcGkvcXdlYnNldHRpbmdzLmgJKHdvcmtpbmcgY29weSkK
QEAgLTY3LDcgKzY3LDggQEAgcHVibGljOgogI2lmZGVmIFFUX0RFUFJFQ0FURUQKICAgICAgICAg
TG9jYWxTdG9yYWdlRGF0YWJhc2VFbmFibGVkID0gTG9jYWxTdG9yYWdlRW5hYmxlZCwKICNlbmRp
ZgotICAgICAgICBMb2NhbENvbnRlbnRDYW5BY2Nlc3NSZW1vdGVVcmxzCisgICAgICAgIExvY2Fs
Q29udGVudENhbkFjY2Vzc1JlbW90ZVVybHMsCisgICAgICAgIFNlc3Npb25TdG9yYWdlRW5hYmxl
ZAogICAgIH07CiAgICAgZW51bSBXZWJHcmFwaGljIHsKICAgICAgICAgTWlzc2luZ0ltYWdlR3Jh
cGhpYywKSW5kZXg6IFdlYktpdC9xdC90ZXN0cy9xd2VicGFnZS90c3RfcXdlYnBhZ2UuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYktpdC9xdC90ZXN0cy9xd2VicGFnZS90c3RfcXdlYnBhZ2UuY3BwCShy
ZXZpc2lvbiA0Nzk2MykKKysrIFdlYktpdC9xdC90ZXN0cy9xd2VicGFnZS90c3RfcXdlYnBhZ2Uu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMTEsNiArMTExLDcgQEAgcHJpdmF0ZSBzbG90czoKICAg
ICB2b2lkIHJlcXVlc3RDYWNoZSgpOwogICAgIHZvaWQgcHJvdGVjdEJpbmRpbmdzUnVudGltZU9i
amVjdHNGcm9tQ29sbGVjdG9yKCk7CiAgICAgdm9pZCBsb2NhbFVSTFNjaGVtZXMoKTsKKyAgICB2
b2lkIHRlc3RPcHRpb25hbEpTT2JqZWN0cygpOwogCiBwcml2YXRlOgogCkBAIC0xMjA5LDUgKzEy
MTAsNDAgQEAgdm9pZCB0c3RfUVdlYlBhZ2U6OmxvY2FsVVJMU2NoZW1lcygpCiAgICAgUVRSWV9D
T01QQVJFKFFXZWJTZWN1cml0eU9yaWdpbjo6bG9jYWxTY2hlbWVzKCkuc2l6ZSgpLCBpKTsKIH0K
IAorc3RhdGljIGlubGluZSBib29sIHRlc3RGbGFnKFFXZWJQYWdlJiB3ZWJQYWdlLCBRV2ViU2V0
dGluZ3M6OldlYkF0dHJpYnV0ZSBzZXR0aW5nQXR0cmlidXRlLCBjb25zdCBRU3RyaW5nJiBqc09i
amVjdE5hbWUsIGJvb2wgc2V0dGluZ1ZhbHVlKQoreworICAgIHdlYlBhZ2Uuc2V0dGluZ3MoKS0+
c2V0QXR0cmlidXRlKHNldHRpbmdBdHRyaWJ1dGUsIHNldHRpbmdWYWx1ZSk7CisgICAgcmV0dXJu
IHdlYlBhZ2UubWFpbkZyYW1lKCktPmV2YWx1YXRlSmF2YVNjcmlwdChRU3RyaW5nKCIod2luZG93
LiUxICE9IHVuZGVmaW5lZCkiKS5hcmcoanNPYmplY3ROYW1lKSkudG9Cb29sKCk7Cit9CisKK3Zv
aWQgdHN0X1FXZWJQYWdlOjp0ZXN0T3B0aW9uYWxKU09iamVjdHMoKQoreworICAgIC8vIE9uY2Ug
YSBmZWF0dXJlIGlzIGVuYWJsZWQgYW5kIHRoZSBKUyBvYmplY3QgaXMgYWNjZXNzZWQgdHVybmlu
ZyBvZmYgdGhlIHNldHRpbmcgd2lsbCBub3QgdHVybiBvZmYKKyAgICAvLyB0aGUgdmlzaWJpbGl0
eSBvZiB0aGUgSlMgb2JqZWN0IGFueSBtb3JlLiBGb3IgdGhpcyByZWFzb24gdGhpcyB0ZXN0IHVz
ZXMgdHdvIFFXZWJQYWdlIGluc3RhbmNlcy4KKyAgICAvLyBQYXJ0IG9mIHRoZSB0ZXN0IGlzIHRv
IG1ha2Ugc3VyZSB0aGF0IHRoZSBRV2ViUGFnZSBpbnN0YW5jZXMgZG8gbm90IGludGVyZmVyZSB3
aXRoIGVhY2ggb3RoZXIgc28gdHVybmluZyBvbgorICAgIC8vIGEgZmVhdHVyZSBmb3Igb25lIGlu
c3RhbmNlIHdpbGwgbm90IHR1cm4gaXQgb24gZm9yIGFub3RoZXIuCisKKyAgICBRV2ViUGFnZSB3
ZWJQYWdlMTsKKyAgICBRV2ViUGFnZSB3ZWJQYWdlMjsKKworICAgIHdlYlBhZ2UxLmN1cnJlbnRG
cmFtZSgpLT5zZXRIdG1sKFFTdHJpbmcoIjxodG1sPjxib2R5PnRlc3Q8L2JvZHk+PC9odG1sPiIp
LCBRVXJsKCkpOworICAgIHdlYlBhZ2UyLmN1cnJlbnRGcmFtZSgpLT5zZXRIdG1sKFFTdHJpbmco
IjxodG1sPjxib2R5PnRlc3Q8L2JvZHk+PC9odG1sPiIpLCBRVXJsKCkpOworCisgICAgUUNPTVBB
UkUodGVzdEZsYWcod2ViUGFnZTEsIFFXZWJTZXR0aW5nczo6T2ZmbGluZVdlYkFwcGxpY2F0aW9u
Q2FjaGVFbmFibGVkLCAiYXBwbGljYXRpb25DYWNoZSIsIGZhbHNlKSwgZmFsc2UpOworICAgIFFD
T01QQVJFKHRlc3RGbGFnKHdlYlBhZ2UyLCBRV2ViU2V0dGluZ3M6Ok9mZmxpbmVXZWJBcHBsaWNh
dGlvbkNhY2hlRW5hYmxlZCwgImFwcGxpY2F0aW9uQ2FjaGUiLCB0cnVlKSwgIHRydWUpOworICAg
IFFDT01QQVJFKHRlc3RGbGFnKHdlYlBhZ2UxLCBRV2ViU2V0dGluZ3M6Ok9mZmxpbmVXZWJBcHBs
aWNhdGlvbkNhY2hlRW5hYmxlZCwgImFwcGxpY2F0aW9uQ2FjaGUiLCBmYWxzZSksIGZhbHNlKTsK
KyAgICBRQ09NUEFSRSh0ZXN0RmxhZyh3ZWJQYWdlMiwgUVdlYlNldHRpbmdzOjpPZmZsaW5lV2Vi
QXBwbGljYXRpb25DYWNoZUVuYWJsZWQsICJhcHBsaWNhdGlvbkNhY2hlIiwgZmFsc2UpLCB0cnVl
KTsKKworICAgIFFDT01QQVJFKHRlc3RGbGFnKHdlYlBhZ2UxLCBRV2ViU2V0dGluZ3M6OkxvY2Fs
U3RvcmFnZUVuYWJsZWQsICJsb2NhbFN0b3JhZ2UiLCBmYWxzZSksIGZhbHNlKTsKKyAgICBRQ09N
UEFSRSh0ZXN0RmxhZyh3ZWJQYWdlMiwgUVdlYlNldHRpbmdzOjpMb2NhbFN0b3JhZ2VFbmFibGVk
LCAibG9jYWxTdG9yYWdlIiwgdHJ1ZSksICB0cnVlKTsKKyAgICBRQ09NUEFSRSh0ZXN0RmxhZyh3
ZWJQYWdlMSwgUVdlYlNldHRpbmdzOjpMb2NhbFN0b3JhZ2VFbmFibGVkLCAibG9jYWxTdG9yYWdl
IiwgZmFsc2UpLCBmYWxzZSk7CisgICAgUUNPTVBBUkUodGVzdEZsYWcod2ViUGFnZTIsIFFXZWJT
ZXR0aW5nczo6TG9jYWxTdG9yYWdlRW5hYmxlZCwgImxvY2FsU3RvcmFnZSIsIGZhbHNlKSwgdHJ1
ZSk7CisKKyAgICBRQ09NUEFSRSh0ZXN0RmxhZyh3ZWJQYWdlMSwgUVdlYlNldHRpbmdzOjpTZXNz
aW9uU3RvcmFnZUVuYWJsZWQsICJzZXNzaW9uU3RvcmFnZSIsIGZhbHNlKSwgZmFsc2UpOworICAg
IFFDT01QQVJFKHRlc3RGbGFnKHdlYlBhZ2UyLCBRV2ViU2V0dGluZ3M6OlNlc3Npb25TdG9yYWdl
RW5hYmxlZCwgInNlc3Npb25TdG9yYWdlIiwgdHJ1ZSksICB0cnVlKTsKKyAgICBRQ09NUEFSRSh0
ZXN0RmxhZyh3ZWJQYWdlMSwgUVdlYlNldHRpbmdzOjpTZXNzaW9uU3RvcmFnZUVuYWJsZWQsICJz
ZXNzaW9uU3RvcmFnZSIsIGZhbHNlKSwgZmFsc2UpOworICAgIFFDT01QQVJFKHRlc3RGbGFnKHdl
YlBhZ2UyLCBRV2ViU2V0dGluZ3M6OlNlc3Npb25TdG9yYWdlRW5hYmxlZCwgInNlc3Npb25TdG9y
YWdlIiwgZmFsc2UpLCB0cnVlKTsKK30KKwogUVRFU1RfTUFJTih0c3RfUVdlYlBhZ2UpCiAjaW5j
bHVkZSAidHN0X3F3ZWJwYWdlLm1vYyIK
</data>

          </attachment>
      

    </bug>

</bugzilla>