<?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>52092</bug_id>
          
          <creation_ts>2011-01-07 17:03:44 -0800</creation_ts>
          <short_desc>[Soup] ResourceHandleSoup does not handle encodedBlobData</short_desc>
          <delta_ts>2011-10-26 10:13: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>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk</keywords>
          <priority>P3</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>40833</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Martin Robinson">mrobinson</reporter>
          <assigned_to name="Martin Robinson">mrobinson</assigned_to>
          <cc>elima</cc>
    
    <cc>gustavo</cc>
    
    <cc>jianli</cc>
    
    <cc>pnormand</cc>
    
    <cc>svillar</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>331102</commentid>
    <comment_count>0</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-01-07 17:03:44 -0800</bug_when>
    <thetext>Blob support was recently turned on my default, but this bug prevents http/tests/local/formdata/send-form-data-with-sliced-file.html from passing when beginDragWithFiles lands.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476621</commentid>
    <comment_count>1</comment_count>
      <attachid>109414</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-10-01 19:31:54 -0700</bug_when>
    <thetext>Created attachment 109414
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476622</commentid>
    <comment_count>2</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-10-01 19:33:31 -0700</bug_when>
    <thetext>Jian, maybe you could take a look at my implementation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476623</commentid>
    <comment_count>3</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-10-01 19:34:07 -0700</bug_when>
    <thetext>..to verify its sanity.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476815</commentid>
    <comment_count>4</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-10-02 23:43:57 -0700</bug_when>
    <thetext>*** Bug 54234 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476819</commentid>
    <comment_count>5</comment_count>
      <attachid>109445</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-10-02 23:48:45 -0700</bug_when>
    <thetext>Created attachment 109445
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476821</commentid>
    <comment_count>6</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-10-02 23:49:41 -0700</bug_when>
    <thetext>There seems to be a little bit of code to support blob data for synchronous requests as well. I&apos;ve included that in this patch and unskipped one more test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>481055</commentid>
    <comment_count>7</comment_count>
      <attachid>109445</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2011-10-10 12:13:09 -0700</bug_when>
    <thetext>Comment on attachment 109445
Patch

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

Looks good!

&gt; Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:597
&gt;      // We have more than one element to upload, and some may be large files,
&gt;      // which we will want to mmap instead of copying into memory

This comment does not hold true anymore, I believe? We don&apos;t know that we have more than one element, do we? =)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>482162</commentid>
    <comment_count>8</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-10-11 19:25:45 -0700</bug_when>
    <thetext>Committed r97219: &lt;http://trac.webkit.org/changeset/97219&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>482164</commentid>
    <comment_count>9</comment_count>
      <attachid>109445</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-10-11 19:28:38 -0700</bug_when>
    <thetext>Comment on attachment 109445
Patch

Thanks for the review! I landed this without the comment (and one more that was wrong).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>490975</commentid>
    <comment_count>10</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-10-26 10:13:36 -0700</bug_when>
    <thetext>*** Bug 68173 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>109414</attachid>
            <date>2011-10-01 19:31:54 -0700</date>
            <delta_ts>2011-10-02 23:48:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-52092-20111001193153.patch</filename>
            <type>text/plain</type>
            <size>10127</size>
            <attacher name="Martin Robinson">mrobinson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTYzNzgKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA4YzgyZTg3ODg3NDI1ZmMzMzA5M2Vh
