<?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>60281</bug_id>
          
          <creation_ts>2011-05-05 11:20:09 -0700</creation_ts>
          <short_desc>Associated URL loaders need to keep a reference to downloaded files</short_desc>
          <delta_ts>2011-06-17 23:06:36 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit API</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>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>
          <dependson>60444</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brett Wilson (Google)">brettw</reporter>
          <assigned_to name="Brett Wilson (Google)">brettw</assigned_to>
          <cc>abarth</cc>
    
    <cc>inferno</cc>
    
    <cc>michaeln</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>398854</commentid>
    <comment_count>0</comment_count>
    <who name="Brett Wilson (Google)">brettw</who>
    <bug_when>2011-05-05 11:20:09 -0700</bug_when>
    <thetext>The associated URL loader need to keep a reference to the file object when using load to file. The internal request state is torn down inside the WebCore loader as soon as the request is complete, which frees the reference to the file. This makes accessing the file after load complete fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>399145</commentid>
    <comment_count>1</comment_count>
      <attachid>92491</attachid>
    <who name="Brett Wilson (Google)">brettw</who>
    <bug_when>2011-05-05 16:10:48 -0700</bug_when>
    <thetext>Created attachment 92491
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>399155</commentid>
    <comment_count>2</comment_count>
      <attachid>92491</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-05-05 16:21:40 -0700</bug_when>
    <thetext>Comment on attachment 92491
Patch

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

It seems slightly strange to add a reference to the object you want but then not to use that reference anywhere.  Where is the code that accesses the file?

Also, this patch lacks a test.  Having a test is better than having a comment explaining the oddness because a test will cause us not to regress in the future.

&gt; Source/WebKit/chromium/src/AssociatedURLLoader.cpp:126
&gt; +      m_downloadedFile = File::create(response.downloadFilePath());

WebKit uses four-space indent.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>399168</commentid>
    <comment_count>3</comment_count>
    <who name="Michael Nordman">michaeln</who>
    <bug_when>2011-05-05 16:39:59 -0700</bug_when>
    <thetext>lgtm!

WebCore common code does not support &apos;downloadToFile&apos; semantics, and these semantics are not accessible via script even in chrome. This is in support of pepper-plugins. There are tests for this, but not amongst webkit&apos;s layout test suite...
http://dev.chromium.org/developers/design-documents/pepper-plugin-implementation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>399179</commentid>
    <comment_count>4</comment_count>
      <attachid>92499</attachid>
    <who name="Brett Wilson (Google)">brettw</who>
    <bug_when>2011-05-05 16:48:21 -0700</bug_when>
    <thetext>Created attachment 92499
Indentation fixed</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>399646</commentid>
    <comment_count>5</comment_count>
      <attachid>92609</attachid>
    <who name="Brett Wilson (Google)">brettw</who>
    <bug_when>2011-05-06 11:06:49 -0700</bug_when>
    <thetext>Created attachment 92609
Different direction (not ready for checkin)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>399664</commentid>
    <comment_count>6</comment_count>
      <attachid>92609</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-05-06 11:28:16 -0700</bug_when>
    <thetext>Comment on attachment 92609
Different direction (not ready for checkin)

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

Yeah, I think this approach is better.

&gt; Source/WebCore/platform/network/chromium/ResourceResponse.cpp:43
&gt; -    data-&gt;m_downloadFilePath = m_downloadFilePath;
&gt; +    //data-&gt;m_downloadFilePath = m_downloadFilePath;

Rather then commenting out this code, I&apos;d put a FIXME about whether we should copy the downloaded file, ideally with a bug number.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>399745</commentid>
    <comment_count>7</comment_count>
      <attachid>92629</attachid>
    <who name="Brett Wilson (Google)">brettw</who>
    <bug_when>2011-05-06 12:57:48 -0700</bug_when>
    <thetext>Created attachment 92629
New patch

This patch adds a references to bug 60397 which I filed to track the threading issue.

I talked to mnordman and we don&apos;t know how to test this in a reasonable way in the WebKit repo (there is already a test in Chrome which is how we found this problem). This functionality is really just exposed via the WebKit API, the downloaded file objects currently are not used anywhere in WebKit and are not exposed via script.

The main option is to hook this up to the WebKit API unit tests. But those are literally unit tests and aren&apos;t hooked up to the network or blob systems. What a test would look like for this would be to synthesize a resource request, synthesize a response with a file, and then somehow hook into the blob system (I don&apos;t know how this works or how hard it might be) to watch for the &quot;unref this file&quot; message and make sure it comes later. This test seems to rather complex and of unclear benefit to me. Thoughts or other ideas?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>399748</commentid>
    <comment_count>8</comment_count>
      <attachid>92629</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-05-06 13:02:09 -0700</bug_when>
    <thetext>Comment on attachment 92629
New patch

Having the test downstream is less good than upstream because we only find out about failures after merging in new versions of WebKit.  In some sense, though, the bug here is an integration issue, which is why it&apos;s hard to test except with the fully integration.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>399757</commentid>
    <comment_count>9</comment_count>
      <attachid>92629</attachid>
    <who name="Michael Nordman">michaeln</who>
    <bug_when>2011-05-06 13:11:18 -0700</bug_when>
    <thetext>Comment on attachment 92629
New patch

This is much nicer :)

