<?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>28094</bug_id>
          
          <creation_ts>2009-08-07 23:11:59 -0700</creation_ts>
          <short_desc>Cleanup DOM Storage namespace shutdown code + usage of security origin.</short_desc>
          <delta_ts>2009-08-10 22:28:35 -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>New Bugs</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="Jeremy Orlow">jorlow</reporter>
          <assigned_to name="Jeremy Orlow">jorlow</assigned_to>
          <cc>beidson</cc>
    
    <cc>michaeln</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>138291</commentid>
    <comment_count>0</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2009-08-07 23:11:59 -0700</bug_when>
    <thetext>If a storage namespace is not explicitly closed, be sure to do so on 
destruction of the object.  In addition, the close call should wait
on the background thread finishing its syncing.  (Not doing so is actually
a regression from the original LocalStorage code.)

There&apos;s no point to passing in the SecurityOrigin when copying a storage
area since what was passed in is exactly what is stored within each
storage area.  In addition, the non-copy constructor should take in a
PassRefPtr rather than a pointer since that pointer was only passed into
the constuctor for RefPtr&apos;s anyway.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138292</commentid>
    <comment_count>1</comment_count>
      <attachid>34362</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2009-08-07 23:13:57 -0700</bug_when>
    <thetext>Created attachment 34362
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138587</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Nordman">michaeln</who>
    <bug_when>2009-08-09 21:21:10 -0700</bug_when>
    <thetext>A small drive by comment...

97     for (StorageAreaMap::iterator i = m_storageAreaMap.begin(); i != end; ++i) {
98         RefPtr&lt;StorageAreaImpl&gt; areaCopy = i-&gt;second-&gt;copy();
99         newNamespace-&gt;m_storageAreaMap.set(i-&gt;first, areaCopy.release());
100    }

I think you could remove a couple of lines with...

for (StorageAreaMap::iterator i = m_storageAreaMap.begin(); i != end; ++i)
    newNamespace-&gt;m_storageAreaMap.set(i-&gt;first, i-&gt;second-&gt;copy());</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138605</commentid>
    <comment_count>3</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2009-08-09 22:25:49 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; A small drive by comment...
&gt; 
&gt; 97     for (StorageAreaMap::iterator i = m_storageAreaMap.begin(); i != end;
&gt; ++i) {
&gt; 98         RefPtr&lt;StorageAreaImpl&gt; areaCopy = i-&gt;second-&gt;copy();
&gt; 99         newNamespace-&gt;m_storageAreaMap.set(i-&gt;first, areaCopy.release());
&gt; 100    }
&gt; 
&gt; I think you could remove a couple of lines with...
&gt; 
&gt; for (StorageAreaMap::iterator i = m_storageAreaMap.begin(); i != end; ++i)
&gt;     newNamespace-&gt;m_storageAreaMap.set(i-&gt;first, i-&gt;second-&gt;copy());

Good point.  I&apos;ll change that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138613</commentid>
    <comment_count>4</comment_count>
      <attachid>34362</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2009-08-10 00:19:12 -0700</bug_when>
    <thetext>Comment on attachment 34362
Patch v1

r=me w/ michael&apos;s suggested cleanup</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>138907</commentid>
    <comment_count>5</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2009-08-10 22:28:35 -0700</bug_when>
    <thetext>Was landed</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>34362</attachid>
            <date>2009-08-07 23:13:57 -0700</date>
            <delta_ts>2009-08-10 00:19:11 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-28094-20090807231356.patch</filename>
            <type>text/plain</type>
            <size>6609</size>
            <attacher name="Jeremy Orlow">jorlow</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0Njk1MCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzIgQEAKKzIwMDktMDgtMDcgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