Nzk0Njc2NWJhY2VlNGNjN2VhLi5mYWJhZDFjMmNmMjliMDc3M2I3NjkzY2FmMmI3MzJlNjNiZWEz
ZDE2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTEtMTAtMDEgIE1hcnRpbiBSb2JpbnNvbiAg
PG1yb2JpbnNvbkBpZ2FsaWEuY29tPgorCisgICAgICAgIFtTb3VwXSBSZXNvdXJjZUhhbmRsZVNv
dXAgZG9lcyBub3QgaGFuZGxlIGVuY29kZWRCbG9iRGF0YQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwOTIKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOiBVbnNraXAg
dGVzdHMgd2hpY2ggYXJlIG5vdyBwYXNzaW5nLgorCiAyMDExLTA5LTI5ICBNYXJ0aW4gUm9iaW5z
b24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KIAogICAgICAgICBbRnJlZXR5cGVdIFNvbWUgdGV4
dCBpbiBQbGFuZXQgR05PTUUgcmVuZGVycyBpbiB0aGUgd3JvbmcgcGxhY2UKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Z3RrL1NraXBwZWQKaW5kZXggYzBhNGRiOTlhNTM5NmJhYzJhYTJkMzE3Nzk4MDEyZTc2Mjk1ODlm
Yy4uZmQxZTQ2ZTRlODEzZmJiZGFkZDI4YzI1NzY3OTQ3NTMxMjQwZDA5OSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ3RrL1NraXBwZWQKQEAgLTM3NSwxMCArMzc1LDcgQEAgaHR0cC90ZXN0cy9taXNjL3dlYnRp
bWluZy10d28tcmVkaXJlY3RzLnBocAogIyBGaWxlU3lzdGVtIEFQSSBpcyBub3Qgc3VwcG9ydGVk
LgogZmFzdC9maWxlc3lzdGVtCiBodHRwL3Rlc3RzL2ZpbGVzeXN0ZW0KLWh0dHAvdGVzdHMvbG9j
YWwvZmlsZWFwaQogaHR0cC90ZXN0cy9zZWN1cml0eS9maWxlc3lzdGVtLWlmcmFtZS1mcm9tLXJl
bW90ZS5odG1sCi1odHRwL3Rlc3RzL3dlYnNvY2tldC90ZXN0cy9oeWJpL3NlbmQtZmlsZS1ibG9i
Lmh0bWwKLWh0dHAvdGVzdHMvd2Vic29ja2V0L3Rlc3RzL2h5Ymkvc2VuZC1maWxlLWJsb2ItZmFp
bC5odG1sCiAKICMgUmVxdWlyZXMgV2ViUCBzdXBwb3J0LgogZmFzdC9pbWFnZXMvd2VicC1pbWFn
ZS1kZWNvZGluZy5odG1sCkBAIC0xMjk2LDEzICsxMjkzLDYgQEAgaHR0cC90ZXN0cy9zZWN1cml0
eS9kcmFnLWRyb3Atc2FtZS11bmlxdWUtb3JpZ2luLmh0bWwKICMgU2hvdWxkIHJlY2hlY2sgaXQg
d2hlbiB0aGUgYWJvdmUgYnVnIGlzIGZpeGVkLgogZmFzdC9maWxlcy93b3JrZXJzL3dvcmtlci1h
cHBseS1ibG9iLXVybC10by14aHIuaHRtbAogCi0jIFtTb3VwXSBSZXNvdXJjZUhhbmRsZVNvdXAg
ZG9lcyBub3QgaGFuZGxlIGVuY29kZWRCbG9iRGF0YQotIyBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NTIwOTIKLWh0dHAvdGVzdHMvbG9jYWwvYmxvYi9zZW5kLWRhdGEt
YmxvYi5odG1sCi1odHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2VuZC1oeWJyaWQtYmxvYi5odG1sCi1o
dHRwL3Rlc3RzL2xvY2FsL2Jsb2Ivc2VuZC1zbGljZWQtZGF0YS1ibG9iLmh0bWwKLWh0dHAvdGVz
dHMvbG9jYWwvZm9ybWRhdGEvc2VuZC1mb3JtLWRhdGEtd2l0aC1zbGljZWQtZmlsZS5odG1sCi0K
ICMgW0dUS10gRHJhZ2dpbmcgaW1hZ2VzIGFuZCBsaW5rcyByZXN1bHRzIGluIGEgRGF0YVRyYW5z
ZmVyIG9iamVjdCBjb250YWluaW5nIGEgbm9uLWVtcHR5IGZpbGVzIGFycmF5CiAjIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA5NAogZWRpdGluZy9wYXN0ZWJvYXJk
L2ZpbGVzLWR1cmluZy1wYWdlLWRyYWdzLmh0bWwKQEAgLTE2NjUsMyArMTY1NSw4IEBAIGNhbnZh
cy9waGlsaXAvdGVzdHMvMmQuZHJhd0ltYWdlLm91dHNpZGVzb3VyY2UuaHRtbAogIyBodHRwL3Rl
c3RzL211bHRpcGFydC9zdG9wLWNyYXNoLmh0bWwgZmFpbHMgb24gR1RLIGFuZCBRdAogIyBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njg5NzkKIGh0dHAvdGVzdHMvbXVs
dGlwYXJ0L3N0b3AtY3Jhc2guaHRtbAorCisjIFNvbWUgdGVzdHMgZmFpbCB3aXRoICAiRkFJTCBV
bmV4cGVjdGVkIHJlc3BvbnNlIGRhdGEgcmVjZWl2ZWQ6IFdyb25nIG1ldGhvZDogR0VUIgorIyBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjkyMTkKK2h0dHAvdGVzdHMv
bG9jYWwvZmlsZWFwaS9zZW5kLXNsaWNlZC1kcmFnZ2VkLWZpbGUuaHRtbCAgCitodHRwL3Rlc3Rz
L2xvY2FsL2Jsb2Ivc2VuZC1oeWJyaWQtYmxvYi5odG1sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTliZmRiZmIz
OWNjNzQ5OWZmYTZhOTU0YmNiZTM4MmZmODFjODNhNC4uZWQ3OGQ3Y2JiODIwNDJiNDRmNzBkZjg5
MTliN2FjZDhjNTMwN2M3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDIzIEBACiAyMDExLTEwLTAx
ICBNYXJ0aW4gUm9iaW5zb24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KIAorICAgICAgICBbU291
cF0gUmVzb3VyY2VIYW5kbGVTb3VwIGRvZXMgbm90IGhhbmRsZSBlbmNvZGVkQmxvYkRhdGEKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUyMDkyCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIHN1cHBvcnQg
Zm9yIHNlbmRpbmcgZW5jb2RlZCBibG9iIGRhdGEgZHVyaW5nIHJlcXVlc3RzLgorCisgICAgICAg
ICogcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlSGFuZGxlU291cC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjphZGRGaWxlVG9Tb3VwTWVzc2FnZUJvZHkpOiBBZGRlZCB0aGlzIGhlbHBlci4K
KyAgICAgICAgKFdlYkNvcmU6OmJsb2JJc091dE9mRGF0ZSk6IERpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6YWRkRW5jb2RlZEJsb2JJdGVtVG9Tb3VwTWVzc2FnZUJvZHkpOiBEaXR0by4KKyAgICAg
ICAgKFdlYkNvcmU6OmFkZEVuY29kZWRCbG9iVG9Tb3VwTWVzc2FnZUJvZHkpOiBEaXR0by4KKyAg
ICAgICAgKFdlYkNvcmU6OmFkZEZvcm1FbGVtZW50c1RvU291cE1lc3NhZ2UpOiBObyBsb25nZXIg
ZmxhdHRlbiBmb3JtIGRhdGEsIGFzIHdlCisgICAgICAgIGNhbm5vdCBkbyB0aGlzIGluIHRoZSBj
YXNlIHdoZXJlIHRoZSBmb3JtIGRhdGEgY29udGFpbnMgYmxvYnMuIE5vdyBoYW5kbGUKKyAgICAg
ICAgdGhlIGJsb2IgY2FzZS4KKworMjAxMS0xMC0wMSAgTWFydGluIFJvYmluc29uICA8bXJvYmlu
c29uQGlnYWxpYS5jb20+CisKICAgICAgICAgbGlic291cC1DUklUSUNBTCAqKjogc291cF9tZXNz
YWdlX2lvX3BhdXNlOiBhc3NlcnRpb24gYGlvICE9IE5VTEwnIGZhaWxlZAogICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjQyNjMKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlSGFuZGxlU291cC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VIYW5kbGVT
b3VwLmNwcAppbmRleCA0NmRiMGNkYWQwODMwNmZhMzVlOTdmMTE3OWM3NzU1YmJkNmEyYmZmLi5k
Y2QyM2IxMDA1MzAxMDE5MTlkOWM1MmM5NmYyNTA4OTQ2ZTI5NmVmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VIYW5kbGVTb3VwLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL3NvdXAvUmVzb3VyY2VIYW5kbGVT
b3VwLmNwcApAQCAtNTgsNiArNTgsMTIgQEAKICNpbmNsdWRlIDx1bmlzdGQuaD4KICNpbmNsdWRl
IDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAKKyNpZiBFTkFCTEUoQkxPQikKKyNpbmNsdWRlICJCbG9i
RGF0YS5oIgorI2luY2x1ZGUgIkJsb2JSZWdpc3RyeUltcGwuaCIKKyNpbmNsdWRlICJCbG9iU3Rv
cmFnZURhdGEuaCIKKyNlbmRpZgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICNkZWZpbmUgUkVB
RF9CVUZGRVJfU0laRSA4MTkyCkBAIC01MTQsMjAgKzUyMCw4MyBAQCBzdGF0aWMgdm9pZCBzZW5k
UmVxdWVzdENhbGxiYWNrKEdPYmplY3QqIHNvdXJjZSwgR0FzeW5jUmVzdWx0KiByZXMsIGdwb2lu
dGVyIHVzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR19QUklPUklUWV9ERUZBVUxU
LCBkLT5tX2NhbmNlbGxhYmxlLmdldCgpLCByZWFkQ2FsbGJhY2ssIDApOwogfQogCi1zdGF0aWMg
Ym9vbCBhZGRGb3JtRWxlbWVudHNUb1NvdXBNZXNzYWdlKFNvdXBNZXNzYWdlKiBtZXNzYWdlLCBj
b25zdCBjaGFyKiBjb250ZW50VHlwZSwgRm9ybURhdGEqIGh0dHBCb2R5LCB1bnNpZ25lZCBsb25n
JiB0b3RhbEJvZHlTaXplKQorc3RhdGljIGJvb2wgYWRkRmlsZVRvU291cE1lc3NhZ2VCb2R5KFNv
dXBNZXNzYWdlKiBtZXNzYWdlLCBjb25zdCBTdHJpbmcmIGZpbGVOYW1lU3RyaW5nLCBzaXplX3Qg
b2Zmc2V0LCBzaXplX3QgbGVuZ3RoVG9TZW5kLCB1bnNpZ25lZCBsb25nJiB0b3RhbEJvZHlTaXpl
KQogewotICAgIHNpemVfdCBudW1FbGVtZW50cyA9IGh0dHBCb2R5LT5lbGVtZW50cygpLnNpemUo
KTsKLSAgICBpZiAobnVtRWxlbWVudHMgPCAyKSB7IC8vIE5vIGZpbGUgdXBsb2FkIGlzIHRoZSBt
b3N0IGNvbW1vbiBjYXNlLgotICAgICAgICBWZWN0b3I8Y2hhcj4gYm9keTsKLSAgICAgICAgaHR0
cEJvZHktPmZsYXR0ZW4oYm9keSk7Ci0gICAgICAgIHRvdGFsQm9keVNpemUgPSBib2R5LnNpemUo
KTsKLSAgICAgICAgc291cF9tZXNzYWdlX3NldF9yZXF1ZXN0KG1lc3NhZ2UsIGNvbnRlbnRUeXBl
LCBTT1VQX01FTU9SWV9DT1BZLCBib2R5LmRhdGEoKSwgYm9keS5zaXplKCkpOworICAgIC8vIFRo
aXMgdGVjaG5pcXVlIGlzIGluc3BpcmVkIGJ5IGxpYnNvdXAncyBzaW1wbGUtaHR0cGQgdGVzdC4K
KyAgICBHT3duUHRyPEdFcnJvcj4gZXJyb3I7CisgICAgQ1N0cmluZyBmaWxlTmFtZSA9IGZpbGVT
eXN0ZW1SZXByZXNlbnRhdGlvbihmaWxlTmFtZVN0cmluZyk7CisgICAgR01hcHBlZEZpbGUqIGZp
bGVNYXBwaW5nID0gZ19tYXBwZWRfZmlsZV9uZXcoZmlsZU5hbWUuZGF0YSgpLCBmYWxzZSwgJmVy
cm9yLm91dFB0cigpKTsKKyAgICBpZiAoZXJyb3IpCisgICAgICAgIHJldHVybiBmYWxzZTsKKwor
ICAgIGdzaXplIGJ1ZmZlckxlbmd0aCA9IGxlbmd0aFRvU2VuZDsKKyAgICBpZiAoIWxlbmd0aFRv
U2VuZCkKKyAgICAgICAgYnVmZmVyTGVuZ3RoID0gZ19tYXBwZWRfZmlsZV9nZXRfbGVuZ3RoKGZp
bGVNYXBwaW5nKTsKKyAgICB0b3RhbEJvZHlTaXplICs9IGJ1ZmZlckxlbmd0aDsKKworICAgIFNv
dXBCdWZmZXIqIHNvdXBCdWZmZXIgPSBzb3VwX2J1ZmZlcl9uZXdfd2l0aF9vd25lcihnX21hcHBl
ZF9maWxlX2dldF9jb250ZW50cyhmaWxlTWFwcGluZykgKyBvZmZzZXQsCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1ZmZlckxlbmd0aCwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ZmlsZU1hcHBpbmcsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8R0Rlc3Ryb3lOb3RpZnk+KGdfbWFwcGVkX2Zp
bGVfdW5yZWYpKTsKKyAgICBzb3VwX21lc3NhZ2VfYm9keV9hcHBlbmRfYnVmZmVyKG1lc3NhZ2Ut
PnJlcXVlc3RfYm9keSwgc291cEJ1ZmZlcik7CisgICAgc291cF9idWZmZXJfZnJlZShzb3VwQnVm
ZmVyKTsKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworI2lmIEVOQUJMRShCTE9CKQorc3RhdGljIGJv
b2wgYmxvYklzT3V0T2ZEYXRlKGNvbnN0IEJsb2JEYXRhSXRlbSYgYmxvYkl0ZW0pCit7CisgICAg
QVNTRVJUKGJsb2JJdGVtLnR5cGUgPT0gQmxvYkRhdGFJdGVtOjpGaWxlKTsKKyAgICBpZiAoYmxv
Ykl0ZW0uZXhwZWN0ZWRNb2RpZmljYXRpb25UaW1lID09IEJsb2JEYXRhSXRlbTo6ZG9Ob3RDaGVj
a0ZpbGVDaGFuZ2UpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIHRpbWVfdCBmaWxlTW9k
aWZpY2F0aW9uVGltZTsKKyAgICBpZiAoIWdldEZpbGVNb2RpZmljYXRpb25UaW1lKGJsb2JJdGVt
LnBhdGgsIGZpbGVNb2RpZmljYXRpb25UaW1lKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAg
ICByZXR1cm4gZmlsZU1vZGlmaWNhdGlvblRpbWUgIT0gc3RhdGljX2Nhc3Q8dGltZV90PihibG9i
SXRlbS5leHBlY3RlZE1vZGlmaWNhdGlvblRpbWUpOworfQorCitzdGF0aWMgYm9vbCBhZGRFbmNv
ZGVkQmxvYkl0ZW1Ub1NvdXBNZXNzYWdlQm9keShTb3VwTWVzc2FnZSogbWVzc2FnZSwgY29uc3Qg
QmxvYkRhdGFJdGVtJiBibG9iSXRlbSwgdW5zaWduZWQgbG9uZyYgdG90YWxCb2R5U2l6ZSkKK3sK
KyAgICBpZiAoYmxvYkl0ZW0udHlwZSA9PSBCbG9iRGF0YUl0ZW06OkRhdGEpIHsKKyAgICAgICAg
dG90YWxCb2R5U2l6ZSArPSBibG9iSXRlbS5sZW5ndGg7CisgICAgICAgIHNvdXBfbWVzc2FnZV9i
b2R5X2FwcGVuZChtZXNzYWdlLT5yZXF1ZXN0X2JvZHksIFNPVVBfTUVNT1JZX1RFTVBPUkFSWSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2JJdGVtLmRhdGEtPmRhdGEoKSAr
IGJsb2JJdGVtLm9mZnNldCwgYmxvYkl0ZW0ubGVuZ3RoKTsKICAgICAgICAgcmV0dXJuIHRydWU7
CiAgICAgfQogCisgICAgQVNTRVJUKGJsb2JJdGVtLnR5cGUgPT0gQmxvYkRhdGFJdGVtOjpGaWxl
KTsKKyAgICBpZiAoYmxvYklzT3V0T2ZEYXRlKGJsb2JJdGVtKSkKKyAgICAgICAgcmV0dXJuIGZh
bHNlOworCisgICAgcmV0dXJuIGFkZEZpbGVUb1NvdXBNZXNzYWdlQm9keShtZXNzYWdlICwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2JJdGVtLnBhdGgsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9iSXRlbS5vZmZzZXQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBibG9iSXRlbS5sZW5ndGggPT0gQmxvYkRhdGFJdGVt
Ojp0b0VuZE9mRmlsZSA/IDAgOiBibG9iSXRlbS5sZW5ndGgsCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB0b3RhbEJvZHlTaXplKTsKK30KKworc3RhdGljIGJvb2wgYWRkRW5j
b2RlZEJsb2JUb1NvdXBNZXNzYWdlQm9keShTb3VwTWVzc2FnZSogbWVzc2FnZSwgY29uc3QgRm9y
bURhdGFFbGVtZW50JiBlbGVtZW50LCB1bnNpZ25lZCBsb25nJiB0b3RhbEJvZHlTaXplKQorewor
ICAgIFJlZlB0cjxCbG9iU3RvcmFnZURhdGE+IGJsb2JEYXRhID0gc3RhdGljX2Nhc3Q8QmxvYlJl
Z2lzdHJ5SW1wbCY+KGJsb2JSZWdpc3RyeSgpKS5nZXRCbG9iRGF0YUZyb21VUkwoS1VSTChQYXJz
ZWRVUkxTdHJpbmcsIGVsZW1lbnQubV9ibG9iVVJMKSk7CisgICAgaWYgKCFibG9iRGF0YSkKKyAg
ICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IGJsb2JEYXRh
LT5pdGVtcygpLnNpemUoKTsgKytpKQorICAgICAgICBpZiAoIWFkZEVuY29kZWRCbG9iSXRlbVRv
U291cE1lc3NhZ2VCb2R5KG1lc3NhZ2UsIGJsb2JEYXRhLT5pdGVtcygpW2ldLCB0b3RhbEJvZHlT
aXplKSkKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIHJldHVybiB0cnVlOworfQor
I2VuZGlmIC8vIEVOQUJMRShCTE9CKQorCitzdGF0aWMgYm9vbCBhZGRGb3JtRWxlbWVudHNUb1Nv
dXBNZXNzYWdlKFNvdXBNZXNzYWdlKiBtZXNzYWdlLCBjb25zdCBjaGFyKiBjb250ZW50VHlwZSwg
Rm9ybURhdGEqIGh0dHBCb2R5LCB1bnNpZ25lZCBsb25nJiB0b3RhbEJvZHlTaXplKQorewogICAg
IC8vIFdlIGhhdmUgbW9yZSB0aGFuIG9uZSBlbGVtZW50IHRvIHVwbG9hZCwgYW5kIHNvbWUgbWF5
IGJlIGxhcmdlIGZpbGVzLAogICAgIC8vIHdoaWNoIHdlIHdpbGwgd2FudCB0byBtbWFwIGluc3Rl
YWQgb2YgY29weWluZyBpbnRvIG1lbW9yeQogICAgIHNvdXBfbWVzc2FnZV9ib2R5X3NldF9hY2N1
bXVsYXRlKG1lc3NhZ2UtPnJlcXVlc3RfYm9keSwgRkFMU0UpOworICAgIHNpemVfdCBudW1FbGVt
ZW50cyA9IGh0dHBCb2R5LT5lbGVtZW50cygpLnNpemUoKTsKICAgICBmb3IgKHNpemVfdCBpID0g
MDsgaSA8IG51bUVsZW1lbnRzOyBpKyspIHsKICAgICAgICAgY29uc3QgRm9ybURhdGFFbGVtZW50
JiBlbGVtZW50ID0gaHR0cEJvZHktPmVsZW1lbnRzKClbaV07CiAKQEAgLTUzOCwyMiArNjA3LDIy
IEBAIHN0YXRpYyBib29sIGFkZEZvcm1FbGVtZW50c1RvU291cE1lc3NhZ2UoU291cE1lc3NhZ2Uq
IG1lc3NhZ2UsIGNvbnN0IGNoYXIqIGNvbnRlCiAgICAgICAgICAgICBjb250aW51ZTsKICAgICAg
ICAgfQogCi0gICAgICAgIC8vIFRoaXMgdGVjaG5pcXVlIGlzIGluc3BpcmVkIGJ5IGxpYnNvdXAn
cyBzaW1wbGUtaHR0cGQgdGVzdC4KLSAgICAgICAgR093blB0cjxHRXJyb3I+IGVycm9yOwotICAg
ICAgICBDU3RyaW5nIGZpbGVOYW1lID0gZmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uKGVsZW1lbnQu
bV9maWxlbmFtZSk7Ci0gICAgICAgIEdNYXBwZWRGaWxlKiBmaWxlTWFwcGluZyA9IGdfbWFwcGVk
X2ZpbGVfbmV3KGZpbGVOYW1lLmRhdGEoKSwgZmFsc2UsICZlcnJvci5vdXRQdHIoKSk7Ci0gICAg
ICAgIGlmIChlcnJvcikKLSAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgaWYgKGVs
ZW1lbnQubV90eXBlID09IEZvcm1EYXRhRWxlbWVudDo6ZW5jb2RlZEZpbGUpIHsKKyAgICAgICAg
ICAgIGlmICghYWRkRmlsZVRvU291cE1lc3NhZ2VCb2R5KG1lc3NhZ2UgLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50Lm1fZmlsZW5hbWUsCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAgLyogb2Zmc2V0ICovLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwIC8qIGxlbmd0aFRvU2VuZCAqLywK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG90YWxCb2R5U2l6ZSkp
CisgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgY29udGludWU7Cisg
ICAgICAgIH0KIAotICAgICAgICBnc2l6ZSBtYXBwZWRGaWxlU2l6ZSA9IGdfbWFwcGVkX2ZpbGVf
Z2V0X2xlbmd0aChmaWxlTWFwcGluZyk7Ci0gICAgICAgIHRvdGFsQm9keVNpemUgKz0gbWFwcGVk
RmlsZVNpemU7Ci0gICAgICAgIFNvdXBCdWZmZXIqIHNvdXBCdWZmZXIgPSBzb3VwX2J1ZmZlcl9u
ZXdfd2l0aF9vd25lcihnX21hcHBlZF9maWxlX2dldF9jb250ZW50cyhmaWxlTWFwcGluZyksCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBtYXBwZWRGaWxlU2l6ZSwgZmlsZU1hcHBpbmcsCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWludGVycHJldF9jYXN0PEdEZXN0
cm95Tm90aWZ5PihnX21hcHBlZF9maWxlX3VucmVmKSk7Ci0gICAgICAgIHNvdXBfbWVzc2FnZV9i
b2R5X2FwcGVuZF9idWZmZXIobWVzc2FnZS0+cmVxdWVzdF9ib2R5LCBzb3VwQnVmZmVyKTsKLSAg
ICAgICAgc291cF9idWZmZXJfZnJlZShzb3VwQnVmZmVyKTsKKyNpZiBFTkFCTEUoQkxPQikKKyAg
ICAgICAgQVNTRVJUKGVsZW1lbnQubV90eXBlID09IEZvcm1EYXRhRWxlbWVudDo6ZW5jb2RlZEJs
b2IpOworICAgICAgICBpZiAoIWFkZEVuY29kZWRCbG9iVG9Tb3VwTWVzc2FnZUJvZHkobWVzc2Fn
ZSwgZWxlbWVudCwgdG90YWxCb2R5U2l6ZSkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7Cisj
ZW5kaWYKICAgICB9Ci0KICAgICByZXR1cm4gdHJ1ZTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>109445</attachid>
            <date>2011-10-02 23:48:45 -0700</date>
            <delta_ts>2011-10-11 19:28:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-52092-20111002234844.patch</filename>
            <type>text/plain</type>
            <size>11297</size>
            <attacher name="Martin Robinson">mrobinson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTYzNzgKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA4YzgyZTg3ODg3NDI1ZmMzMzA5M2Vh
