<?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>91920</bug_id>
          
          <creation_ts>2012-07-21 01:59:23 -0700</creation_ts>
          <short_desc>[WIN] Implement WebMutableURLRequest::setHTTPBody()</short_desc>
          <delta_ts>2013-09-23 15:34:40 -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>PC</rep_platform>
          <op_sys>Windows XP</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="Patrick R. Gansterer">paroga</reporter>
          <assigned_to name="Patrick R. Gansterer">paroga</assigned_to>
          <cc>andersca</cc>
    
    <cc>aroben</cc>
    
    <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>675209</commentid>
    <comment_count>0</comment_count>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2012-07-21 01:59:23 -0700</bug_when>
    <thetext>[WIN] Implement WebMutableURLRequest::setHTTPBody()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>675210</commentid>
    <comment_count>1</comment_count>
      <attachid>153661</attachid>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2012-07-21 02:01:45 -0700</bug_when>
    <thetext>Created attachment 153661
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>675655</commentid>
    <comment_count>2</comment_count>
      <attachid>153661</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2012-07-23 05:54:23 -0700</bug_when>
    <thetext>Comment on attachment 153661
Patch

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

&gt; Source/WebKit/win/WebMutableURLRequest.cpp:298
&gt; +    Vector&lt;char, 1024&gt; buffer(statstg.cbSize.QuadPart);

statstg.cbSize.QuadPart is a 64-bit unsigned integer. The Vector constructor takes a size_t, which is a 32-bit unsigned integer on 32-bit systems. So this will potentially overflow. We should probably return a failure result if overflow will occur.

&gt; Source/WebKit/win/WebMutableURLRequest.cpp:303
&gt; +    if (FAILED(data-&gt;Read(buffer.data(), buffer.size(), &amp;bytesRead)))
&gt; +        return E_FAIL;
&gt; +
&gt; +    m_request.setHTTPBody(FormData::create(buffer.data(), bytesRead));

It&apos;s too bad we can&apos;t read the data into the FormData directly. The extra copy is unfortunate.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>675880</commentid>
    <comment_count>3</comment_count>
      <attachid>153830</attachid>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2012-07-23 12:06:39 -0700</bug_when>
    <thetext>Created attachment 153830
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>675881</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-07-23 12:09:14 -0700</bug_when>
    <thetext>Attachment 153830 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/platform/network/FormData.cpp:156:  Declaration has space between type name and * in char *target  [whitespace/declaration] [3]
Source/WebKit/win/WebMutableURLRequest.cpp:301:  Declaration has space between type name and * in char *formData  [whitespace/declaration] [3]
Total errors found: 2 in 4 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>675884</commentid>
    <comment_count>5</comment_count>
      <attachid>153832</attachid>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2012-07-23 12:10:28 -0700</bug_when>
    <thetext>Created attachment 153832
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>766573</commentid>
    <comment_count>6</comment_count>
      <attachid>153832</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2012-11-14 00:51:20 -0800</bug_when>
    <thetext>Comment on attachment 153832
Patch

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

Looks good, but I think it could be clearer with some slight changes!

&gt; Source/WebCore/platform/network/FormData.cpp:161
&gt; +void FormData::appendUninitializedData(size_t size, char*&amp; data)

I was initially confused about what this was supposed to do. I think it would be clearer if this method was called something like &quot;expandDataStore&quot;.
Also, couldn&apos;t it return the pointer to the start of the new allocation? This would allow us to write something like:

void* target = expandDataStore(size);
memcpy(target, data, size);

&gt; Source/WebKit/win/WebMutableURLRequest.cpp:303
&gt; +    httpBody-&gt;appendUninitializedData(stat.cbSize.LowPart, formData);

... Then this would be:

void* formData = httpBody-&gt;expandDataStore(stat.cbSize.LowPart);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>932165</commentid>
    <comment_count>7</comment_count>
      <attachid>212355</attachid>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2013-09-23 09:34:00 -0700</bug_when>
    <thetext>Created attachment 212355
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>932168</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-09-23 09:36:41 -0700</bug_when>
    <thetext>Attachment 212355 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCore/platform/network/FormData.cpp&apos;, u&apos;Source/WebCore/platform/network/FormData.h&apos;, u&apos;Source/WebKit/win/ChangeLog&apos;, u&apos;Source/WebKit/win/WebMutableURLRequest.cpp&apos;]&quot; exit_code: 1
Source/WebCore/platform/network/FormData.h:133:  The parameter name &quot;size&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 1 in 5 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>932169</commentid>
    <comment_count>9</comment_count>
      <attachid>212357</attachid>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2013-09-23 09:38:01 -0700</bug_when>
    <thetext>Created attachment 212357
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>932313</commentid>
    <comment_count>10</comment_count>
      <attachid>212357</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2013-09-23 15:10:45 -0700</bug_when>
    <thetext>Comment on attachment 212357
Patch

Very nice!  r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>932321</commentid>
    <comment_count>11</comment_count>
      <attachid>212357</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-09-23 15:34:38 -0700</bug_when>
    <thetext>Comment on attachment 212357
Patch

Clearing flags on attachment: 212357

Committed r156303: &lt;http://trac.webkit.org/changeset/156303&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>932322</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-09-23 15:34:40 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>153661</attachid>
            <date>2012-07-21 02:01:45 -0700</date>
            <delta_ts>2012-07-23 12:06:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-91920.patch</filename>
            <type>text/plain</type>
            <size>1914</size>
            <attacher name="Patrick R. Gansterer">paroga</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