Q2xlYW51cCBET00gU3RvcmFnZSBuYW1lc3BhY2Ugc2h1dGRvd24gY29kZSArIHVzYWdlIG9mIHNl
Y3VyaXR5IG9yaWdpbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTI4MDk0CisKKyAgICAgICAgSWYgYSBzdG9yYWdlIG5hbWVzcGFjZSBpcyBub3QgZXhw
bGljaXRseSBjbG9zZWQsIGJlIHN1cmUgdG8gZG8gc28gb24KKyAgICAgICAgZGVzdHJ1Y3Rpb24g
b2YgdGhlIG9iamVjdC4gIEluIGFkZGl0aW9uLCB0aGUgY2xvc2UgY2FsbCBzaG91bGQgd2FpdAor
ICAgICAgICBvbiB0aGUgYmFja2dyb3VuZCB0aHJlYWQgZmluaXNoaW5nIGl0cyBzeW5jaW5nLiAg
KE5vdCBkb2luZyBzbyBpcyBhY3R1YWxseQorICAgICAgICBhIHJlZ3Jlc3Npb24gZnJvbSB0aGUg
b3JpZ2luYWwgTG9jYWxTdG9yYWdlIGNvZGUuKQorCisgICAgICAgIFRoZXJlJ3Mgbm8gcG9pbnQg
dG8gcGFzc2luZyBpbiB0aGUgU2VjdXJpdHlPcmlnaW4gd2hlbiBjb3B5aW5nIGEgc3RvcmFnZQor
ICAgICAgICBhcmVhIHNpbmNlIHdoYXQgd2FzIHBhc3NlZCBpbiBpcyBleGFjdGx5IHdoYXQgaXMg
c3RvcmVkIHdpdGhpbiBlYWNoCisgICAgICAgIHN0b3JhZ2UgYXJlYS4gIEluIGFkZGl0aW9uLCB0
aGUgbm9uLWNvcHkgY29uc3RydWN0b3Igc2hvdWxkIHRha2UgaW4gYQorICAgICAgICBQYXNzUmVm
UHRyIHJhdGhlciB0aGFuIGEgcG9pbnRlciBzaW5jZSB0aGF0IHBvaW50ZXIgd2FzIG9ubHkgcGFz
c2VkIGludG8KKyAgICAgICAgdGhlIGNvbnN0dWN0b3IgZm9yIFJlZlB0cidzIGFueXdheS4KKwor
ICAgICAgICAqIHN0b3JhZ2UvU3RvcmFnZUFyZWFJbXBsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlN0b3JhZ2VBcmVhSW1wbDo6U3RvcmFnZUFyZWFJbXBsKToKKyAgICAgICAgKFdlYkNvcmU6OlN0
b3JhZ2VBcmVhSW1wbDo6Y29weSk6CisgICAgICAgICogc3RvcmFnZS9TdG9yYWdlQXJlYUltcGwu
aDoKKyAgICAgICAgKiBzdG9yYWdlL1N0b3JhZ2VOYW1lc3BhY2VJbXBsLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0b3JhZ2VOYW1lc3BhY2VJbXBsOjpTdG9yYWdlTmFtZXNwYWNlSW1wbCk6Cisg
ICAgICAgIChXZWJDb3JlOjpTdG9yYWdlTmFtZXNwYWNlSW1wbDo6flN0b3JhZ2VOYW1lc3BhY2VJ
bXBsKToKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VOYW1lc3BhY2VJbXBsOjpjb3B5KToKKyAg
ICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VOYW1lc3BhY2VJbXBsOjpjbG9zZSk6CisgICAgICAgICog
c3RvcmFnZS9TdG9yYWdlTmFtZXNwYWNlSW1wbC5oOgorCiAyMDA5LTA4LTA3ICBPbGl2ZXIgSHVu
dCAgPG9saXZlckBhcHBsZS5jb20+CiAKICAgICAgICAgQW5vdGhlciBhdHRlbXB0IHRvIGZpeCB3
aW5kb3dzLgpJbmRleDogV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5jcHAJKHJldmlzaW9uIDQ2
OTAwKQorKysgV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTQ3LDcgKzQ3LDcgQEAgU3RvcmFnZUFyZWFJbXBsOjp+U3RvcmFnZUFyZWFJbXBsKCkK
IHsKIH0KIAotU3RvcmFnZUFyZWFJbXBsOjpTdG9yYWdlQXJlYUltcGwoU3RvcmFnZVR5cGUgc3Rv
cmFnZVR5cGUsIFNlY3VyaXR5T3JpZ2luKiBvcmlnaW4sIFBhc3NSZWZQdHI8U3RvcmFnZVN5bmNN
YW5hZ2VyPiBzeW5jTWFuYWdlcikKK1N0b3JhZ2VBcmVhSW1wbDo6U3RvcmFnZUFyZWFJbXBsKFN0
b3JhZ2VUeXBlIHN0b3JhZ2VUeXBlLCBQYXNzUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiBvcmlnaW4s
IFBhc3NSZWZQdHI8U3RvcmFnZVN5bmNNYW5hZ2VyPiBzeW5jTWFuYWdlcikKICAgICA6IG1fc3Rv
cmFnZVR5cGUoc3RvcmFnZVR5cGUpCiAgICAgLCBtX3NlY3VyaXR5T3JpZ2luKG9yaWdpbikKICAg
ICAsIG1fc3RvcmFnZU1hcChTdG9yYWdlTWFwOjpjcmVhdGUoKSkKQEAgLTY3LDE1ICs2NywxNSBA
QCBTdG9yYWdlQXJlYUltcGw6OlN0b3JhZ2VBcmVhSW1wbChTdG9yYWdlCiAgICAgfQogfQogCi1Q
YXNzUmVmUHRyPFN0b3JhZ2VBcmVhSW1wbD4gU3RvcmFnZUFyZWFJbXBsOjpjb3B5KFNlY3VyaXR5
T3JpZ2luKiBvcmlnaW4pCitQYXNzUmVmUHRyPFN0b3JhZ2VBcmVhSW1wbD4gU3RvcmFnZUFyZWFJ
bXBsOjpjb3B5KCkKIHsKICAgICBBU1NFUlQoIW1faXNTaHV0ZG93bik7Ci0gICAgcmV0dXJuIGFk
b3B0UmVmKG5ldyBTdG9yYWdlQXJlYUltcGwob3JpZ2luLCB0aGlzKSk7CisgICAgcmV0dXJuIGFk
b3B0UmVmKG5ldyBTdG9yYWdlQXJlYUltcGwodGhpcykpOwogfQogCi1TdG9yYWdlQXJlYUltcGw6
OlN0b3JhZ2VBcmVhSW1wbChTZWN1cml0eU9yaWdpbiogb3JpZ2luLCBTdG9yYWdlQXJlYUltcGwq
IGFyZWEpCitTdG9yYWdlQXJlYUltcGw6OlN0b3JhZ2VBcmVhSW1wbChTdG9yYWdlQXJlYUltcGwq
IGFyZWEpCiAgICAgOiBtX3N0b3JhZ2VUeXBlKGFyZWEtPm1fc3RvcmFnZVR5cGUpCi0gICAgLCBt
X3NlY3VyaXR5T3JpZ2luKG9yaWdpbikKKyAgICAsIG1fc2VjdXJpdHlPcmlnaW4oYXJlYS0+bV9z
ZWN1cml0eU9yaWdpbikKICAgICAsIG1fc3RvcmFnZU1hcChhcmVhLT5tX3N0b3JhZ2VNYXApCiAg
ICAgLCBtX3N0b3JhZ2VTeW5jTWFuYWdlcihhcmVhLT5tX3N0b3JhZ2VTeW5jTWFuYWdlcikKICNp
Zm5kZWYgTkRFQlVHCkluZGV4OiBXZWJDb3JlL3N0b3JhZ2UvU3RvcmFnZUFyZWFJbXBsLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VBcmVhSW1wbC5oCShyZXZpc2lvbiA0
NjkwMCkKKysrIFdlYkNvcmUvc3RvcmFnZS9TdG9yYWdlQXJlYUltcGwuaAkod29ya2luZyBjb3B5
KQpAQCAtNDAsNyArNDAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICBjbGFzcyBTdG9y
YWdlQXJlYUltcGwgOiBwdWJsaWMgU3RvcmFnZUFyZWEgewogICAgIHB1YmxpYzoKLSAgICAgICAg
U3RvcmFnZUFyZWFJbXBsKFN0b3JhZ2VUeXBlLCBTZWN1cml0eU9yaWdpbiosIFBhc3NSZWZQdHI8
U3RvcmFnZVN5bmNNYW5hZ2VyPik7CisgICAgICAgIFN0b3JhZ2VBcmVhSW1wbChTdG9yYWdlVHlw
ZSwgUGFzc1JlZlB0cjxTZWN1cml0eU9yaWdpbj4sIFBhc3NSZWZQdHI8U3RvcmFnZVN5bmNNYW5h
Z2VyPik7CiAgICAgICAgIHZpcnR1YWwgflN0b3JhZ2VBcmVhSW1wbCgpOwogCiAgICAgICAgIC8v
IFRoZSBIVE1MNSBET00gU3RvcmFnZSBBUEkgKGFuZCBjb250YWlucykKQEAgLTUyLDcgKzUyLDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB2aXJ0dWFsIHZvaWQgY2xlYXIoRnJhbWUq
IHNvdXJjZUZyYW1lKTsKICAgICAgICAgdmlydHVhbCBib29sIGNvbnRhaW5zKGNvbnN0IFN0cmlu
ZyYga2V5KSBjb25zdDsKIAotICAgICAgICBQYXNzUmVmUHRyPFN0b3JhZ2VBcmVhSW1wbD4gY29w
eShTZWN1cml0eU9yaWdpbiopOworICAgICAgICBQYXNzUmVmUHRyPFN0b3JhZ2VBcmVhSW1wbD4g
Y29weSgpOwogICAgICAgICB2b2lkIGNsb3NlKCk7CiAKICAgICAgICAgLy8gQ291bGQgYmUgY2Fs
bGVkIGZyb20gYSBiYWNrZ3JvdW5kIHRocmVhZC4KQEAgLTYwLDcgKzYwLDcgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogICAgICAgICBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4oKTsKIAog
ICAgIHByaXZhdGU6Ci0gICAgICAgIFN0b3JhZ2VBcmVhSW1wbChTZWN1cml0eU9yaWdpbiosIFN0
b3JhZ2VBcmVhSW1wbCopOworICAgICAgICBTdG9yYWdlQXJlYUltcGwoU3RvcmFnZUFyZWFJbXBs
Kik7CiAKICAgICAgICAgdm9pZCBibG9ja1VudGlsSW1wb3J0Q29tcGxldGUoKSBjb25zdDsKIApJ
bmRleDogV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VOYW1lc3BhY2VJbXBsLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL3N0b3JhZ2UvU3RvcmFnZU5hbWVzcGFjZUltcGwuY3BwCShyZXZpc2lvbiA0
NjkwMCkKKysrIFdlYkNvcmUvc3RvcmFnZS9TdG9yYWdlTmFtZXNwYWNlSW1wbC5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTY2LDkgKzY2LDcgQEAgU3RvcmFnZU5hbWVzcGFjZUltcGw6OlN0b3JhZ2VO
YW1lc3BhY2VJbQogICAgIDogbV9zdG9yYWdlVHlwZShzdG9yYWdlVHlwZSkKICAgICAsIG1fcGF0
aChwYXRoLmNvcHkoKSkgIC8vIENvcHkgbWFrZXMgaXQgc2FmZSBmb3Igb3VyIG90aGVyIHRocmVh
ZCB0byBhY2Nlc3MgdGhlIHBhdGguCiAgICAgLCBtX3N5bmNNYW5hZ2VyKDApCi0jaWZuZGVmIE5E
RUJVRwogICAgICwgbV9pc1NodXRkb3duKGZhbHNlKQotI2VuZGlmCiB7CiAgICAgaWYgKG1fc3Rv
cmFnZVR5cGUgPT0gTG9jYWxTdG9yYWdlICYmICFtX3BhdGguaXNFbXB0eSgpKQogICAgICAgICBt
X3N5bmNNYW5hZ2VyID0gU3RvcmFnZVN5bmNNYW5hZ2VyOjpjcmVhdGUobV9wYXRoKTsKQEAgLTgy
LDYgKzgwLDkgQEAgU3RvcmFnZU5hbWVzcGFjZUltcGw6On5TdG9yYWdlTmFtZXNwYWNlSQogICAg
ICAgICBBU1NFUlQobG9jYWxTdG9yYWdlTmFtZXNwYWNlTWFwKCkuZ2V0KG1fcGF0aCkgPT0gdGhp
cyk7CiAgICAgICAgIGxvY2FsU3RvcmFnZU5hbWVzcGFjZU1hcCgpLnJlbW92ZShtX3BhdGgpOwog
ICAgIH0KKyAgICAKKyAgICBpZiAoIW1faXNTaHV0ZG93bikKKyAgICAgICAgY2xvc2UoKTsKIH0K
IAogUGFzc1JlZlB0cjxTdG9yYWdlTmFtZXNwYWNlPiBTdG9yYWdlTmFtZXNwYWNlSW1wbDo6Y29w
eSgpCkBAIC05NCw3ICs5NSw3IEBAIFBhc3NSZWZQdHI8U3RvcmFnZU5hbWVzcGFjZT4gU3RvcmFn
ZU5hbWUKIAogICAgIFN0b3JhZ2VBcmVhTWFwOjppdGVyYXRvciBlbmQgPSBtX3N0b3JhZ2VBcmVh
TWFwLmVuZCgpOwogICAgIGZvciAoU3RvcmFnZUFyZWFNYXA6Oml0ZXJhdG9yIGkgPSBtX3N0b3Jh
Z2VBcmVhTWFwLmJlZ2luKCk7IGkgIT0gZW5kOyArK2kpIHsKLSAgICAgICAgUmVmUHRyPFN0b3Jh
Z2VBcmVhSW1wbD4gYXJlYUNvcHkgPSBpLT5zZWNvbmQtPmNvcHkoaS0+Zmlyc3QuZ2V0KCkpOwor
ICAgICAgICBSZWZQdHI8U3RvcmFnZUFyZWFJbXBsPiBhcmVhQ29weSA9IGktPnNlY29uZC0+Y29w
eSgpOwogICAgICAgICBuZXdOYW1lc3BhY2UtPm1fc3RvcmFnZUFyZWFNYXAuc2V0KGktPmZpcnN0
LCBhcmVhQ29weS5yZWxlYXNlKCkpOwogICAgIH0KIApAQCAtMTE5LDE0ICsxMjAsMjEgQEAgdm9p
ZCBTdG9yYWdlTmFtZXNwYWNlSW1wbDo6Y2xvc2UoKQogewogICAgIEFTU0VSVChpc01haW5UaHJl
YWQoKSk7CiAgICAgQVNTRVJUKCFtX2lzU2h1dGRvd24pOworICAgIAorICAgIC8vIElmIHdlJ3Jl
IHNlc3Npb24gc3RvcmFnZSwgd2Ugc2hvdWxkbid0IG5lZWQgdG8gZG8gYW55IHdvcmsgaGVyZS4K
KyAgICBpZiAobV9zdG9yYWdlVHlwZSA9PSBTZXNzaW9uU3RvcmFnZSkgeworICAgICAgICBBU1NF
UlQoIW1fc3luY01hbmFnZXIpOworICAgICAgICByZXR1cm47CisgICAgfQogCiAgICAgU3RvcmFn
ZUFyZWFNYXA6Oml0ZXJhdG9yIGVuZCA9IG1fc3RvcmFnZUFyZWFNYXAuZW5kKCk7CiAgICAgZm9y
IChTdG9yYWdlQXJlYU1hcDo6aXRlcmF0b3IgaXQgPSBtX3N0b3JhZ2VBcmVhTWFwLmJlZ2luKCk7
IGl0ICE9IGVuZDsgKytpdCkKICAgICAgICAgaXQtPnNlY29uZC0+Y2xvc2UoKTsKKyAgICAKKyAg
ICBpZiAobV9zeW5jTWFuYWdlcikKKyAgICAgICAgbV9zeW5jTWFuYWdlci0+Y2xvc2UoKTsKIAot
I2lmbmRlZiBOREVCVUcKICAgICBtX2lzU2h1dGRvd24gPSB0cnVlOwotI2VuZGlmCiB9CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvc3RvcmFnZS9TdG9yYWdlTmFtZXNw
YWNlSW1wbC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3RvcmFnZS9TdG9yYWdlTmFtZXNwYWNl
SW1wbC5oCShyZXZpc2lvbiA0NjkwMCkKKysrIFdlYkNvcmUvc3RvcmFnZS9TdG9yYWdlTmFtZXNw
YWNlSW1wbC5oCSh3b3JraW5nIGNvcHkpCkBAIC02Miw5ICs2Miw3IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKICAgICAgICAgU3RyaW5nIG1fcGF0aDsKICAgICAgICAgUmVmUHRyPFN0b3JhZ2VTeW5j
TWFuYWdlcj4gbV9zeW5jTWFuYWdlcjsKIAotI2lmbmRlZiBOREVCVUcKICAgICAgICAgYm9vbCBt
X2lzU2h1dGRvd247Ci0jZW5kaWYKICAgICB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
</data>
<flag name="review"
          id="18538"
          type_id="1"
          status="+"
          setter="fishd"
    />
          </attachment>
      

    </bug>

</bugzilla>