Nzk0Njc2NWJhY2VlNGNjN2VhLi5mYWJhZDFjMmNmMjliMDc3M2I3NjkzY2FmMmI3MzJlNjNiZWEz
ZDE2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMTEtMTAtMDEgIE1hcnRpbiBSb2JpbnNvbiAg
PG1yb2JpbnNvbkBpZ2FsaWEuY29tPgorCisgICAgICAgIFtTb3VwXSBSZXNvdXJjZUhhbmRsZVNv
dXAgZG9lcyBub3QgaGFuZGxlIGVuY29kZWRCbG9iRGF0YQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwOTIKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOiBVbnNraXAg
dGVzdHMgd2hpY2ggYXJlIG5vdyBwYXNzaW5nLgorCiAyMDExLTA5LTI5ICBNYXJ0aW4gUm9iaW5z
b24gIDxtcm9iaW5zb25AaWdhbGlhLmNvbT4KIAogICAgICAgICBbRnJlZXR5cGVdIFNvbWUgdGV4
dCBpbiBQbGFuZXQgR05PTUUgcmVuZGVycyBpbiB0aGUgd3JvbmcgcGxhY2UKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
Z3RrL1NraXBwZWQKaW5kZXggYzBhNGRiOTlhNTM5NmJhYzJhYTJkMzE3Nzk4MDEyZTc2Mjk1ODlm
Yy4uZWI4ODM5NzQ0Y2Q2YzRiYWIzMjdlNGJiOGY0YjcxMzRkODJiZWNiZCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vZ3RrL1NraXBwZWQKQEAgLTE4Nyw5ICsxODcsNiBAQCBmYXN0L2Zvcm1zL211bHRpcGxlLWZv
cm0tc3VibWlzc2lvbi1wcm90ZWN0aW9uLW1vdXNlLmh0bWwKICMgVGhpcyB0ZXN0IGNyYXNoZXMg
d2hhdGV2ZXIgdGVzdCBmb2xsb3dzIGl0LiBQZXJoYXBzIGl0J3MgcmVsYXRlZCB0byB0aGUgcHJl
dmlvdXMgZmFpbHVyZS4KIGZhc3QvZG9tL2djLTEwLmh0bWwKIAotIyBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTQyMzQgCi1mYXN0L2ZpbGVzL2FwcGx5LWJsb2ItdXJs
LXRvLXhoci5odG1sCi0KICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTUwNzQ0CiBpbnNwZWN0b3IvZGVidWdnZXIvb3Blbi1jbG9zZS1vcGVuLmh0bWwKIApAQCAtMzc1
LDEwICszNzIsNyBAQCBodHRwL3Rlc3RzL21pc2Mvd2VidGltaW5nLXR3by1yZWRpcmVjdHMucGhw
CiAjIEZpbGVTeXN0ZW0gQVBJIGlzIG5vdCBzdXBwb3J0ZWQuCiBmYXN0L2ZpbGVzeXN0ZW0KIGh0
dHAvdGVzdHMvZmlsZXN5c3RlbQotaHR0cC90ZXN0cy9sb2NhbC9maWxlYXBpCiBodHRwL3Rlc3Rz
L3NlY3VyaXR5L2ZpbGVzeXN0ZW0taWZyYW1lLWZyb20tcmVtb3RlLmh0bWwKLWh0dHAvdGVzdHMv
d2Vic29ja2V0L3Rlc3RzL2h5Ymkvc2VuZC1maWxlLWJsb2IuaHRtbAotaHR0cC90ZXN0cy93ZWJz
b2NrZXQvdGVzdHMvaHliaS9zZW5kLWZpbGUtYmxvYi1mYWlsLmh0bWwKIAogIyBSZXF1aXJlcyBX
ZWJQIHN1cHBvcnQuCiBmYXN0L2ltYWdlcy93ZWJwLWltYWdlLWRlY29kaW5nLmh0bWwKQEAgLTEy
OTYsMTMgKzEyOTAsNiBAQCBodHRwL3Rlc3RzL3NlY3VyaXR5L2RyYWctZHJvcC1zYW1lLXVuaXF1
ZS1vcmlnaW4uaHRtbAogIyBTaG91bGQgcmVjaGVjayBpdCB3aGVuIHRoZSBhYm92ZSBidWcgaXMg
Zml4ZWQuCiBmYXN0L2ZpbGVzL3dvcmtlcnMvd29ya2VyLWFwcGx5LWJsb2ItdXJsLXRvLXhoci5o
dG1sCiAKLSMgW1NvdXBdIFJlc291cmNlSGFuZGxlU291cCBkb2VzIG5vdCBoYW5kbGUgZW5jb2Rl
ZEJsb2JEYXRhCi0jIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MjA5
MgotaHR0cC90ZXN0cy9sb2NhbC9ibG9iL3NlbmQtZGF0YS1ibG9iLmh0bWwKLWh0dHAvdGVzdHMv
bG9jYWwvYmxvYi9zZW5kLWh5YnJpZC1ibG9iLmh0bWwKLWh0dHAvdGVzdHMvbG9jYWwvYmxvYi9z
ZW5kLXNsaWNlZC1kYXRhLWJsb2IuaHRtbAotaHR0cC90ZXN0cy9sb2NhbC9mb3JtZGF0YS9zZW5k
LWZvcm0tZGF0YS13aXRoLXNsaWNlZC1maWxlLmh0bWwKLQogIyBbR1RLXSBEcmFnZ2luZyBpbWFn
ZXMgYW5kIGxpbmtzIHJlc3VsdHMgaW4gYSBEYXRhVHJhbnNmZXIgb2JqZWN0IGNvbnRhaW5pbmcg
YSBub24tZW1wdHkgZmlsZXMgYXJyYXkKICMgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTUyMDk0CiBlZGl0aW5nL3Bhc3RlYm9hcmQvZmlsZXMtZHVyaW5nLXBhZ2UtZHJh
Z3MuaHRtbApAQCAtMTY2NSwzICsxNjUyLDggQEAgY2FudmFzL3BoaWxpcC90ZXN0cy8yZC5kcmF3
SW1hZ2Uub3V0c2lkZXNvdXJjZS5odG1sCiAjIGh0dHAvdGVzdHMvbXVsdGlwYXJ0L3N0b3AtY3Jh
c2guaHRtbCBmYWlscyBvbiBHVEsgYW5kIFF0CiAjIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD02ODk3OQogaHR0cC90ZXN0cy9tdWx0aXBhcnQvc3RvcC1jcmFzaC5odG1s
CisKKyMgU29tZSB0ZXN0cyBmYWlsIHdpdGggICJGQUlMIFVuZXhwZWN0ZWQgcmVzcG9uc2UgZGF0
YSByZWNlaXZlZDogV3JvbmcgbWV0aG9kOiBHRVQiCisjIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD02OTIxOQoraHR0cC90ZXN0cy9sb2NhbC9maWxlYXBpL3NlbmQtc2xp
Y2VkLWRyYWdnZWQtZmlsZS5odG1sICAKK2h0dHAvdGVzdHMvbG9jYWwvYmxvYi9zZW5kLWh5YnJp
ZC1ibG9iLmh0bWwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBlOWJmZGJmYjM5Y2M3NDk5ZmZhNmE5NTRiY2JlMzgy
ZmY4MWM4M2E0Li4wMGZhMGE4MzhhMmFiMTc5N2VkZTc1YzliNWQ0YWM0MzE0MDExNTFlIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nCkBAIC0xLDUgKzEsMjQgQEAKIDIwMTEtMTAtMDEgIE1hcnRpbiBSb2JpbnNvbiAgPG1y
b2JpbnNvbkBpZ2FsaWEuY29tPgogCisgICAgICAgIFtTb3VwXSBSZXNvdXJjZUhhbmRsZVNvdXAg
ZG9lcyBub3QgaGFuZGxlIGVuY29kZWRCbG9iRGF0YQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTIwOTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgc3VwcG9ydCBmb3Igc2VuZGluZyBlbmNvZGVkIGJs
b2IgZGF0YSBkdXJpbmcgcmVxdWVzdHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9uZXR3b3JrL3Nv
dXAvUmVzb3VyY2VIYW5kbGVTb3VwLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmFkZEZpbGVUb1Nv
dXBNZXNzYWdlQm9keSk6IEFkZGVkIHRoaXMgaGVscGVyLgorICAgICAgICAoV2ViQ29yZTo6Ymxv
YklzT3V0T2ZEYXRlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjphZGRFbmNvZGVkQmxvYkl0
ZW1Ub1NvdXBNZXNzYWdlQm9keSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6YWRkRW5jb2Rl
ZEJsb2JUb1NvdXBNZXNzYWdlQm9keSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6YWRkRm9y
bUVsZW1lbnRzVG9Tb3VwTWVzc2FnZSk6IE5vIGxvbmdlciBmbGF0dGVuIGZvcm0gZGF0YSwgYXMg
d2UKKyAgICAgICAgY2Fubm90IGRvIHRoaXMgaW4gdGhlIGNhc2Ugd2hlcmUgdGhlIGZvcm0gZGF0
YSBjb250YWlucyBibG9icy4gTm93IGhhbmRsZQorICAgICAgICB0aGUgYmxvYiBjYXNlLgorICAg
ICAgICAoV2ViQ29yZTo6bG9hZFJlc291cmNlU3luY2hyb25vdXNseSk6IEFkZCBibG9iIHN1cHBv
cnQgZm9yIHN5bmNocm9ub3VzIGxvYWRpbmcuCisKKzIwMTEtMTAtMDEgIE1hcnRpbiBSb2JpbnNv
biAgPG1yb2JpbnNvbkBpZ2FsaWEuY29tPgorCiAgICAgICAgIGxpYnNvdXAtQ1JJVElDQUwgKio6
IHNvdXBfbWVzc2FnZV9pb19wYXVzZTogYXNzZXJ0aW9uIGBpbyAhPSBOVUxMJyBmYWlsZWQKICAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY0MjYzCiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvc291cC9SZXNvdXJjZUhh
bmRsZVNvdXAuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291
cmNlSGFuZGxlU291cC5jcHAKaW5kZXggNDZkYjBjZGFkMDgzMDZmYTM1ZTk3ZjExNzljNzc1NWJi
ZDZhMmJmZi4uYTFiZWRmZmE3ZWFhODcwM2I0YWI4NTQ3OWQ3YjRlYzFlMGJjMzM2MyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlSGFuZGxl
U291cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291
cmNlSGFuZGxlU291cC5jcHAKQEAgLTU4LDYgKzU4LDEyIEBACiAjaW5jbHVkZSA8dW5pc3RkLmg+
CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogCisjaWYgRU5BQkxFKEJMT0IpCisjaW5j
bHVkZSAiQmxvYkRhdGEuaCIKKyNpbmNsdWRlICJCbG9iUmVnaXN0cnlJbXBsLmgiCisjaW5jbHVk
ZSAiQmxvYlN0b3JhZ2VEYXRhLmgiCisjZW5kaWYKKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiAj
ZGVmaW5lIFJFQURfQlVGRkVSX1NJWkUgODE5MgpAQCAtNTE0LDIwICs1MjAsODMgQEAgc3RhdGlj
IHZvaWQgc2VuZFJlcXVlc3RDYWxsYmFjayhHT2JqZWN0KiBzb3VyY2UsIEdBc3luY1Jlc3VsdCog
cmVzLCBncG9pbnRlciB1c2UKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdfUFJJT1JJ
VFlfREVGQVVMVCwgZC0+bV9jYW5jZWxsYWJsZS5nZXQoKSwgcmVhZENhbGxiYWNrLCAwKTsKIH0K
IAotc3RhdGljIGJvb2wgYWRkRm9ybUVsZW1lbnRzVG9Tb3VwTWVzc2FnZShTb3VwTWVzc2FnZSog
bWVzc2FnZSwgY29uc3QgY2hhciogY29udGVudFR5cGUsIEZvcm1EYXRhKiBodHRwQm9keSwgdW5z
aWduZWQgbG9uZyYgdG90YWxCb2R5U2l6ZSkKK3N0YXRpYyBib29sIGFkZEZpbGVUb1NvdXBNZXNz
YWdlQm9keShTb3VwTWVzc2FnZSogbWVzc2FnZSwgY29uc3QgU3RyaW5nJiBmaWxlTmFtZVN0cmlu
Zywgc2l6ZV90IG9mZnNldCwgc2l6ZV90IGxlbmd0aFRvU2VuZCwgdW5zaWduZWQgbG9uZyYgdG90
YWxCb2R5U2l6ZSkKIHsKLSAgICBzaXplX3QgbnVtRWxlbWVudHMgPSBodHRwQm9keS0+ZWxlbWVu
dHMoKS5zaXplKCk7Ci0gICAgaWYgKG51bUVsZW1lbnRzIDwgMikgeyAvLyBObyBmaWxlIHVwbG9h
ZCBpcyB0aGUgbW9zdCBjb21tb24gY2FzZS4KLSAgICAgICAgVmVjdG9yPGNoYXI+IGJvZHk7Ci0g
ICAgICAgIGh0dHBCb2R5LT5mbGF0dGVuKGJvZHkpOwotICAgICAgICB0b3RhbEJvZHlTaXplID0g
Ym9keS5zaXplKCk7Ci0gICAgICAgIHNvdXBfbWVzc2FnZV9zZXRfcmVxdWVzdChtZXNzYWdlLCBj
b250ZW50VHlwZSwgU09VUF9NRU1PUllfQ09QWSwgYm9keS5kYXRhKCksIGJvZHkuc2l6ZSgpKTsK
KyAgICAvLyBUaGlzIHRlY2huaXF1ZSBpcyBpbnNwaXJlZCBieSBsaWJzb3VwJ3Mgc2ltcGxlLWh0
dHBkIHRlc3QuCisgICAgR093blB0cjxHRXJyb3I+IGVycm9yOworICAgIENTdHJpbmcgZmlsZU5h
bWUgPSBmaWxlU3lzdGVtUmVwcmVzZW50YXRpb24oZmlsZU5hbWVTdHJpbmcpOworICAgIEdNYXBw
ZWRGaWxlKiBmaWxlTWFwcGluZyA9IGdfbWFwcGVkX2ZpbGVfbmV3KGZpbGVOYW1lLmRhdGEoKSwg
ZmFsc2UsICZlcnJvci5vdXRQdHIoKSk7CisgICAgaWYgKGVycm9yKQorICAgICAgICByZXR1cm4g
ZmFsc2U7CisKKyAgICBnc2l6ZSBidWZmZXJMZW5ndGggPSBsZW5ndGhUb1NlbmQ7CisgICAgaWYg
KCFsZW5ndGhUb1NlbmQpCisgICAgICAgIGJ1ZmZlckxlbmd0aCA9IGdfbWFwcGVkX2ZpbGVfZ2V0
X2xlbmd0aChmaWxlTWFwcGluZyk7CisgICAgdG90YWxCb2R5U2l6ZSArPSBidWZmZXJMZW5ndGg7
CisKKyAgICBTb3VwQnVmZmVyKiBzb3VwQnVmZmVyID0gc291cF9idWZmZXJfbmV3X3dpdGhfb3du
ZXIoZ19tYXBwZWRfZmlsZV9nZXRfY29udGVudHMoZmlsZU1hcHBpbmcpICsgb2Zmc2V0LAorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWZm
ZXJMZW5ndGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIGZpbGVNYXBwaW5nLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICByZWludGVycHJldF9jYXN0PEdEZXN0cm95Tm90aWZ5Pihn
X21hcHBlZF9maWxlX3VucmVmKSk7CisgICAgc291cF9tZXNzYWdlX2JvZHlfYXBwZW5kX2J1ZmZl
cihtZXNzYWdlLT5yZXF1ZXN0X2JvZHksIHNvdXBCdWZmZXIpOworICAgIHNvdXBfYnVmZmVyX2Zy
ZWUoc291cEJ1ZmZlcik7CisgICAgcmV0dXJuIHRydWU7Cit9CisKKyNpZiBFTkFCTEUoQkxPQikK
K3N0YXRpYyBib29sIGJsb2JJc091dE9mRGF0ZShjb25zdCBCbG9iRGF0YUl0ZW0mIGJsb2JJdGVt
KQoreworICAgIEFTU0VSVChibG9iSXRlbS50eXBlID09IEJsb2JEYXRhSXRlbTo6RmlsZSk7Cisg
ICAgaWYgKGJsb2JJdGVtLmV4cGVjdGVkTW9kaWZpY2F0aW9uVGltZSA9PSBCbG9iRGF0YUl0ZW06
OmRvTm90Q2hlY2tGaWxlQ2hhbmdlKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICB0aW1l
X3QgZmlsZU1vZGlmaWNhdGlvblRpbWU7CisgICAgaWYgKCFnZXRGaWxlTW9kaWZpY2F0aW9uVGlt
ZShibG9iSXRlbS5wYXRoLCBmaWxlTW9kaWZpY2F0aW9uVGltZSkpCisgICAgICAgIHJldHVybiB0
cnVlOworCisgICAgcmV0dXJuIGZpbGVNb2RpZmljYXRpb25UaW1lICE9IHN0YXRpY19jYXN0PHRp
bWVfdD4oYmxvYkl0ZW0uZXhwZWN0ZWRNb2RpZmljYXRpb25UaW1lKTsKK30KKworc3RhdGljIGJv
b2wgYWRkRW5jb2RlZEJsb2JJdGVtVG9Tb3VwTWVzc2FnZUJvZHkoU291cE1lc3NhZ2UqIG1lc3Nh
Z2UsIGNvbnN0IEJsb2JEYXRhSXRlbSYgYmxvYkl0ZW0sIHVuc2lnbmVkIGxvbmcmIHRvdGFsQm9k
eVNpemUpCit7CisgICAgaWYgKGJsb2JJdGVtLnR5cGUgPT0gQmxvYkRhdGFJdGVtOjpEYXRhKSB7
CisgICAgICAgIHRvdGFsQm9keVNpemUgKz0gYmxvYkl0ZW0ubGVuZ3RoOworICAgICAgICBzb3Vw
X21lc3NhZ2VfYm9keV9hcHBlbmQobWVzc2FnZS0+cmVxdWVzdF9ib2R5LCBTT1VQX01FTU9SWV9U
RU1QT1JBUlksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9iSXRlbS5kYXRh
LT5kYXRhKCkgKyBibG9iSXRlbS5vZmZzZXQsIGJsb2JJdGVtLmxlbmd0aCk7CiAgICAgICAgIHJl
dHVybiB0cnVlOwogICAgIH0KIAorICAgIEFTU0VSVChibG9iSXRlbS50eXBlID09IEJsb2JEYXRh
SXRlbTo6RmlsZSk7CisgICAgaWYgKGJsb2JJc091dE9mRGF0ZShibG9iSXRlbSkpCisgICAgICAg
IHJldHVybiBmYWxzZTsKKworICAgIHJldHVybiBhZGRGaWxlVG9Tb3VwTWVzc2FnZUJvZHkobWVz
c2FnZSAsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9iSXRlbS5wYXRo
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvYkl0ZW0ub2Zmc2V0LAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvYkl0ZW0ubGVuZ3RoID09IEJs
b2JEYXRhSXRlbTo6dG9FbmRPZkZpbGUgPyAwIDogYmxvYkl0ZW0ubGVuZ3RoLAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgdG90YWxCb2R5U2l6ZSk7Cit9CisKK3N0YXRpYyBi
b29sIGFkZEVuY29kZWRCbG9iVG9Tb3VwTWVzc2FnZUJvZHkoU291cE1lc3NhZ2UqIG1lc3NhZ2Us
IGNvbnN0IEZvcm1EYXRhRWxlbWVudCYgZWxlbWVudCwgdW5zaWduZWQgbG9uZyYgdG90YWxCb2R5
U2l6ZSkKK3sKKyAgICBSZWZQdHI8QmxvYlN0b3JhZ2VEYXRhPiBibG9iRGF0YSA9IHN0YXRpY19j
YXN0PEJsb2JSZWdpc3RyeUltcGwmPihibG9iUmVnaXN0cnkoKSkuZ2V0QmxvYkRhdGFGcm9tVVJM
KEtVUkwoUGFyc2VkVVJMU3RyaW5nLCBlbGVtZW50Lm1fYmxvYlVSTCkpOworICAgIGlmICghYmxv
YkRhdGEpCisgICAgICAgIHJldHVybiB0cnVlOworCisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkg
PCBibG9iRGF0YS0+aXRlbXMoKS5zaXplKCk7ICsraSkKKyAgICAgICAgaWYgKCFhZGRFbmNvZGVk
QmxvYkl0ZW1Ub1NvdXBNZXNzYWdlQm9keShtZXNzYWdlLCBibG9iRGF0YS0+aXRlbXMoKVtpXSwg
dG90YWxCb2R5U2l6ZSkpCisgICAgICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICByZXR1cm4g
dHJ1ZTsKK30KKyNlbmRpZiAvLyBFTkFCTEUoQkxPQikKKworc3RhdGljIGJvb2wgYWRkRm9ybUVs
ZW1lbnRzVG9Tb3VwTWVzc2FnZShTb3VwTWVzc2FnZSogbWVzc2FnZSwgY29uc3QgY2hhciogY29u
dGVudFR5cGUsIEZvcm1EYXRhKiBodHRwQm9keSwgdW5zaWduZWQgbG9uZyYgdG90YWxCb2R5U2l6
ZSkKK3sKICAgICAvLyBXZSBoYXZlIG1vcmUgdGhhbiBvbmUgZWxlbWVudCB0byB1cGxvYWQsIGFu
ZCBzb21lIG1heSBiZSBsYXJnZSBmaWxlcywKICAgICAvLyB3aGljaCB3ZSB3aWxsIHdhbnQgdG8g
bW1hcCBpbnN0ZWFkIG9mIGNvcHlpbmcgaW50byBtZW1vcnkKICAgICBzb3VwX21lc3NhZ2VfYm9k
eV9zZXRfYWNjdW11bGF0ZShtZXNzYWdlLT5yZXF1ZXN0X2JvZHksIEZBTFNFKTsKKyAgICBzaXpl
X3QgbnVtRWxlbWVudHMgPSBodHRwQm9keS0+ZWxlbWVudHMoKS5zaXplKCk7CiAgICAgZm9yIChz
aXplX3QgaSA9IDA7IGkgPCBudW1FbGVtZW50czsgaSsrKSB7CiAgICAgICAgIGNvbnN0IEZvcm1E
YXRhRWxlbWVudCYgZWxlbWVudCA9IGh0dHBCb2R5LT5lbGVtZW50cygpW2ldOwogCkBAIC01Mzgs
MjIgKzYwNywyMiBAQCBzdGF0aWMgYm9vbCBhZGRGb3JtRWxlbWVudHNUb1NvdXBNZXNzYWdlKFNv
dXBNZXNzYWdlKiBtZXNzYWdlLCBjb25zdCBjaGFyKiBjb250ZQogICAgICAgICAgICAgY29udGlu
dWU7CiAgICAgICAgIH0KIAotICAgICAgICAvLyBUaGlzIHRlY2huaXF1ZSBpcyBpbnNwaXJlZCBi
eSBsaWJzb3VwJ3Mgc2ltcGxlLWh0dHBkIHRlc3QuCi0gICAgICAgIEdPd25QdHI8R0Vycm9yPiBl
cnJvcjsKLSAgICAgICAgQ1N0cmluZyBmaWxlTmFtZSA9IGZpbGVTeXN0ZW1SZXByZXNlbnRhdGlv
bihlbGVtZW50Lm1fZmlsZW5hbWUpOwotICAgICAgICBHTWFwcGVkRmlsZSogZmlsZU1hcHBpbmcg
PSBnX21hcHBlZF9maWxlX25ldyhmaWxlTmFtZS5kYXRhKCksIGZhbHNlLCAmZXJyb3Iub3V0UHRy
KCkpOwotICAgICAgICBpZiAoZXJyb3IpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7CisgICAg
ICAgIGlmIChlbGVtZW50Lm1fdHlwZSA9PSBGb3JtRGF0YUVsZW1lbnQ6OmVuY29kZWRGaWxlKSB7
CisgICAgICAgICAgICBpZiAoIWFkZEZpbGVUb1NvdXBNZXNzYWdlQm9keShtZXNzYWdlICwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5tX2ZpbGVuYW1l
LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwIC8qIG9mZnNldCAq
LywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCAvKiBsZW5ndGhU
b1NlbmQgKi8sCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFs
Qm9keVNpemUpKQorICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgICAgIGNv
bnRpbnVlOworICAgICAgICB9CiAKLSAgICAgICAgZ3NpemUgbWFwcGVkRmlsZVNpemUgPSBnX21h
cHBlZF9maWxlX2dldF9sZW5ndGgoZmlsZU1hcHBpbmcpOwotICAgICAgICB0b3RhbEJvZHlTaXpl
ICs9IG1hcHBlZEZpbGVTaXplOwotICAgICAgICBTb3VwQnVmZmVyKiBzb3VwQnVmZmVyID0gc291
cF9idWZmZXJfbmV3X3dpdGhfb3duZXIoZ19tYXBwZWRfZmlsZV9nZXRfY29udGVudHMoZmlsZU1h
cHBpbmcpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbWFwcGVkRmlsZVNpemUsIGZpbGVNYXBwaW5nLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVpbnRlcnByZXRf
Y2FzdDxHRGVzdHJveU5vdGlmeT4oZ19tYXBwZWRfZmlsZV91bnJlZikpOwotICAgICAgICBzb3Vw
X21lc3NhZ2VfYm9keV9hcHBlbmRfYnVmZmVyKG1lc3NhZ2UtPnJlcXVlc3RfYm9keSwgc291cEJ1
ZmZlcik7Ci0gICAgICAgIHNvdXBfYnVmZmVyX2ZyZWUoc291cEJ1ZmZlcik7CisjaWYgRU5BQkxF
KEJMT0IpCisgICAgICAgIEFTU0VSVChlbGVtZW50Lm1fdHlwZSA9PSBGb3JtRGF0YUVsZW1lbnQ6
OmVuY29kZWRCbG9iKTsKKyAgICAgICAgaWYgKCFhZGRFbmNvZGVkQmxvYlRvU291cE1lc3NhZ2VC
b2R5KG1lc3NhZ2UsIGVsZW1lbnQsIHRvdGFsQm9keVNpemUpKQorICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOworI2VuZGlmCiAgICAgfQotCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKQEAgLTczMCw2
ICs3OTksMTMgQEAgYm9vbCBSZXNvdXJjZUhhbmRsZTo6d2lsbExvYWRGcm9tQ2FjaGUoUmVzb3Vy
Y2VSZXF1ZXN0JiwgRnJhbWUqKQogCiB2b2lkIFJlc291cmNlSGFuZGxlOjpsb2FkUmVzb3VyY2VT
eW5jaHJvbm91c2x5KE5ldHdvcmtpbmdDb250ZXh0KiBjb250ZXh0LCBjb25zdCBSZXNvdXJjZVJl
cXVlc3QmIHJlcXVlc3QsIFN0b3JlZENyZWRlbnRpYWxzIC8qc3RvcmVkQ3JlZGVudGlhbHMqLywg
UmVzb3VyY2VFcnJvciYgZXJyb3IsIFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlLCBWZWN0b3I8
Y2hhcj4mIGRhdGEpCiB7CisjaWYgRU5BQkxFKEJMT0IpCisgICAgaWYgKHJlcXVlc3QudXJsKCku
cHJvdG9jb2xJcygiYmxvYiIpKSB7CisgICAgICAgIGJsb2JSZWdpc3RyeSgpLmxvYWRSZXNvdXJj
ZVN5bmNocm9ub3VzbHkocmVxdWVzdCwgZXJyb3IsIHJlc3BvbnNlLCBkYXRhKTsKKyAgICAgICAg
cmV0dXJuOworICAgIH0KKyNlbmRpZgorCiAgICAgV2ViQ29yZVN5bmNocm9ub3VzTG9hZGVyIHN5
bmNMb2FkZXIoZXJyb3IsIHJlc3BvbnNlLCBkYXRhKTsKICAgICBSZWZQdHI8UmVzb3VyY2VIYW5k
bGU+IGhhbmRsZSA9IGNyZWF0ZShjb250ZXh0LCByZXF1ZXN0LCAmc3luY0xvYWRlciwgZmFsc2Ug
LypkZWZlcnNMb2FkaW5nKi8sIGZhbHNlIC8qc2hvdWxkQ29udGVudFNuaWZmKi8pOwogICAgIGlm
ICghaGFuZGxlKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>