&gt; Source/WebKit/chromium/src/WebURLResponse.cpp:-373
&gt; -    m_private-&gt;m_resourceResponse-&gt;setDownloadFilePath(downloadFilePath.utf8().data());

maybe ASSERT(!downloadFilePath.isEmpty())</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>399792</commentid>
    <comment_count>10</comment_count>
    <who name="Brett Wilson (Google)">brettw</who>
    <bug_when>2011-05-06 13:58:59 -0700</bug_when>
    <thetext>Checked in (with Michael&apos;s assert suggestion) as r85974</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>400136</commentid>
    <comment_count>11</comment_count>
    <who name="Abhishek Arya">inferno</who>
    <bug_when>2011-05-07 17:43:56 -0700</bug_when>
    <thetext>This seems to have broken browser tests on all platforms - http://build.chromium.org/p/chromium/builders/Linux%20Tests%20x64/builds/8949/steps/browser_tests/logs/stdio. Also tested using try bots - http://codereview.chromium.org/6953016/. One revision before it works fine. Rolling it for out for now in order to do a webkit roll.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>401283</commentid>
    <comment_count>12</comment_count>
    <who name="Brett Wilson (Google)">brettw</who>
    <bug_when>2011-05-10 10:13:26 -0700</bug_when>
    <thetext>Going to re-land, the problem in Chrome should be fixed by