d2luL0NoYW5nZUxvZwppbmRleCBlODM2YTEyLi5lMzJmNjA3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L3dpbi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMTItMDctMjEgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFyb2dhQHdl
YmtpdC5vcmc+CisKKyAgICAgICAgW1dJTl0gSW1wbGVtZW50IFdlYk11dGFibGVVUkxSZXF1ZXN0
OjpzZXRIVFRQQm9keSgpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD05MTkyMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogV2ViTXV0YWJsZVVSTFJlcXVlc3QuY3BwOgorICAgICAgICAoV2ViTXV0YWJsZVVS
TFJlcXVlc3Q6OnNldEhUVFBCb2R5KToKKyAgICAgICAgKFdlYk11dGFibGVVUkxSZXF1ZXN0Ojpz
ZXRIVFRQQm9keVN0cmVhbSk6CisKIDIwMTItMDctMTcgIFZpdmVrIEdhbGF0YWdlICA8dml2ZWtn
YWxhdGFnZUBnbWFpbC5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogcmVmYWN0b3IgSW5z
cGVjdG9yQ29udHJvbGxlcjo6Y29ubmVjdEZyb250ZW5kKCkgdG8gYWNjZXB0IEluc3BlY3RvckZy
b250ZW5kQ2hhbm5lbC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYk11dGFibGVV
UkxSZXF1ZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYk11dGFibGVVUkxSZXF1ZXN0LmNw
cAppbmRleCBhMjJmNzMyLi40OWE0YjVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9X
ZWJNdXRhYmxlVVJMUmVxdWVzdC5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViTXV0YWJs
ZVVSTFJlcXVlc3QuY3BwCkBAIC0yODYsMTcgKzI4NiwyOCBAQCBIUkVTVUxUIFNURE1FVEhPRENB
TExUWVBFIFdlYk11dGFibGVVUkxSZXF1ZXN0OjpzZXRDYWNoZVBvbGljeSgKIH0KIAogSFJFU1VM
VCBTVERNRVRIT0RDQUxMVFlQRSBXZWJNdXRhYmxlVVJMUmVxdWVzdDo6c2V0SFRUUEJvZHkoIAot
ICAgIC8qIFtpbl0gKi8gSVN0cmVhbSogLypkYXRhKi8pCisgICAgLyogW2luXSAqLyBJU3RyZWFt
KiBkYXRhKQogewotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiBFX05PVElN
UEw7CisgICAgaWYgKCFkYXRhKQorICAgICAgICByZXR1cm4gRV9QT0lOVEVSOworCisgICAgU1RB
VFNURyBzdGF0c3RnOworICAgIGlmIChGQUlMRUQoZGF0YS0+U3RhdCgmc3RhdHN0ZywgU1RBVEZM
QUdfTk9OQU1FKSkpCisgICAgICAgIHJldHVybiBFX0ZBSUw7CisKKyAgICBWZWN0b3I8Y2hhciwg
MTAyND4gYnVmZmVyKHN0YXRzdGcuY2JTaXplLlF1YWRQYXJ0KTsKKyAgICBVTE9ORyBieXRlc1Jl
YWQgPSAwOworICAgIGlmIChGQUlMRUQoZGF0YS0+UmVhZChidWZmZXIuZGF0YSgpLCBidWZmZXIu
c2l6ZSgpLCAmYnl0ZXNSZWFkKSkpCisgICAgICAgIHJldHVybiBFX0ZBSUw7CisKKyAgICBtX3Jl
cXVlc3Quc2V0SFRUUEJvZHkoRm9ybURhdGE6OmNyZWF0ZShidWZmZXIuZGF0YSgpLCBieXRlc1Jl
YWQpKTsKKyAgICByZXR1cm4gU19PSzsKIH0KIAogSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBX
ZWJNdXRhYmxlVVJMUmVxdWVzdDo6c2V0SFRUUEJvZHlTdHJlYW0oIAotICAgIC8qIFtpbl0gKi8g
SVN0cmVhbSogLypkYXRhKi8pCisgICAgLyogW2luXSAqLyBJU3RyZWFtKiBkYXRhKQogewotICAg
IEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAgIHJldHVybiBFX05PVElNUEw7CisgICAgcmV0dXJu
IHNldEhUVFBCb2R5KGRhdGEpOwogfQogCiBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFdlYk11
dGFibGVVUkxSZXF1ZXN0OjpzZXRIVFRQTWV0aG9kKCAK
</data>
<flag name="review"
          id="162672"
          type_id="1"
          status="-"
          setter="aroben"
    />
    <flag name="commit-queue"
          id="162673"
          type_id="3"
          status="-"
          setter="aroben"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>153830</attachid>
            <date>2012-07-23 12:06:39 -0700</date>
            <delta_ts>2012-07-23 12:10:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-91920b.patch</filename>
            <type>text/plain</type>
            <size>3826</size>
            <attacher name="Patrick R. Gansterer">paroga</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3MTU4NThkLi41YjY2ZmUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkg
QEAKKzIwMTItMDctMjMgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFyb2dhQHdlYmtpdC5vcmc+CisK
KyAgICAgICAgW1dJTl0gSW1wbGVtZW50IFdlYk11dGFibGVVUkxSZXF1ZXN0OjpzZXRIVFRQQm9k
eSgpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MTky
MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVk
IENTdHJpbmc6Om5ld1VuaW5pdGlhbGl6ZWQoKSBsaWtlIG1ldGhvZCB0byBGb3JtRGF0YS4gSXQK
KyAgICAgICAgYWxsb3dzIHVzIHRvIGFsbG9jYXRlIHNwYWNlIGFuZCByZWFkIGRpcmVjdGx5IGlu
dG8gdGhlIGJ1ZmZlci4KKworICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6Rm9ybURhdGE6OmFwcGVuZERhdGEpOgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChXZWJDb3JlOjpGb3JtRGF0YTo6YXBwZW5kVW5pbml0aWFsaXplZERh
dGEpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEuaDoKKwogMjAxMi0wNy0y
MSAgUGF0cmljayBHYW5zdGVyZXIgIDxwYXJvZ2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBDbGVh
bnVwIFRleHRFbmNvZGluZyBVU0UoWFhYX1VOSUNPREUpIG1hY3JvcwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmNwcAppbmRleCA1ZjViNWRmLi4wNDIyZjk0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmNwcApAQCAtMTUz
LDEyICsxNTMsMTkgQEAgUGFzc1JlZlB0cjxGb3JtRGF0YT4gRm9ybURhdGE6OmRlZXBDb3B5KCkg
Y29uc3QKIAogdm9pZCBGb3JtRGF0YTo6YXBwZW5kRGF0YShjb25zdCB2b2lkKiBkYXRhLCBzaXpl
X3Qgc2l6ZSkKIHsKKyAgICBjaGFyICp0YXJnZXQ7CisgICAgYXBwZW5kVW5pbml0aWFsaXplZERh
dGEoc2l6ZSwgdGFyZ2V0KTsKKyAgICBtZW1jcHkodGFyZ2V0LCBkYXRhLCBzaXplKTsKK30KKwor
dm9pZCBGb3JtRGF0YTo6YXBwZW5kVW5pbml0aWFsaXplZERhdGEoc2l6ZV90IHNpemUsIGNoYXIq
JiBkYXRhKQorewogICAgIGlmIChtX2VsZW1lbnRzLmlzRW1wdHkoKSB8fCBtX2VsZW1lbnRzLmxh
c3QoKS5tX3R5cGUgIT0gRm9ybURhdGFFbGVtZW50OjpkYXRhKQogICAgICAgICBtX2VsZW1lbnRz
LmFwcGVuZChGb3JtRGF0YUVsZW1lbnQoKSk7CiAgICAgRm9ybURhdGFFbGVtZW50JiBlID0gbV9l
bGVtZW50cy5sYXN0KCk7CiAgICAgc2l6ZV90IG9sZFNpemUgPSBlLm1fZGF0YS5zaXplKCk7CiAg
ICAgZS5tX2RhdGEuZ3JvdyhvbGRTaXplICsgc2l6ZSk7Ci0gICAgbWVtY3B5KGUubV9kYXRhLmRh
dGEoKSArIG9sZFNpemUsIGRhdGEsIHNpemUpOworICAgIGRhdGEgPSBlLm1fZGF0YS5kYXRhKCkg
KyBvbGRTaXplOwogfQogCiB2b2lkIEZvcm1EYXRhOjphcHBlbmRGaWxlKGNvbnN0IFN0cmluZyYg
ZmlsZW5hbWUsIGJvb2wgc2hvdWxkR2VuZXJhdGVGaWxlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9Gb3JtRGF0YS5oCmluZGV4IDE0OTgxMzYuLmU4N2EwYTUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmgKQEAgLTExMSw2ICsxMTEsNyBAQCBw
dWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8Rm9ybURhdGE+IGRlY29kZUZvckJhY2tGb3J3
YXJkKERlY29kZXImKTsKIAogICAgIHZvaWQgYXBwZW5kRGF0YShjb25zdCB2b2lkKiBkYXRhLCBz
aXplX3QpOworICAgIHZvaWQgYXBwZW5kVW5pbml0aWFsaXplZERhdGEoc2l6ZV90LCBjaGFyKiYg
ZGF0YSk7CiAgICAgdm9pZCBhcHBlbmRGaWxlKGNvbnN0IFN0cmluZyYgZmlsZVBhdGgsIGJvb2wg
c2hvdWxkR2VuZXJhdGVGaWxlID0gZmFsc2UpOwogI2lmIEVOQUJMRShCTE9CKQogICAgIHZvaWQg
YXBwZW5kRmlsZVJhbmdlKGNvbnN0IFN0cmluZyYgZmlsZW5hbWUsIGxvbmcgbG9uZyBzdGFydCwg
bG9uZyBsb25nIGxlbmd0aCwgZG91YmxlIGV4cGVjdGVkTW9kaWZpY2F0aW9uVGltZSwgYm9vbCBz
aG91bGRHZW5lcmF0ZUZpbGUgPSBmYWxzZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dp
bi9XZWJNdXRhYmxlVVJMUmVxdWVzdC5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJNdXRhYmxl
VVJMUmVxdWVzdC5jcHAKaW5kZXggYTIyZjczMi4uOTQyMWJhZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC93aW4vV2ViTXV0YWJsZVVSTFJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
d2luL1dlYk11dGFibGVVUkxSZXF1ZXN0LmNwcApAQCAtMjg2LDE3ICsyODYsMzQgQEAgSFJFU1VM
VCBTVERNRVRIT0RDQUxMVFlQRSBXZWJNdXRhYmxlVVJMUmVxdWVzdDo6c2V0Q2FjaGVQb2xpY3ko
CiB9CiAKIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgV2ViTXV0YWJsZVVSTFJlcXVlc3Q6OnNl
dEhUVFBCb2R5KCAKLSAgICAvKiBbaW5dICovIElTdHJlYW0qIC8qZGF0YSovKQorICAgIC8qIFtp
bl0gKi8gSVN0cmVhbSogZGF0YSkKIHsKLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICBy
ZXR1cm4gRV9OT1RJTVBMOworICAgIGlmICghZGF0YSkKKyAgICAgICAgcmV0dXJuIEVfUE9JTlRF
UjsKKworICAgIFNUQVRTVEcgc3RhdDsKKyAgICBpZiAoRkFJTEVEKGRhdGEtPlN0YXQoJnN0YXQs
IFNUQVRGTEFHX05PTkFNRSkpKQorICAgICAgICByZXR1cm4gRV9GQUlMOworCisgICAgaWYgKHN0
YXQuY2JTaXplLkhpZ2hQYXJ0IHx8ICFzdGF0LmNiU2l6ZS5Mb3dQYXJ0KQorICAgICAgICByZXR1
cm4gRV9GQUlMOworCisgICAgY2hhciAqZm9ybURhdGE7CisgICAgUmVmUHRyPEZvcm1EYXRhPiBo
dHRwQm9keSA9IEZvcm1EYXRhOjpjcmVhdGUoKTsKKyAgICBodHRwQm9keS0+YXBwZW5kVW5pbml0
aWFsaXplZERhdGEoc3RhdC5jYlNpemUuTG93UGFydCwgZm9ybURhdGEpOworCisgICAgVUxPTkcg
Ynl0ZXNSZWFkID0gMDsKKyAgICBpZiAoRkFJTEVEKGRhdGEtPlJlYWQoZm9ybURhdGEsIHN0YXQu
Y2JTaXplLkxvd1BhcnQsICZieXRlc1JlYWQpKSkKKyAgICAgICAgcmV0dXJuIEVfRkFJTDsKKwor
ICAgIG1fcmVxdWVzdC5zZXRIVFRQQm9keShodHRwQm9keSk7CisgICAgcmV0dXJuIFNfT0s7CiB9
CiAKIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgV2ViTXV0YWJsZVVSTFJlcXVlc3Q6OnNldEhU
VFBCb2R5U3RyZWFtKCAKLSAgICAvKiBbaW5dICovIElTdHJlYW0qIC8qZGF0YSovKQorICAgIC8q
IFtpbl0gKi8gSVN0cmVhbSogZGF0YSkKIHsKLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAg
ICByZXR1cm4gRV9OT1RJTVBMOworICAgIHJldHVybiBzZXRIVFRQQm9keShkYXRhKTsKIH0KIAog
SFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBXZWJNdXRhYmxlVVJMUmVxdWVzdDo6c2V0SFRUUE1l
dGhvZCggCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>153832</attachid>
            <date>2012-07-23 12:10:28 -0700</date>
            <delta_ts>2013-09-23 09:34:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-91920b.patch</filename>
            <type>text/plain</type>
            <size>3826</size>
            <attacher name="Patrick R. Gansterer">paroga</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3MTU4NThkLi41YjY2ZmUzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkg
QEAKKzIwMTItMDctMjMgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFyb2dhQHdlYmtpdC5vcmc+CisK
KyAgICAgICAgW1dJTl0gSW1wbGVtZW50IFdlYk11dGFibGVVUkxSZXF1ZXN0OjpzZXRIVFRQQm9k
eSgpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MTky
MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVk
IENTdHJpbmc6Om5ld1VuaW5pdGlhbGl6ZWQoKSBsaWtlIG1ldGhvZCB0byBGb3JtRGF0YS4gSXQK
KyAgICAgICAgYWxsb3dzIHVzIHRvIGFsbG9jYXRlIHNwYWNlIGFuZCByZWFkIGRpcmVjdGx5IGlu
dG8gdGhlIGJ1ZmZlci4KKworICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6Rm9ybURhdGE6OmFwcGVuZERhdGEpOgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChXZWJDb3JlOjpGb3JtRGF0YTo6YXBwZW5kVW5pbml0aWFsaXplZERh
dGEpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEuaDoKKwogMjAxMi0wNy0y
MSAgUGF0cmljayBHYW5zdGVyZXIgIDxwYXJvZ2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBDbGVh
bnVwIFRleHRFbmNvZGluZyBVU0UoWFhYX1VOSUNPREUpIG1hY3JvcwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmNwcAppbmRleCA1ZjViNWRmLi4wNDIyZjk0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmNwcApAQCAtMTUz
LDEyICsxNTMsMTkgQEAgUGFzc1JlZlB0cjxGb3JtRGF0YT4gRm9ybURhdGE6OmRlZXBDb3B5KCkg
Y29uc3QKIAogdm9pZCBGb3JtRGF0YTo6YXBwZW5kRGF0YShjb25zdCB2b2lkKiBkYXRhLCBzaXpl
X3Qgc2l6ZSkKIHsKKyAgICBjaGFyKiB0YXJnZXQ7CisgICAgYXBwZW5kVW5pbml0aWFsaXplZERh
dGEoc2l6ZSwgdGFyZ2V0KTsKKyAgICBtZW1jcHkodGFyZ2V0LCBkYXRhLCBzaXplKTsKK30KKwor
dm9pZCBGb3JtRGF0YTo6YXBwZW5kVW5pbml0aWFsaXplZERhdGEoc2l6ZV90IHNpemUsIGNoYXIq
JiBkYXRhKQorewogICAgIGlmIChtX2VsZW1lbnRzLmlzRW1wdHkoKSB8fCBtX2VsZW1lbnRzLmxh
c3QoKS5tX3R5cGUgIT0gRm9ybURhdGFFbGVtZW50OjpkYXRhKQogICAgICAgICBtX2VsZW1lbnRz
LmFwcGVuZChGb3JtRGF0YUVsZW1lbnQoKSk7CiAgICAgRm9ybURhdGFFbGVtZW50JiBlID0gbV9l
bGVtZW50cy5sYXN0KCk7CiAgICAgc2l6ZV90IG9sZFNpemUgPSBlLm1fZGF0YS5zaXplKCk7CiAg
ICAgZS5tX2RhdGEuZ3JvdyhvbGRTaXplICsgc2l6ZSk7Ci0gICAgbWVtY3B5KGUubV9kYXRhLmRh
dGEoKSArIG9sZFNpemUsIGRhdGEsIHNpemUpOworICAgIGRhdGEgPSBlLm1fZGF0YS5kYXRhKCkg
KyBvbGRTaXplOwogfQogCiB2b2lkIEZvcm1EYXRhOjphcHBlbmRGaWxlKGNvbnN0IFN0cmluZyYg
ZmlsZW5hbWUsIGJvb2wgc2hvdWxkR2VuZXJhdGVGaWxlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9Gb3JtRGF0YS5oCmluZGV4IDE0OTgxMzYuLmU4N2EwYTUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL0Zvcm1EYXRhLmgKQEAgLTExMSw2ICsxMTEsNyBAQCBw
dWJsaWM6CiAgICAgc3RhdGljIFBhc3NSZWZQdHI8Rm9ybURhdGE+IGRlY29kZUZvckJhY2tGb3J3
YXJkKERlY29kZXImKTsKIAogICAgIHZvaWQgYXBwZW5kRGF0YShjb25zdCB2b2lkKiBkYXRhLCBz
aXplX3QpOworICAgIHZvaWQgYXBwZW5kVW5pbml0aWFsaXplZERhdGEoc2l6ZV90LCBjaGFyKiYg
ZGF0YSk7CiAgICAgdm9pZCBhcHBlbmRGaWxlKGNvbnN0IFN0cmluZyYgZmlsZVBhdGgsIGJvb2wg
c2hvdWxkR2VuZXJhdGVGaWxlID0gZmFsc2UpOwogI2lmIEVOQUJMRShCTE9CKQogICAgIHZvaWQg
YXBwZW5kRmlsZVJhbmdlKGNvbnN0IFN0cmluZyYgZmlsZW5hbWUsIGxvbmcgbG9uZyBzdGFydCwg
bG9uZyBsb25nIGxlbmd0aCwgZG91YmxlIGV4cGVjdGVkTW9kaWZpY2F0aW9uVGltZSwgYm9vbCBz
aG91bGRHZW5lcmF0ZUZpbGUgPSBmYWxzZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dp
bi9XZWJNdXRhYmxlVVJMUmVxdWVzdC5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJNdXRhYmxl
VVJMUmVxdWVzdC5jcHAKaW5kZXggYTIyZjczMi4uOTQyMWJhZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC93aW4vV2ViTXV0YWJsZVVSTFJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
d2luL1dlYk11dGFibGVVUkxSZXF1ZXN0LmNwcApAQCAtMjg2LDE3ICsyODYsMzQgQEAgSFJFU1VM
VCBTVERNRVRIT0RDQUxMVFlQRSBXZWJNdXRhYmxlVVJMUmVxdWVzdDo6c2V0Q2FjaGVQb2xpY3ko
CiB9CiAKIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgV2ViTXV0YWJsZVVSTFJlcXVlc3Q6OnNl
dEhUVFBCb2R5KCAKLSAgICAvKiBbaW5dICovIElTdHJlYW0qIC8qZGF0YSovKQorICAgIC8qIFtp
bl0gKi8gSVN0cmVhbSogZGF0YSkKIHsKLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICBy
ZXR1cm4gRV9OT1RJTVBMOworICAgIGlmICghZGF0YSkKKyAgICAgICAgcmV0dXJuIEVfUE9JTlRF
UjsKKworICAgIFNUQVRTVEcgc3RhdDsKKyAgICBpZiAoRkFJTEVEKGRhdGEtPlN0YXQoJnN0YXQs
IFNUQVRGTEFHX05PTkFNRSkpKQorICAgICAgICByZXR1cm4gRV9GQUlMOworCisgICAgaWYgKHN0
YXQuY2JTaXplLkhpZ2hQYXJ0IHx8ICFzdGF0LmNiU2l6ZS5Mb3dQYXJ0KQorICAgICAgICByZXR1
cm4gRV9GQUlMOworCisgICAgY2hhciogZm9ybURhdGE7CisgICAgUmVmUHRyPEZvcm1EYXRhPiBo
dHRwQm9keSA9IEZvcm1EYXRhOjpjcmVhdGUoKTsKKyAgICBodHRwQm9keS0+YXBwZW5kVW5pbml0
aWFsaXplZERhdGEoc3RhdC5jYlNpemUuTG93UGFydCwgZm9ybURhdGEpOworCisgICAgVUxPTkcg
Ynl0ZXNSZWFkID0gMDsKKyAgICBpZiAoRkFJTEVEKGRhdGEtPlJlYWQoZm9ybURhdGEsIHN0YXQu
Y2JTaXplLkxvd1BhcnQsICZieXRlc1JlYWQpKSkKKyAgICAgICAgcmV0dXJuIEVfRkFJTDsKKwor
ICAgIG1fcmVxdWVzdC5zZXRIVFRQQm9keShodHRwQm9keSk7CisgICAgcmV0dXJuIFNfT0s7CiB9
CiAKIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgV2ViTXV0YWJsZVVSTFJlcXVlc3Q6OnNldEhU
VFBCb2R5U3RyZWFtKCAKLSAgICAvKiBbaW5dICovIElTdHJlYW0qIC8qZGF0YSovKQorICAgIC8q
IFtpbl0gKi8gSVN0cmVhbSogZGF0YSkKIHsKLSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAg
ICByZXR1cm4gRV9OT1RJTVBMOworICAgIHJldHVybiBzZXRIVFRQQm9keShkYXRhKTsKIH0KIAog
SFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBXZWJNdXRhYmxlVVJMUmVxdWVzdDo6c2V0SFRUUE1l
dGhvZCggCg==
</data>
<flag name="review"
          id="162896"
          type_id="1"
          status="-"
          setter="bfulgham"
    />
    <flag name="commit-queue"
          id="162897"
          type_id="3"
          status="-"
          setter="bfulgham"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>212355</attachid>
            <date>2013-09-23 09:34:00 -0700</date>
            <delta_ts>2013-09-23 09:38:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-91920.patch</filename>
            <type>text/plain</type>
            <size>4762</size>
            <attacher name="Patrick R. Gansterer">paroga</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmMGFhZjIyLi5jZjQwM2VkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcg
QEAKKzIwMTMtMDktMjMgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFyb2dhQHdlYmtpdC5vcmc+CisK
KyAgICAgICAgW1dJTl0gSW1wbGVtZW50IFdlYk11dGFibGVVUkxSZXF1ZXN0OjpzZXRIVFRQQm9k
eSgpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MTky
MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBh
IG1ldGhvZCB0byBGb3JtRGF0YSBmb3IgZ3Jvd2luZyB0aGUgaW50ZXJuYWwgYnVmZmVyIHdpdGgg
YSBnaXZlbiBzaXplLgorCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpGb3JtRGF0YTo6YXBwZW5kRGF0YSk6CisgICAgICAgIChXZWJD
b3JlOjpGb3JtRGF0YTo6ZXhwYW5kRGF0YVN0b3JlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3
b3JrL0Zvcm1EYXRhLmg6CisKIDIwMTMtMDktMTQgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFyb2dh
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWRkIENNYWtlIGJhc2UgYnVpbGQgc3lzdGVtIGZvciBX
aW5DYWlybyBwb3J0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L0Zvcm1EYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEu
Y3BwCmluZGV4IGYxMjZhZTQuLjQ5YmRjYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvRm9ybURhdGEuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvRm9ybURhdGEuY3BwCkBAIC0xNjAsMTIgKzE2MCw3IEBAIFBhc3NSZWZQdHI8Rm9y
bURhdGE+IEZvcm1EYXRhOjpkZWVwQ29weSgpIGNvbnN0CiAKIHZvaWQgRm9ybURhdGE6OmFwcGVu
ZERhdGEoY29uc3Qgdm9pZCogZGF0YSwgc2l6ZV90IHNpemUpCiB7Ci0gICAgaWYgKG1fZWxlbWVu
dHMuaXNFbXB0eSgpIHx8IG1fZWxlbWVudHMubGFzdCgpLm1fdHlwZSAhPSBGb3JtRGF0YUVsZW1l
bnQ6OmRhdGEpCi0gICAgICAgIG1fZWxlbWVudHMuYXBwZW5kKEZvcm1EYXRhRWxlbWVudCgpKTsK
LSAgICBGb3JtRGF0YUVsZW1lbnQmIGUgPSBtX2VsZW1lbnRzLmxhc3QoKTsKLSAgICBzaXplX3Qg
b2xkU2l6ZSA9IGUubV9kYXRhLnNpemUoKTsKLSAgICBlLm1fZGF0YS5ncm93KG9sZFNpemUgKyBz
aXplKTsKLSAgICBtZW1jcHkoZS5tX2RhdGEuZGF0YSgpICsgb2xkU2l6ZSwgZGF0YSwgc2l6ZSk7
CisgICAgbWVtY3B5KGV4cGFuZERhdGFTdG9yZShzaXplKSwgZGF0YSwgc2l6ZSk7CiB9CiAKIHZv
aWQgRm9ybURhdGE6OmFwcGVuZEZpbGUoY29uc3QgU3RyaW5nJiBmaWxlbmFtZSwgYm9vbCBzaG91
bGRHZW5lcmF0ZUZpbGUpCkBAIC0zMDEsNiArMjk2LDE2IEBAIHZvaWQgRm9ybURhdGE6OmFwcGVu
ZEtleVZhbHVlUGFpckl0ZW1zKGNvbnN0IEZvcm1EYXRhTGlzdCYgbGlzdCwgY29uc3QgVGV4dEVu
Y29kCiAgICAgYXBwZW5kRGF0YShlbmNvZGVkRGF0YS5kYXRhKCksIGVuY29kZWREYXRhLnNpemUo
KSk7CiB9CiAKK2NoYXIqIEZvcm1EYXRhOjpleHBhbmREYXRhU3RvcmUoc2l6ZV90IHNpemUpCit7
CisgICAgaWYgKG1fZWxlbWVudHMuaXNFbXB0eSgpIHx8IG1fZWxlbWVudHMubGFzdCgpLm1fdHlw
ZSAhPSBGb3JtRGF0YUVsZW1lbnQ6OmRhdGEpCisgICAgICAgIG1fZWxlbWVudHMuYXBwZW5kKEZv
cm1EYXRhRWxlbWVudCgpKTsKKyAgICBGb3JtRGF0YUVsZW1lbnQmIGUgPSBtX2VsZW1lbnRzLmxh
c3QoKTsKKyAgICBzaXplX3Qgb2xkU2l6ZSA9IGUubV9kYXRhLnNpemUoKTsKKyAgICBlLm1fZGF0
YS5ncm93KG9sZFNpemUgKyBzaXplKTsKKyAgICByZXR1cm4gZS5tX2RhdGEuZGF0YSgpICsgb2xk
U2l6ZTsKK30KKwogdm9pZCBGb3JtRGF0YTo6ZmxhdHRlbihWZWN0b3I8Y2hhcj4mIGRhdGEpIGNv
bnN0CiB7CiAgICAgLy8gQ29uY2F0ZW5hdGUgYWxsIHRoZSBieXRlIGFycmF5cywgYnV0IG9taXQg
YW55IGZpbGVzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9G
b3JtRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5oCmlu
ZGV4IGNmMGI0YzguLmFkYmExYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvRm9ybURhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L0Zvcm1EYXRhLmgKQEAgLTEzMCw2ICsxMzAsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBhcHBlbmRV
UkwoY29uc3QgS1VSTCYpOwogICAgIHZvaWQgYXBwZW5kVVJMUmFuZ2UoY29uc3QgS1VSTCYsIGxv
bmcgbG9uZyBzdGFydCwgbG9uZyBsb25nIGxlbmd0aCwgZG91YmxlIGV4cGVjdGVkTW9kaWZpY2F0
aW9uVGltZSk7CiAjZW5kaWYKKyAgICBjaGFyKiBleHBhbmREYXRhU3RvcmUoc2l6ZV90IHNpemUp
OwogCiAgICAgdm9pZCBmbGF0dGVuKFZlY3RvcjxjaGFyPiYpIGNvbnN0OyAvLyBvbWl0cyBmaWxl
cwogICAgIFN0cmluZyBmbGF0dGVuVG9TdHJpbmcoKSBjb25zdDsgLy8gb21pdHMgZmlsZXMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvd2lu
L0NoYW5nZUxvZwppbmRleCAxYTAzNTQ1Li4xNGFkMmZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L3dpbi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTQgQEAKKzIwMTMtMDktMjMgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFyb2dhQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgW1dJTl0gSW1wbGVtZW50IFdlYk11dGFibGVVUkxSZXF1ZXN0Ojpz
ZXRIVFRQQm9keSgpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD05MTkyMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogV2ViTXV0YWJsZVVSTFJlcXVlc3QuY3BwOgorICAgICAgICAoV2ViTXV0YWJsZVVSTFJl
cXVlc3Q6OnNldEhUVFBCb2R5KToKKyAgICAgICAgKFdlYk11dGFibGVVUkxSZXF1ZXN0OjpzZXRI
VFRQQm9keVN0cmVhbSk6CisKIDIwMTMtMDktMjIgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9y
Zz4KIAogICAgICAgICBUcnkgdG8gZml4IHRoZSB3aW5kb3dzIGJ1aWxkICh0YWtlIDIpLgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC93aW4vV2ViTXV0YWJsZVVSTFJlcXVlc3QuY3BwIGIvU291
cmNlL1dlYktpdC93aW4vV2ViTXV0YWJsZVVSTFJlcXVlc3QuY3BwCmluZGV4IDVmYmNiMDguLjk2
NDJlNjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYk11dGFibGVVUkxSZXF1ZXN0
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJNdXRhYmxlVVJMUmVxdWVzdC5jcHAKQEAg
LTI4NiwxOCArMjg2LDMyIEBAIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgV2ViTXV0YWJsZVVS
TFJlcXVlc3Q6OnNldENhY2hlUG9saWN5KAogICAgIHJldHVybiBTX09LOwogfQogCi1IUkVTVUxU
IFNURE1FVEhPRENBTExUWVBFIFdlYk11dGFibGVVUkxSZXF1ZXN0OjpzZXRIVFRQQm9keSggCi0g
ICAgLyogW2luXSAqLyBJU3RyZWFtKiAvKmRhdGEqLykKK0hSRVNVTFQgV2ViTXV0YWJsZVVSTFJl
cXVlc3Q6OnNldEhUVFBCb2R5KElTdHJlYW0qIGRhdGEpCiB7Ci0gICAgQVNTRVJUX05PVF9SRUFD
SEVEKCk7Ci0gICAgcmV0dXJuIEVfTk9USU1QTDsKKyAgICBpZiAoIWRhdGEpCisgICAgICAgIHJl
dHVybiBFX1BPSU5URVI7CisKKyAgICBTVEFUU1RHIHN0YXQ7CisgICAgaWYgKEZBSUxFRChkYXRh
LT5TdGF0KCZzdGF0LCBTVEFURkxBR19OT05BTUUpKSkKKyAgICAgICAgcmV0dXJuIEVfRkFJTDsK
KworICAgIGlmIChzdGF0LmNiU2l6ZS5IaWdoUGFydCB8fCAhc3RhdC5jYlNpemUuTG93UGFydCkK
KyAgICAgICAgcmV0dXJuIEVfRkFJTDsKKworICAgIFJlZlB0cjxGb3JtRGF0YT4gaHR0cEJvZHkg
PSBGb3JtRGF0YTo6Y3JlYXRlKCk7CisgICAgY2hhciogZm9ybURhdGEgPSBodHRwQm9keS0+ZXhw
YW5kRGF0YVN0b3JlKHN0YXQuY2JTaXplLkxvd1BhcnQpOworCisgICAgVUxPTkcgYnl0ZXNSZWFk
ID0gMDsKKyAgICBpZiAoRkFJTEVEKGRhdGEtPlJlYWQoZm9ybURhdGEsIHN0YXQuY2JTaXplLkxv
d1BhcnQsICZieXRlc1JlYWQpKSkKKyAgICAgICAgcmV0dXJuIEVfRkFJTDsKKworICAgIG1fcmVx
dWVzdC5zZXRIVFRQQm9keShodHRwQm9keSk7CisgICAgcmV0dXJuIFNfT0s7CiB9CiAKLUhSRVNV
TFQgU1RETUVUSE9EQ0FMTFRZUEUgV2ViTXV0YWJsZVVSTFJlcXVlc3Q6OnNldEhUVFBCb2R5U3Ry
ZWFtKCAKLSAgICAvKiBbaW5dICovIElTdHJlYW0qIC8qZGF0YSovKQorSFJFU1VMVCBXZWJNdXRh
YmxlVVJMUmVxdWVzdDo6c2V0SFRUUEJvZHlTdHJlYW0oSVN0cmVhbSogZGF0YSkKIHsKLSAgICBB
U1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4gRV9OT1RJTVBMOworICAgIHJldHVybiBz
ZXRIVFRQQm9keShkYXRhKTsKIH0KIAogSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBXZWJNdXRh
YmxlVVJMUmVxdWVzdDo6c2V0SFRUUE1ldGhvZCggCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>212357</attachid>
            <date>2013-09-23 09:38:01 -0700</date>
            <delta_ts>2013-09-23 15:34:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-91920.patch</filename>
            <type>text/plain</type>
            <size>4757</size>
            <attacher name="Patrick R. Gansterer">paroga</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmMGFhZjIyLi5jZjQwM2VkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcg
QEAKKzIwMTMtMDktMjMgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFyb2dhQHdlYmtpdC5vcmc+CisK
KyAgICAgICAgW1dJTl0gSW1wbGVtZW50IFdlYk11dGFibGVVUkxSZXF1ZXN0OjpzZXRIVFRQQm9k
eSgpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MTky
MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBh
IG1ldGhvZCB0byBGb3JtRGF0YSBmb3IgZ3Jvd2luZyB0aGUgaW50ZXJuYWwgYnVmZmVyIHdpdGgg
YSBnaXZlbiBzaXplLgorCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpGb3JtRGF0YTo6YXBwZW5kRGF0YSk6CisgICAgICAgIChXZWJD
b3JlOjpGb3JtRGF0YTo6ZXhwYW5kRGF0YVN0b3JlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3
b3JrL0Zvcm1EYXRhLmg6CisKIDIwMTMtMDktMTQgIFBhdHJpY2sgR2Fuc3RlcmVyICA8cGFyb2dh
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWRkIENNYWtlIGJhc2UgYnVpbGQgc3lzdGVtIGZvciBX
aW5DYWlybyBwb3J0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L0Zvcm1EYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvRm9ybURhdGEu
Y3BwCmluZGV4IGYxMjZhZTQuLjQ5YmRjYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvRm9ybURhdGEuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvRm9ybURhdGEuY3BwCkBAIC0xNjAsMTIgKzE2MCw3IEBAIFBhc3NSZWZQdHI8Rm9y
bURhdGE+IEZvcm1EYXRhOjpkZWVwQ29weSgpIGNvbnN0CiAKIHZvaWQgRm9ybURhdGE6OmFwcGVu
ZERhdGEoY29uc3Qgdm9pZCogZGF0YSwgc2l6ZV90IHNpemUpCiB7Ci0gICAgaWYgKG1fZWxlbWVu
dHMuaXNFbXB0eSgpIHx8IG1fZWxlbWVudHMubGFzdCgpLm1fdHlwZSAhPSBGb3JtRGF0YUVsZW1l
bnQ6OmRhdGEpCi0gICAgICAgIG1fZWxlbWVudHMuYXBwZW5kKEZvcm1EYXRhRWxlbWVudCgpKTsK
LSAgICBGb3JtRGF0YUVsZW1lbnQmIGUgPSBtX2VsZW1lbnRzLmxhc3QoKTsKLSAgICBzaXplX3Qg
b2xkU2l6ZSA9IGUubV9kYXRhLnNpemUoKTsKLSAgICBlLm1fZGF0YS5ncm93KG9sZFNpemUgKyBz
aXplKTsKLSAgICBtZW1jcHkoZS5tX2RhdGEuZGF0YSgpICsgb2xkU2l6ZSwgZGF0YSwgc2l6ZSk7
CisgICAgbWVtY3B5KGV4cGFuZERhdGFTdG9yZShzaXplKSwgZGF0YSwgc2l6ZSk7CiB9CiAKIHZv
aWQgRm9ybURhdGE6OmFwcGVuZEZpbGUoY29uc3QgU3RyaW5nJiBmaWxlbmFtZSwgYm9vbCBzaG91
bGRHZW5lcmF0ZUZpbGUpCkBAIC0zMDEsNiArMjk2LDE2IEBAIHZvaWQgRm9ybURhdGE6OmFwcGVu
ZEtleVZhbHVlUGFpckl0ZW1zKGNvbnN0IEZvcm1EYXRhTGlzdCYgbGlzdCwgY29uc3QgVGV4dEVu
Y29kCiAgICAgYXBwZW5kRGF0YShlbmNvZGVkRGF0YS5kYXRhKCksIGVuY29kZWREYXRhLnNpemUo
KSk7CiB9CiAKK2NoYXIqIEZvcm1EYXRhOjpleHBhbmREYXRhU3RvcmUoc2l6ZV90IHNpemUpCit7
CisgICAgaWYgKG1fZWxlbWVudHMuaXNFbXB0eSgpIHx8IG1fZWxlbWVudHMubGFzdCgpLm1fdHlw
ZSAhPSBGb3JtRGF0YUVsZW1lbnQ6OmRhdGEpCisgICAgICAgIG1fZWxlbWVudHMuYXBwZW5kKEZv
cm1EYXRhRWxlbWVudCgpKTsKKyAgICBGb3JtRGF0YUVsZW1lbnQmIGUgPSBtX2VsZW1lbnRzLmxh
c3QoKTsKKyAgICBzaXplX3Qgb2xkU2l6ZSA9IGUubV9kYXRhLnNpemUoKTsKKyAgICBlLm1fZGF0
YS5ncm93KG9sZFNpemUgKyBzaXplKTsKKyAgICByZXR1cm4gZS5tX2RhdGEuZGF0YSgpICsgb2xk
U2l6ZTsKK30KKwogdm9pZCBGb3JtRGF0YTo6ZmxhdHRlbihWZWN0b3I8Y2hhcj4mIGRhdGEpIGNv
bnN0CiB7CiAgICAgLy8gQ29uY2F0ZW5hdGUgYWxsIHRoZSBieXRlIGFycmF5cywgYnV0IG9taXQg
YW55IGZpbGVzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9G
b3JtRGF0YS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9Gb3JtRGF0YS5oCmlu
ZGV4IGNmMGI0YzguLmFkYmExYjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L25ldHdvcmsvRm9ybURhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3Jr
L0Zvcm1EYXRhLmgKQEAgLTEzMCw2ICsxMzAsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBhcHBlbmRV
UkwoY29uc3QgS1VSTCYpOwogICAgIHZvaWQgYXBwZW5kVVJMUmFuZ2UoY29uc3QgS1VSTCYsIGxv
bmcgbG9uZyBzdGFydCwgbG9uZyBsb25nIGxlbmd0aCwgZG91YmxlIGV4cGVjdGVkTW9kaWZpY2F0
aW9uVGltZSk7CiAjZW5kaWYKKyAgICBjaGFyKiBleHBhbmREYXRhU3RvcmUoc2l6ZV90KTsKIAog
ICAgIHZvaWQgZmxhdHRlbihWZWN0b3I8Y2hhcj4mKSBjb25zdDsgLy8gb21pdHMgZmlsZXMKICAg
ICBTdHJpbmcgZmxhdHRlblRvU3RyaW5nKCkgY29uc3Q7IC8vIG9taXRzIGZpbGVzCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFu
Z2VMb2cKaW5kZXggMWEwMzU0NS4uMTRhZDJmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93
aW4vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE0IEBACisyMDEzLTA5LTIzICBQYXRyaWNrIEdhbnN0ZXJlciAgPHBhcm9nYUB3ZWJraXQub3Jn
PgorCisgICAgICAgIFtXSU5dIEltcGxlbWVudCBXZWJNdXRhYmxlVVJMUmVxdWVzdDo6c2V0SFRU
UEJvZHkoKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
OTE5MjAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IFdlYk11dGFibGVVUkxSZXF1ZXN0LmNwcDoKKyAgICAgICAgKFdlYk11dGFibGVVUkxSZXF1ZXN0
OjpzZXRIVFRQQm9keSk6CisgICAgICAgIChXZWJNdXRhYmxlVVJMUmVxdWVzdDo6c2V0SFRUUEJv
ZHlTdHJlYW0pOgorCiAyMDEzLTA5LTIyICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CiAK
ICAgICAgICAgVHJ5IHRvIGZpeCB0aGUgd2luZG93cyBidWlsZCAodGFrZSAyKS4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYk11dGFibGVVUkxSZXF1ZXN0LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvd2luL1dlYk11dGFibGVVUkxSZXF1ZXN0LmNwcAppbmRleCA1ZmJjYjA4Li45NjQyZTY4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJNdXRhYmxlVVJMUmVxdWVzdC5jcHAK
KysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViTXV0YWJsZVVSTFJlcXVlc3QuY3BwCkBAIC0yODYs
MTggKzI4NiwzMiBAQCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFdlYk11dGFibGVVUkxSZXF1
ZXN0OjpzZXRDYWNoZVBvbGljeSgKICAgICByZXR1cm4gU19PSzsKIH0KIAotSFJFU1VMVCBTVERN
RVRIT0RDQUxMVFlQRSBXZWJNdXRhYmxlVVJMUmVxdWVzdDo6c2V0SFRUUEJvZHkoIAotICAgIC8q
IFtpbl0gKi8gSVN0cmVhbSogLypkYXRhKi8pCitIUkVTVUxUIFdlYk11dGFibGVVUkxSZXF1ZXN0
OjpzZXRIVFRQQm9keShJU3RyZWFtKiBkYXRhKQogewotICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgp
OwotICAgIHJldHVybiBFX05PVElNUEw7CisgICAgaWYgKCFkYXRhKQorICAgICAgICByZXR1cm4g
RV9QT0lOVEVSOworCisgICAgU1RBVFNURyBzdGF0OworICAgIGlmIChGQUlMRUQoZGF0YS0+U3Rh
dCgmc3RhdCwgU1RBVEZMQUdfTk9OQU1FKSkpCisgICAgICAgIHJldHVybiBFX0ZBSUw7CisKKyAg
ICBpZiAoc3RhdC5jYlNpemUuSGlnaFBhcnQgfHwgIXN0YXQuY2JTaXplLkxvd1BhcnQpCisgICAg
ICAgIHJldHVybiBFX0ZBSUw7CisKKyAgICBSZWZQdHI8Rm9ybURhdGE+IGh0dHBCb2R5ID0gRm9y
bURhdGE6OmNyZWF0ZSgpOworICAgIGNoYXIqIGZvcm1EYXRhID0gaHR0cEJvZHktPmV4cGFuZERh
dGFTdG9yZShzdGF0LmNiU2l6ZS5Mb3dQYXJ0KTsKKworICAgIFVMT05HIGJ5dGVzUmVhZCA9IDA7
CisgICAgaWYgKEZBSUxFRChkYXRhLT5SZWFkKGZvcm1EYXRhLCBzdGF0LmNiU2l6ZS5Mb3dQYXJ0
LCAmYnl0ZXNSZWFkKSkpCisgICAgICAgIHJldHVybiBFX0ZBSUw7CisKKyAgICBtX3JlcXVlc3Qu
c2V0SFRUUEJvZHkoaHR0cEJvZHkpOworICAgIHJldHVybiBTX09LOwogfQogCi1IUkVTVUxUIFNU
RE1FVEhPRENBTExUWVBFIFdlYk11dGFibGVVUkxSZXF1ZXN0OjpzZXRIVFRQQm9keVN0cmVhbSgg
Ci0gICAgLyogW2luXSAqLyBJU3RyZWFtKiAvKmRhdGEqLykKK0hSRVNVTFQgV2ViTXV0YWJsZVVS
TFJlcXVlc3Q6OnNldEhUVFBCb2R5U3RyZWFtKElTdHJlYW0qIGRhdGEpCiB7Ci0gICAgQVNTRVJU
X05PVF9SRUFDSEVEKCk7Ci0gICAgcmV0dXJuIEVfTk9USU1QTDsKKyAgICByZXR1cm4gc2V0SFRU
UEJvZHkoZGF0YSk7CiB9CiAKIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgV2ViTXV0YWJsZVVS
TFJlcXVlc3Q6OnNldEhUVFBNZXRob2QoIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>