http://src.chromium.org/viewvc/chrome?view=rev&amp;revision=84797</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>401297</commentid>
    <comment_count>13</comment_count>
    <who name="Brett Wilson (Google)">brettw</who>
    <bug_when>2011-05-10 10:26:37 -0700</bug_when>
    <thetext>Re-landed as r86164</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>401721</commentid>
    <comment_count>14</comment_count>
    <who name="Michael Nordman">michaeln</who>
    <bug_when>2011-05-10 19:54:36 -0700</bug_when>
    <thetext>(In reply to comment #13)
&gt; Re-landed as r86164

Drat i wish i would have noticed this before...

void WebURLResponse::setDownloadFilePath(const WebString&amp; downloadFilePath)
{
    m_private-&gt;m_resourceResponse-&gt;setDownloadedFile(
        downloadFilePath.isEmpty() ? PassRefPtr&lt;File&gt;(0)
                                   : File::create(downloadFilePath));
}

... after this rolled into view, i&apos;m seeing 2 more IPCs per request due to empty File() objects, one to &apos;register&apos; upon construction and another to unregister.

I think it&apos;d be better to have NULL in there for the usual case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>403815</commentid>
    <comment_count>15</comment_count>
    <who name="Brett Wilson (Google)">brettw</who>
    <bug_when>2011-05-13 13:43:54 -0700</bug_when>
    <thetext>Filed bug 60798 for Michael&apos;s suggestion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>423051</commentid>
    <comment_count>16</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-06-17 23:06:36 -0700</bug_when>
    <thetext>Looks like the patch has been re-landed.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>92491</attachid>
            <date>2011-05-05 16:10:48 -0700</date>
            <delta_ts>2011-05-06 11:06:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>file.diff</filename>
            <type>text/plain</type>
            <size>2143</size>
            <attacher name="Brett Wilson (Google)">brettw</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggMGZkODNhZC4uYzJmYzNkMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMS0wNS0wNSAgQnJldHQgV2ls
c29uICA8YnJldHR3QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBLZWVwIGEgcmVmZXJlbmNlIHRvIGRvd25sb2FkZWQgZmlsZXMg
YWxpdmUgYXMgbG9uZyBhcyB0aGUgYXNzb2NpYXRlZAorICAgICAgICBVUkwgbG9hZGVyIGlzIGFs
aXZlLiBUaGlzIHByZXZlbnRzIHRoZSBob3N0IHByb2dyYW0gZnJvbSBkZWxldGluZyB0aGUKKyAg
ICAgICAgZmlsZSB3aGVuIHRoZSBXZWJDb3JlIGxvYWRlciBpcyBkb25lIHdpdGggdGhlIHJlcXVl
c3QuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MDI4
MQorCisgICAgICAgICogc3JjL0Fzc29jaWF0ZWRVUkxMb2FkZXIuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpBc3NvY2lhdGVkVVJMTG9hZGVyOjpDbGllbnRBZGFwdGVyOjpkaWRSZWNlaXZlUmVzcG9u
c2UpOgorCiAyMDExLTA1LTA1ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKICAg
ICAgICAgUm9sbCBDaHJvbWl1bSBERVBTLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvQXNzb2NpYXRlZFVSTExvYWRlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9Bc3NvY2lhdGVkVVJMTG9hZGVyLmNwcAppbmRleCBhY2I3Njg3Li4wOTg5MWEzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9Bc3NvY2lhdGVkVVJMTG9hZGVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9Bc3NvY2lhdGVkVVJMTG9hZGVyLmNw
cApAQCAtMzMsNiArMzMsNyBAQAogCiAjaW5jbHVkZSAiRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVy
LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmgiCisjaW5jbHVk
ZSAiRmlsZS5oIgogI2luY2x1ZGUgIlN1YnJlc291cmNlTG9hZGVyLmgiCiAjaW5jbHVkZSAiV2Vi
QXBwbGljYXRpb25DYWNoZUhvc3QuaCIKICNpbmNsdWRlICJXZWJEYXRhU291cmNlLmgiCkBAIC03
OCw2ICs3OSw3IEBAIHByaXZhdGU6CiAgICAgV2ViVVJMTG9hZGVyQ2xpZW50KiBtX2NsaWVudDsK
ICAgICB1bnNpZ25lZCBsb25nIG1fZG93bmxvYWRMZW5ndGg7CiAgICAgYm9vbCBtX2Rvd25sb2Fk
VG9GaWxlOworICAgIFJlZlB0cjxGaWxlPiBtX2Rvd25sb2FkZWRGaWxlOwogfTsKIAogUGFzc093
blB0cjxBc3NvY2lhdGVkVVJMTG9hZGVyOjpDbGllbnRBZGFwdGVyPiBBc3NvY2lhdGVkVVJMTG9h
ZGVyOjpDbGllbnRBZGFwdGVyOjpjcmVhdGUoQXNzb2NpYXRlZFVSTExvYWRlciogbG9hZGVyLCBX
ZWJVUkxMb2FkZXJDbGllbnQqIGNsaWVudCwgYm9vbCBkb3dubG9hZFRvRmlsZSkKQEAgLTExNyw2
ICsxMTksMTEgQEAgdm9pZCBBc3NvY2lhdGVkVVJMTG9hZGVyOjpDbGllbnRBZGFwdGVyOjpkaWRS
ZWNlaXZlUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb24KIHsKICAgICBXcmFwcGVkUmVzb3Vy
Y2VSZXNwb25zZSB3cmFwcGVkUmVzcG9uc2UocmVzcG9uc2UpOwogICAgIG1fY2xpZW50LT5kaWRS
ZWNlaXZlUmVzcG9uc2UobV9sb2FkZXIsIHdyYXBwZWRSZXNwb25zZSk7CisKKyAgICAvLyBUYWtl
IGEgcmVmZXJlbmNlIHRvIHRoZSBkb3dubG9hZGVkIGZpbGUgc28gaXRzIGxpZmV0aW1lIGlzIHNj
b3BlZCB0byBvdXIKKyAgICAvLyBsaWZldGltZSByYXRoZXIgdGhhbiB0aGUgaW50ZXJuYWxzIG9m
IHRoZSBsb2FkZXIuCisgICAgaWYgKG1fZG93bmxvYWRUb0ZpbGUpCisgICAgICBtX2Rvd25sb2Fk
ZWRGaWxlID0gRmlsZTo6Y3JlYXRlKHJlc3BvbnNlLmRvd25sb2FkRmlsZVBhdGgoKSk7CiB9CiAK
IHZvaWQgQXNzb2NpYXRlZFVSTExvYWRlcjo6Q2xpZW50QWRhcHRlcjo6ZGlkUmVjZWl2ZURhdGEo
Y29uc3QgY2hhciogZGF0YSwgaW50IGRhdGFMZW5ndGgpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>92499</attachid>
            <date>2011-05-05 16:48:21 -0700</date>
            <delta_ts>2011-05-06 11:06:49 -0700</delta_ts>
            <desc>Indentation fixed</desc>
            <filename>file.diff</filename>
            <type>text/plain</type>
            <size>2145</size>
            <attacher name="Brett Wilson (Google)">brettw</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggMGZkODNhZC4uYzJmYzNkMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMS0wNS0wNSAgQnJldHQgV2ls
c29uICA8YnJldHR3QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBLZWVwIGEgcmVmZXJlbmNlIHRvIGRvd25sb2FkZWQgZmlsZXMg
YWxpdmUgYXMgbG9uZyBhcyB0aGUgYXNzb2NpYXRlZAorICAgICAgICBVUkwgbG9hZGVyIGlzIGFs
aXZlLiBUaGlzIHByZXZlbnRzIHRoZSBob3N0IHByb2dyYW0gZnJvbSBkZWxldGluZyB0aGUKKyAg
ICAgICAgZmlsZSB3aGVuIHRoZSBXZWJDb3JlIGxvYWRlciBpcyBkb25lIHdpdGggdGhlIHJlcXVl
c3QuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MDI4
MQorCisgICAgICAgICogc3JjL0Fzc29jaWF0ZWRVUkxMb2FkZXIuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpBc3NvY2lhdGVkVVJMTG9hZGVyOjpDbGllbnRBZGFwdGVyOjpkaWRSZWNlaXZlUmVzcG9u
c2UpOgorCiAyMDExLTA1LTA1ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKICAg
ICAgICAgUm9sbCBDaHJvbWl1bSBERVBTLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvQXNzb2NpYXRlZFVSTExvYWRlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9Bc3NvY2lhdGVkVVJMTG9hZGVyLmNwcAppbmRleCBhY2I3Njg3Li5jYjk5Zjg4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9Bc3NvY2lhdGVkVVJMTG9hZGVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9Bc3NvY2lhdGVkVVJMTG9hZGVyLmNw
cApAQCAtMzMsNiArMzMsNyBAQAogCiAjaW5jbHVkZSAiRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVy
LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnRUaHJlYWRhYmxlTG9hZGVyQ2xpZW50LmgiCisjaW5jbHVk
ZSAiRmlsZS5oIgogI2luY2x1ZGUgIlN1YnJlc291cmNlTG9hZGVyLmgiCiAjaW5jbHVkZSAiV2Vi
QXBwbGljYXRpb25DYWNoZUhvc3QuaCIKICNpbmNsdWRlICJXZWJEYXRhU291cmNlLmgiCkBAIC03
OCw2ICs3OSw3IEBAIHByaXZhdGU6CiAgICAgV2ViVVJMTG9hZGVyQ2xpZW50KiBtX2NsaWVudDsK
ICAgICB1bnNpZ25lZCBsb25nIG1fZG93bmxvYWRMZW5ndGg7CiAgICAgYm9vbCBtX2Rvd25sb2Fk
VG9GaWxlOworICAgIFJlZlB0cjxGaWxlPiBtX2Rvd25sb2FkZWRGaWxlOwogfTsKIAogUGFzc093
blB0cjxBc3NvY2lhdGVkVVJMTG9hZGVyOjpDbGllbnRBZGFwdGVyPiBBc3NvY2lhdGVkVVJMTG9h
ZGVyOjpDbGllbnRBZGFwdGVyOjpjcmVhdGUoQXNzb2NpYXRlZFVSTExvYWRlciogbG9hZGVyLCBX
ZWJVUkxMb2FkZXJDbGllbnQqIGNsaWVudCwgYm9vbCBkb3dubG9hZFRvRmlsZSkKQEAgLTExNyw2
ICsxMTksMTEgQEAgdm9pZCBBc3NvY2lhdGVkVVJMTG9hZGVyOjpDbGllbnRBZGFwdGVyOjpkaWRS
ZWNlaXZlUmVzcG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb24KIHsKICAgICBXcmFwcGVkUmVzb3Vy
Y2VSZXNwb25zZSB3cmFwcGVkUmVzcG9uc2UocmVzcG9uc2UpOwogICAgIG1fY2xpZW50LT5kaWRS
ZWNlaXZlUmVzcG9uc2UobV9sb2FkZXIsIHdyYXBwZWRSZXNwb25zZSk7CisKKyAgICAvLyBUYWtl
IGEgcmVmZXJlbmNlIHRvIHRoZSBkb3dubG9hZGVkIGZpbGUgc28gaXRzIGxpZmV0aW1lIGlzIHNj
b3BlZCB0byBvdXIKKyAgICAvLyBsaWZldGltZSByYXRoZXIgdGhhbiB0aGUgaW50ZXJuYWxzIG9m
IHRoZSBsb2FkZXIuCisgICAgaWYgKG1fZG93bmxvYWRUb0ZpbGUpCisgICAgICAgIG1fZG93bmxv
YWRlZEZpbGUgPSBGaWxlOjpjcmVhdGUocmVzcG9uc2UuZG93bmxvYWRGaWxlUGF0aCgpKTsKIH0K
IAogdm9pZCBBc3NvY2lhdGVkVVJMTG9hZGVyOjpDbGllbnRBZGFwdGVyOjpkaWRSZWNlaXZlRGF0
YShjb25zdCBjaGFyKiBkYXRhLCBpbnQgZGF0YUxlbmd0aCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>92609</attachid>
            <date>2011-05-06 11:06:49 -0700</date>
            <delta_ts>2011-05-06 12:57:48 -0700</delta_ts>
            <desc>Different direction (not ready for checkin)</desc>
            <filename>file2.diff</filename>
            <type>text/plain</type>
            <size>3506</size>
            <attacher name="Brett Wilson (Google)">brettw</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2hyb21pdW0vUmVz
b3VyY2VSZXNwb25zZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2Nocm9t
aXVtL1Jlc291cmNlUmVzcG9uc2UuY3BwCmluZGV4IDU4YzhkZDAuLmZkZjUzNzggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2hyb21pdW0vUmVzb3VyY2VSZXNw
b25zZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jaHJvbWl1bS9S
ZXNvdXJjZVJlc3BvbnNlLmNwcApAQCAtNDAsNyArNDAsNyBAQCBQYXNzT3duUHRyPENyb3NzVGhy
ZWFkUmVzb3VyY2VSZXNwb25zZURhdGE+IFJlc291cmNlUmVzcG9uc2U6OmRvUGxhdGZvcm1Db3B5
RGF0YQogICAgIGRhdGEtPm1fcmVzcG9uc2VUaW1lID0gbV9yZXNwb25zZVRpbWU7CiAgICAgZGF0
YS0+bV9yZW1vdGVJUEFkZHJlc3MgPSBtX3JlbW90ZUlQQWRkcmVzczsKICAgICBkYXRhLT5tX3Jl
bW90ZVBvcnQgPSBtX3JlbW90ZVBvcnQ7Ci0gICAgZGF0YS0+bV9kb3dubG9hZEZpbGVQYXRoID0g
bV9kb3dubG9hZEZpbGVQYXRoOworICAgIC8vZGF0YS0+bV9kb3dubG9hZEZpbGVQYXRoID0gbV9k
b3dubG9hZEZpbGVQYXRoOwogICAgIHJldHVybiBkYXRhOwogfQogCkBAIC01Niw3ICs1Niw3IEBA
IHZvaWQgUmVzb3VyY2VSZXNwb25zZTo6ZG9QbGF0Zm9ybUFkb3B0KFBhc3NPd25QdHI8Q3Jvc3NU
aHJlYWRSZXNvdXJjZVJlc3BvbnNlRGF0CiAgICAgbV9yZXNwb25zZVRpbWUgPSBkYXRhLT5tX3Jl
c3BvbnNlVGltZTsKICAgICBtX3JlbW90ZUlQQWRkcmVzcyA9IGRhdGEtPm1fcmVtb3RlSVBBZGRy
ZXNzOwogICAgIG1fcmVtb3RlUG9ydCA9IGRhdGEtPm1fcmVtb3RlUG9ydDsKLSAgICBtX2Rvd25s
b2FkRmlsZVBhdGggPSBkYXRhLT5tX2Rvd25sb2FkRmlsZVBhdGg7CisgICAgLy9tX2Rvd25sb2Fk
RmlsZVBhdGggPSBkYXRhLT5tX2Rvd25sb2FkRmlsZVBhdGg7CiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2hy
b21pdW0vUmVzb3VyY2VSZXNwb25zZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9jaHJvbWl1bS9SZXNvdXJjZVJlc3BvbnNlLmgKaW5kZXggNzc3ZTFkZC4uYTJhOGM1ZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jaHJvbWl1bS9SZXNvdXJj
ZVJlc3BvbnNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jaHJvbWl1
bS9SZXNvdXJjZVJlc3BvbnNlLmgKQEAgLTI3LDYgKzI3LDcgQEAKICNpZm5kZWYgUmVzb3VyY2VS
ZXNwb25zZV9oCiAjZGVmaW5lIFJlc291cmNlUmVzcG9uc2VfaAogCisjaW5jbHVkZSAiRmlsZS5o
IgogI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXNwb25z
ZUJhc2UuaCIKICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CkBAIC05OSw4ICsxMDAsOCBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIHVuc2lnbmVkIHNob3J0IHJlbW90ZVBvcnQo
KSBjb25zdCB7IHJldHVybiBtX3JlbW90ZVBvcnQ7IH0KICAgICAgICAgdm9pZCBzZXRSZW1vdGVQ
b3J0KHVuc2lnbmVkIHNob3J0IHZhbHVlKSB7IG1fcmVtb3RlUG9ydCA9IHZhbHVlOyB9CiAKLSAg
ICAgICAgY29uc3QgU3RyaW5nJiBkb3dubG9hZEZpbGVQYXRoKCkgY29uc3QgeyByZXR1cm4gbV9k
b3dubG9hZEZpbGVQYXRoOyB9Ci0gICAgICAgIHZvaWQgc2V0RG93bmxvYWRGaWxlUGF0aChjb25z
dCBTdHJpbmcmIGRvd25sb2FkRmlsZVBhdGgpIHsgbV9kb3dubG9hZEZpbGVQYXRoID0gZG93bmxv
YWRGaWxlUGF0aDsgfQorICAgICAgICBjb25zdCBGaWxlKiBkb3dubG9hZGVkRmlsZSgpIGNvbnN0
IHsgcmV0dXJuIG1fZG93bmxvYWRlZEZpbGUuZ2V0KCk7IH0KKyAgICAgICAgdm9pZCBzZXREb3du
bG9hZGVkRmlsZShQYXNzUmVmUHRyPEZpbGU+IGRvd25sb2FkZWRGaWxlKSB7IG1fZG93bmxvYWRl
ZEZpbGUgPSBkb3dubG9hZGVkRmlsZTsgfQogCiAgICAgcHJpdmF0ZToKICAgICAgICAgZnJpZW5k
IGNsYXNzIFJlc291cmNlUmVzcG9uc2VCYXNlOwpAQCAtMTUyLDggKzE1Myw4IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKICAgICAgICAgLy8gUmVtb3RlIHBvcnQgbnVtYmVyIG9mIHRoZSBzb2NrZXQg
d2hpY2ggZmV0Y2hlZCB0aGlzIHJlc291cmNlLgogICAgICAgICB1bnNpZ25lZCBzaG9ydCBtX3Jl
bW90ZVBvcnQ7CiAKLSAgICAgICAgLy8gVGhlIHBhdGggdG8gdGhlIGRvd25sb2FkZWQgZmlsZS4K
LSAgICAgICAgU3RyaW5nIG1fZG93bmxvYWRGaWxlUGF0aDsKKyAgICAgICAgLy8gVGhlIGRvd25s
b2FkZWQgZmlsZSBpZiB0aGUgbG9hZCBzdHJlYW1lZCB0byBhIGZpbGUuCisgICAgICAgIFJlZlB0
cjxGaWxlPiBtX2Rvd25sb2FkZWRGaWxlOwogICAgIH07CiAKICAgICBzdHJ1Y3QgQ3Jvc3NUaHJl
YWRSZXNvdXJjZVJlc3BvbnNlRGF0YSA6IHB1YmxpYyBDcm9zc1RocmVhZFJlc291cmNlUmVzcG9u
c2VEYXRhQmFzZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJV
UkxSZXNwb25zZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJVUkxSZXNwb25z
ZS5jcHAKaW5kZXggMjg1MDQ0MS4uNzA3Y2Y5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9zcmMvV2ViVVJMUmVzcG9uc2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYlVSTFJlc3BvbnNlLmNwcApAQCAtMzY1LDEyICszNjUsMTUgQEAgdm9pZCBXZWJV
UkxSZXNwb25zZTo6c2V0SXNNdWx0aXBhcnRQYXlsb2FkKGJvb2wgdmFsdWUpCiAKIFdlYlN0cmlu
ZyBXZWJVUkxSZXNwb25zZTo6ZG93bmxvYWRGaWxlUGF0aCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJu
IG1fcHJpdmF0ZS0+bV9yZXNvdXJjZVJlc3BvbnNlLT5kb3dubG9hZEZpbGVQYXRoKCk7CisgICAg
Y29uc3QgRmlsZSogZG93bmxvYWRlZEZpbGUgPSBtX3ByaXZhdGUtPm1fcmVzb3VyY2VSZXNwb25z
ZS0+ZG93bmxvYWRlZEZpbGUoKTsKKyAgICBpZiAoZG93bmxvYWRlZEZpbGUpCisgICAgICAgIHJl
dHVybiBkb3dubG9hZGVkRmlsZS0+cGF0aCgpOworICAgIHJldHVybiBXZWJTdHJpbmcoKTsKIH0K
IAogdm9pZCBXZWJVUkxSZXNwb25zZTo6c2V0RG93bmxvYWRGaWxlUGF0aChjb25zdCBXZWJTdHJp
bmcmIGRvd25sb2FkRmlsZVBhdGgpCiB7Ci0gICAgbV9wcml2YXRlLT5tX3Jlc291cmNlUmVzcG9u
c2UtPnNldERvd25sb2FkRmlsZVBhdGgoZG93bmxvYWRGaWxlUGF0aC51dGY4KCkuZGF0YSgpKTsK
KyAgICBtX3ByaXZhdGUtPm1fcmVzb3VyY2VSZXNwb25zZS0+c2V0RG93bmxvYWRlZEZpbGUoRmls
ZTo6Y3JlYXRlKGRvd25sb2FkRmlsZVBhdGgpKTsKIH0KIAogV2ViU3RyaW5nIFdlYlVSTFJlc3Bv
bnNlOjpyZW1vdGVJUEFkZHJlc3MoKSBjb25zdAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>92629</attachid>
            <date>2011-05-06 12:57:48 -0700</date>
            <delta_ts>2011-05-06 13:11:18 -0700</delta_ts>
            <desc>New patch</desc>
            <filename>file2.diff</filename>
            <type>text/plain</type>
            <size>5620</size>
            <attacher name="Brett Wilson (Google)">brettw</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBhOTM1MmU3Li44NDY3MWE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEg
QEAKKzIwMTEtMDUtMDYgIEJyZXR0IFdpbHNvbiAgPGJyZXR0d0BjaHJvbWl1bS5vcmc+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KKworICAgICAgICBVc2UgYSBGaWxlIG9iamVj
dCB0byBzdG9yZSB0aGUgZG93bmxvYWRlZCBmaWxlIHJlZmVyZW5jZSByYXRoZXIgdGhhbgorICAg
ICAgICBqdXN0IHRoZSBwYXRoLiBUaGlzIGtlZXBzIHRoZSBmaWxlIGFuZCBwZXJtaXNzaW9ucyBp
biBzY29wZSAodXNpbmcgdGhlCisgICAgICAgIGFscmVhZHktZXhpc3RpbmcgYmxvYiBzeXN0ZW0p
IHNvIHRoZSBicm93c2VyIHdvbid0IGRlbGV0ZSB0aGUgZmlsZQorICAgICAgICB3aGVuIHRoZSBs
b2FkIGlzIGNvbXBsZXRlLiBJbnN0ZWFkLCB0aGUgZmlsZSB3aWxsIGJlIGNsZWFuZWQgdXAgd2hl
bgorICAgICAgICB0aGUgcmVxdWVzdCBvYmplY3RzIGFyZSBkZWxldGVkLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjAyODEKKworICAgICAgICAqIHBs
YXRmb3JtL25ldHdvcmsvY2hyb21pdW0vUmVzb3VyY2VSZXNwb25zZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlOjpkb1BsYXRmb3JtQ29weURhdGEpOgorICAgICAgICAo
V2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZTo6ZG9QbGF0Zm9ybUFkb3B0KToKKyAgICAgICAgKiBw
bGF0Zm9ybS9uZXR3b3JrL2Nocm9taXVtL1Jlc291cmNlUmVzcG9uc2UuaDoKKyAgICAgICAgKFdl
YkNvcmU6OlJlc291cmNlUmVzcG9uc2U6OmRvd25sb2FkZWRGaWxlKToKKyAgICAgICAgKFdlYkNv
cmU6OlJlc291cmNlUmVzcG9uc2U6OnNldERvd25sb2FkZWRGaWxlKToKKwogMjAxMS0wNS0wNSAg
SnVzdGluIE5vdm9zYWQgIDxqdW5vdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQg
YnkgS2VubmV0aCBSdXNzZWxsLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bmV0d29yay9jaHJvbWl1bS9SZXNvdXJjZVJlc3BvbnNlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvY2hyb21pdW0vUmVzb3VyY2VSZXNwb25zZS5jcHAKaW5kZXggNThjOGRk
MC4uMTg5YmMxZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9j
aHJvbWl1bS9SZXNvdXJjZVJlc3BvbnNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL2Nocm9taXVtL1Jlc291cmNlUmVzcG9uc2UuY3BwCkBAIC00MCw3ICs0MCw3IEBA
IFBhc3NPd25QdHI8Q3Jvc3NUaHJlYWRSZXNvdXJjZVJlc3BvbnNlRGF0YT4gUmVzb3VyY2VSZXNw
b25zZTo6ZG9QbGF0Zm9ybUNvcHlEYXRhCiAgICAgZGF0YS0+bV9yZXNwb25zZVRpbWUgPSBtX3Jl
c3BvbnNlVGltZTsKICAgICBkYXRhLT5tX3JlbW90ZUlQQWRkcmVzcyA9IG1fcmVtb3RlSVBBZGRy
ZXNzOwogICAgIGRhdGEtPm1fcmVtb3RlUG9ydCA9IG1fcmVtb3RlUG9ydDsKLSAgICBkYXRhLT5t
X2Rvd25sb2FkRmlsZVBhdGggPSBtX2Rvd25sb2FkRmlsZVBhdGg7CisgICAgLy8gQnVnIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MDM5NyB0aGlzIGRvZXNuJ3Qgc3Vw
cG9ydCBtX2Rvd25sb2FkZWRGaWxlLgogICAgIHJldHVybiBkYXRhOwogfQogCkBAIC01Niw3ICs1
Niw3IEBAIHZvaWQgUmVzb3VyY2VSZXNwb25zZTo6ZG9QbGF0Zm9ybUFkb3B0KFBhc3NPd25QdHI8
Q3Jvc3NUaHJlYWRSZXNvdXJjZVJlc3BvbnNlRGF0CiAgICAgbV9yZXNwb25zZVRpbWUgPSBkYXRh
LT5tX3Jlc3BvbnNlVGltZTsKICAgICBtX3JlbW90ZUlQQWRkcmVzcyA9IGRhdGEtPm1fcmVtb3Rl
SVBBZGRyZXNzOwogICAgIG1fcmVtb3RlUG9ydCA9IGRhdGEtPm1fcmVtb3RlUG9ydDsKLSAgICBt
X2Rvd25sb2FkRmlsZVBhdGggPSBkYXRhLT5tX2Rvd25sb2FkRmlsZVBhdGg7CisgICAgLy8gQnVn
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MDM5NyB0aGlzIGRvZXNu
J3Qgc3VwcG9ydCBtX2Rvd25sb2FkZWRGaWxlLgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2Nocm9taXVtL1Jl
c291cmNlUmVzcG9uc2UuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2hyb21p
dW0vUmVzb3VyY2VSZXNwb25zZS5oCmluZGV4IDc3N2UxZGQuLmEyYThjNWQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2hyb21pdW0vUmVzb3VyY2VSZXNwb25z
ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY2hyb21pdW0vUmVzb3Vy
Y2VSZXNwb25zZS5oCkBAIC0yNyw2ICsyNyw3IEBACiAjaWZuZGVmIFJlc291cmNlUmVzcG9uc2Vf
aAogI2RlZmluZSBSZXNvdXJjZVJlc3BvbnNlX2gKIAorI2luY2x1ZGUgIkZpbGUuaCIKICNpbmNs
dWRlICJOb3RJbXBsZW1lbnRlZC5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVzcG9uc2VCYXNlLmgi
CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgpAQCAtOTksOCArMTAwLDggQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgICAgICB1bnNpZ25lZCBzaG9ydCByZW1vdGVQb3J0KCkgY29uc3Qg
eyByZXR1cm4gbV9yZW1vdGVQb3J0OyB9CiAgICAgICAgIHZvaWQgc2V0UmVtb3RlUG9ydCh1bnNp
Z25lZCBzaG9ydCB2YWx1ZSkgeyBtX3JlbW90ZVBvcnQgPSB2YWx1ZTsgfQogCi0gICAgICAgIGNv
bnN0IFN0cmluZyYgZG93bmxvYWRGaWxlUGF0aCgpIGNvbnN0IHsgcmV0dXJuIG1fZG93bmxvYWRG
aWxlUGF0aDsgfQotICAgICAgICB2b2lkIHNldERvd25sb2FkRmlsZVBhdGgoY29uc3QgU3RyaW5n
JiBkb3dubG9hZEZpbGVQYXRoKSB7IG1fZG93bmxvYWRGaWxlUGF0aCA9IGRvd25sb2FkRmlsZVBh
dGg7IH0KKyAgICAgICAgY29uc3QgRmlsZSogZG93bmxvYWRlZEZpbGUoKSBjb25zdCB7IHJldHVy
biBtX2Rvd25sb2FkZWRGaWxlLmdldCgpOyB9CisgICAgICAgIHZvaWQgc2V0RG93bmxvYWRlZEZp
bGUoUGFzc1JlZlB0cjxGaWxlPiBkb3dubG9hZGVkRmlsZSkgeyBtX2Rvd25sb2FkZWRGaWxlID0g
ZG93bmxvYWRlZEZpbGU7IH0KIAogICAgIHByaXZhdGU6CiAgICAgICAgIGZyaWVuZCBjbGFzcyBS
ZXNvdXJjZVJlc3BvbnNlQmFzZTsKQEAgLTE1Miw4ICsxNTMsOCBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAgICAgICAgIC8vIFJlbW90ZSBwb3J0IG51bWJlciBvZiB0aGUgc29ja2V0IHdoaWNoIGZl
dGNoZWQgdGhpcyByZXNvdXJjZS4KICAgICAgICAgdW5zaWduZWQgc2hvcnQgbV9yZW1vdGVQb3J0
OwogCi0gICAgICAgIC8vIFRoZSBwYXRoIHRvIHRoZSBkb3dubG9hZGVkIGZpbGUuCi0gICAgICAg
IFN0cmluZyBtX2Rvd25sb2FkRmlsZVBhdGg7CisgICAgICAgIC8vIFRoZSBkb3dubG9hZGVkIGZp
bGUgaWYgdGhlIGxvYWQgc3RyZWFtZWQgdG8gYSBmaWxlLgorICAgICAgICBSZWZQdHI8RmlsZT4g
bV9kb3dubG9hZGVkRmlsZTsKICAgICB9OwogCiAgICAgc3RydWN0IENyb3NzVGhyZWFkUmVzb3Vy
Y2VSZXNwb25zZURhdGEgOiBwdWJsaWMgQ3Jvc3NUaHJlYWRSZXNvdXJjZVJlc3BvbnNlRGF0YUJh
c2UgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCAwZmQ4M2FkLi5hNzk4ZWM0IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDExLTA1LTA2ICBCcmV0
dCBXaWxzb24gIDxicmV0dHdAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IEFk
YW0gQmFydGguCisKKyAgICAgICAgVXNlIGEgRmlsZSBvYmplY3QgdG8gc3RvcmUgdGhlIGRvd25s
b2FkZWQgZmlsZSByZWZlcmVuY2UgcmF0aGVyIHRoYW4KKyAgICAgICAganVzdCB0aGUgcGF0aC4g
VGhpcyBrZWVwcyB0aGUgZmlsZSBhbmQgcGVybWlzc2lvbnMgaW4gc2NvcGUgKHVzaW5nIHRoZQor
ICAgICAgICBhbHJlYWR5LWV4aXN0aW5nIGJsb2Igc3lzdGVtKSBzbyB0aGUgYnJvd3NlciB3b24n
dCBkZWxldGUgdGhlIGZpbGUKKyAgICAgICAgd2hlbiB0aGUgbG9hZCBpcyBjb21wbGV0ZS4gSW5z
dGVhZCwgdGhlIGZpbGUgd2lsbCBiZSBjbGVhbmVkIHVwIHdoZW4KKyAgICAgICAgdGhlIHJlcXVl
c3Qgb2JqZWN0cyBhcmUgZGVsZXRlZC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTYwMjgxCisKKyAgICAgICAgKiBzcmMvV2ViVVJMUmVzcG9uc2UuY3Bw
OgorICAgICAgICAoV2ViS2l0OjpXZWJVUkxSZXNwb25zZTo6ZG93bmxvYWRGaWxlUGF0aCk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlVSTFJlc3BvbnNlOjpzZXREb3dubG9hZEZpbGVQYXRoKToKKwog
MjAxMS0wNS0wNSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIFJv
bGwgQ2hyb21pdW0gREVQUy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYlVSTFJlc3BvbnNlLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlVSTFJl
c3BvbnNlLmNwcAppbmRleCAyODUwNDQxLi43MDdjZjkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJVUkxSZXNwb25zZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9zcmMvV2ViVVJMUmVzcG9uc2UuY3BwCkBAIC0zNjUsMTIgKzM2NSwxNSBAQCB2b2lk
IFdlYlVSTFJlc3BvbnNlOjpzZXRJc011bHRpcGFydFBheWxvYWQoYm9vbCB2YWx1ZSkKIAogV2Vi
U3RyaW5nIFdlYlVSTFJlc3BvbnNlOjpkb3dubG9hZEZpbGVQYXRoKCkgY29uc3QKIHsKLSAgICBy
ZXR1cm4gbV9wcml2YXRlLT5tX3Jlc291cmNlUmVzcG9uc2UtPmRvd25sb2FkRmlsZVBhdGgoKTsK
KyAgICBjb25zdCBGaWxlKiBkb3dubG9hZGVkRmlsZSA9IG1fcHJpdmF0ZS0+bV9yZXNvdXJjZVJl
c3BvbnNlLT5kb3dubG9hZGVkRmlsZSgpOworICAgIGlmIChkb3dubG9hZGVkRmlsZSkKKyAgICAg
ICAgcmV0dXJuIGRvd25sb2FkZWRGaWxlLT5wYXRoKCk7CisgICAgcmV0dXJuIFdlYlN0cmluZygp
OwogfQogCiB2b2lkIFdlYlVSTFJlc3BvbnNlOjpzZXREb3dubG9hZEZpbGVQYXRoKGNvbnN0IFdl
YlN0cmluZyYgZG93bmxvYWRGaWxlUGF0aCkKIHsKLSAgICBtX3ByaXZhdGUtPm1fcmVzb3VyY2VS
ZXNwb25zZS0+c2V0RG93bmxvYWRGaWxlUGF0aChkb3dubG9hZEZpbGVQYXRoLnV0ZjgoKS5kYXRh
KCkpOworICAgIG1fcHJpdmF0ZS0+bV9yZXNvdXJjZVJlc3BvbnNlLT5zZXREb3dubG9hZGVkRmls
ZShGaWxlOjpjcmVhdGUoZG93bmxvYWRGaWxlUGF0aCkpOwogfQogCiBXZWJTdHJpbmcgV2ViVVJM
UmVzcG9uc2U6OnJlbW90ZUlQQWRkcmVzcygpIGNvbnN0Cg==
</data>
<flag name="review"
          id="85625"
          type_id="1"
          status="+"
          setter="abarth"
    />
          </attachment>
      

    </bug>

</bugzilla>