<?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>95861</bug_id>
          
          <creation_ts>2012-09-05 09:24:56 -0700</creation_ts>
          <short_desc>[Chromium] Define new setSharedWorkerRepository function in preparation for removing WebKitPlatformSupport::sharedWorkerRepository()</short_desc>
          <delta_ts>2012-12-11 12:50:10 -0800</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 Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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>
          
          <blocked>82948</blocked>
    
    <blocked>85768</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Pilgrim (Google)">pilgrim</reporter>
          <assigned_to name="Mark Pilgrim (Google)">pilgrim</assigned_to>
          <cc>abarth</cc>
    
    <cc>dglazkov</cc>
    
    <cc>fishd</cc>
    
    <cc>haraken</cc>
    
    <cc>jamesr</cc>
    
    <cc>tkent+wkapi</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>712128</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Pilgrim (Google)">pilgrim</who>
    <bug_when>2012-09-05 09:24:56 -0700</bug_when>
    <thetext>[Chromium] Define new setSharedWorkerRepository function in preparation for removing WebKitPlatformSupport::sharedWorkerRepository()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>712131</commentid>
    <comment_count>1</comment_count>
      <attachid>162265</attachid>
    <who name="Mark Pilgrim (Google)">pilgrim</who>
    <bug_when>2012-09-05 09:26:06 -0700</bug_when>
    <thetext>Created attachment 162265
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>712133</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Pilgrim (Google)">pilgrim</who>
    <bug_when>2012-09-05 09:26:25 -0700</bug_when>
    <thetext>*** Bug 94481 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>712226</commentid>
    <comment_count>3</comment_count>
      <attachid>162265</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-09-05 10:33:53 -0700</bug_when>
    <thetext>Comment on attachment 162265
Patch

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

&gt; Source/WebKit/chromium/src/SharedWorkerRepository.cpp:71
&gt; +static void setSharedWorkerRepository(WebKit::WebSharedWorkerRepository* repository)

I&apos;m not sure how Chromium patch will call this function given that it&apos;s not exposed in any headers.

&gt; Source/WebKit/chromium/src/SharedWorkerRepository.cpp:276
&gt; +    repository = s_sharedWorkerRepository;
&gt; +    if (!repository)
&gt; +        repository = WebKit::webKitPlatformSupport()-&gt;sharedWorkerRepository();

I would have made this into a static helper function because you&apos;ve repeated it several times.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713288</commentid>
    <comment_count>4</comment_count>
      <attachid>162507</attachid>
    <who name="Mark Pilgrim (Google)">pilgrim</who>
    <bug_when>2012-09-06 08:02:26 -0700</bug_when>
    <thetext>Created attachment 162507
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713289</commentid>
    <comment_count>5</comment_count>
    <who name="Mark Pilgrim (Google)">pilgrim</who>
    <bug_when>2012-09-06 08:03:12 -0700</bug_when>
    <thetext>Nits addressed, WebKit.h export added.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713290</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-06 08:03:35 -0700</bug_when>
    <thetext>Please wait for approval from abarth@webkit.org, dglazkov@chromium.org, fishd@chromium.org, jamesr@chromium.org or tkent@chromium.org before submitting, as this patch contains changes to the Chromium public API. See also https://trac.webkit.org/wiki/ChromiumWebKitAPI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713449</commentid>
    <comment_count>7</comment_count>
      <attachid>162507</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-09-06 10:44:17 -0700</bug_when>
    <thetext>Comment on attachment 162507
Patch

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

&gt; Source/WebKit/chromium/public/WebKit.h:34
&gt; +#include &quot;WebSharedWorkerRepository.h&quot;

You don&apos;t need this #include.  You can just forward declare WebSharedWorkerRepository

&gt; Source/WebKit/chromium/src/SharedWorkerRepository.cpp:65
&gt; +void setSharedWorkerRepository(WebSharedWorkerRepository* repository)

Maybe we should put this function in WebSharedWorkerRepository.h rather than WebKit.h?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716243</commentid>
    <comment_count>8</comment_count>
      <attachid>163162</attachid>
    <who name="Mark Pilgrim (Google)">pilgrim</who>
    <bug_when>2012-09-10 10:39:43 -0700</bug_when>
    <thetext>Created attachment 163162
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716251</commentid>
    <comment_count>9</comment_count>
      <attachid>163162</attachid>
    <who name="Mark Pilgrim (Google)">pilgrim</who>
    <bug_when>2012-09-10 10:44:12 -0700</bug_when>
    <thetext>Comment on attachment 163162
Patch

Nits addressed, moved everything out of Webkit.h and into more appropriate header files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716259</commentid>
    <comment_count>10</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-09-10 10:47:59 -0700</bug_when>
    <thetext>Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716339</commentid>
    <comment_count>11</comment_count>
      <attachid>163162</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-10 12:07:25 -0700</bug_when>
    <thetext>Comment on attachment 163162
Patch

Clearing flags on attachment: 163162

Committed r128087: &lt;http://trac.webkit.org/changeset/128087&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>716340</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-10 12:07:29 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>162265</attachid>
            <date>2012-09-05 09:26:06 -0700</date>
            <delta_ts>2012-09-06 08:02:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95861-20120905122513.patch</filename>
            <type>text/plain</type>
            <size>5429</size>
            <attacher name="Mark Pilgrim (Google)">pilgrim</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiAxMjc1OTkpCisrKyBTb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIx
IEBACisyMDEyLTA5LTA1ICBNYXJrIFBpbGdyaW0gIDxwaWxncmltQGNocm9taXVtLm9yZz4KKwor
ICAgICAgICBbQ2hyb21pdW1dIERlZmluZSBuZXcgc2V0U2hhcmVkV29ya2VyUmVwb3NpdG9yeSBm
dW5jdGlvbiBpbiBwcmVwYXJhdGlvbiBmb3IgcmVtb3ZpbmcgV2ViS2l0UGxhdGZvcm1TdXBwb3J0
OjpzaGFyZWRXb3JrZXJSZXBvc2l0b3J5KCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTk1ODYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgRm9sbG93dXAgcGF0Y2ggdG8gQ2hyb21pdW0gd2lsbCBjYWxsIHRo
aXMgbmV3IGZ1bmN0aW9uLCB0aGVuIHdlCisgICAgICAgIGNhbiByZW1vdmUgYWxsIHJlZmVyZW5j
ZXMgdG8gdGhlIGxlZ2FjeSBmdW5jdGlvbiBvbiBXZWJLaXRQbGF0Zm9ybVN1cHBvcnQuCisKKyAg
ICAgICAgKiBzcmMvU2hhcmVkV29ya2VyUmVwb3NpdG9yeS5jcHA6CisgICAgICAgIChXZWJDb3Jl
KToKKyAgICAgICAgKFdlYkNvcmU6OnNldFNoYXJlZFdvcmtlclJlcG9zaXRvcnkpOgorICAgICAg
ICAoV2ViQ29yZTo6U2hhcmVkV29ya2VyUmVwb3NpdG9yeTo6aXNBdmFpbGFibGUpOgorICAgICAg
ICAoV2ViQ29yZTo6U2hhcmVkV29ya2VyUmVwb3NpdG9yeTo6Y29ubmVjdCk6CisgICAgICAgIChX
ZWJDb3JlOjpTaGFyZWRXb3JrZXJSZXBvc2l0b3J5Ojpkb2N1bWVudERldGFjaGVkKToKKyAgICAg
ICAgKFdlYkNvcmU6OlNoYXJlZFdvcmtlclJlcG9zaXRvcnk6Omhhc1NoYXJlZFdvcmtlcnMpOgor
CiAyMDEyLTA5LTA1ICBJbHlhIFRpa2hvbm92c2t5ICA8bG9pc2xvQGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBXZWIgSW5zcGVjdG9yOiBOTUk6IGV4dHJhY3QgTWVtb3J5T2JqZWN0VHlwZSBjb25z
dGFudHMgZnJvbSBNZW1vcnlJbnN0cnVtZW50YXRpb24uCkluZGV4OiBTb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9TaGFyZWRXb3JrZXJSZXBvc2l0b3J5LmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9TaGFyZWRXb3JrZXJSZXBvc2l0b3J5LmNwcAkocmV2aXNp
b24gMTI3NTk1KQorKysgU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvU2hhcmVkV29ya2VyUmVw
b3NpdG9yeS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY2LDYgKzY2LDEzIEBAIHVzaW5nIFdlYktp
dDo6V2ViTWVzc2FnZVBvcnRDaGFubmVsOwogdXNpbmcgV2ViS2l0OjpXZWJTaGFyZWRXb3JrZXI7
CiB1c2luZyBXZWJLaXQ6OldlYlNoYXJlZFdvcmtlclJlcG9zaXRvcnk7CiAKK1dlYktpdDo6V2Vi
U2hhcmVkV29ya2VyUmVwb3NpdG9yeSogc19zaGFyZWRXb3JrZXJSZXBvc2l0b3J5ID0gMDsKKwor
c3RhdGljIHZvaWQgc2V0U2hhcmVkV29ya2VyUmVwb3NpdG9yeShXZWJLaXQ6OldlYlNoYXJlZFdv
cmtlclJlcG9zaXRvcnkqIHJlcG9zaXRvcnkpCit7CisgICAgc19zaGFyZWRXb3JrZXJSZXBvc2l0
b3J5ID0gcmVwb3NpdG9yeTsKK30KKwogLy8gQ2FsbGJhY2sgY2xhc3MgdGhhdCBrZWVwcyB0aGUg
U2hhcmVkV29ya2VyIGFuZCBXZWJTaGFyZWRXb3JrZXIgb2JqZWN0cyBhbGl2ZSB3aGlsZSBsb2Fk
cyBhcmUgcG90ZW50aWFsbHkgaGFwcGVuaW5nLCBhbmQgYWxzbyB0cmFuc2xhdGVzIGxvYWQgZXJy
b3JzIGludG8gZXJyb3IgZXZlbnRzIG9uIHRoZSB3b3JrZXIuCiBjbGFzcyBTaGFyZWRXb3JrZXJT
Y3JpcHRMb2FkZXIgOiBwcml2YXRlIFdvcmtlclNjcmlwdExvYWRlckNsaWVudCwgcHJpdmF0ZSBX
ZWJTaGFyZWRXb3JrZXI6OkNvbm5lY3RMaXN0ZW5lciB7CiBwdWJsaWM6CkBAIC0xOTQsOCArMjAx
LDE3IEBAIHZvaWQgU2hhcmVkV29ya2VyU2NyaXB0TG9hZGVyOjpjb25uZWN0ZWQKIAogYm9vbCBT
aGFyZWRXb3JrZXJSZXBvc2l0b3J5Ojppc0F2YWlsYWJsZSgpCiB7Ci0gICAgLy8gQWxsb3cgdGhl
IFdlYktpdFBsYXRmb3JtU3VwcG9ydCB0byBkZXRlcm1pbmUgaWYgU2hhcmVkV29ya2VycyBhcmUg
YXZhaWxhYmxlLgotICAgIHJldHVybiBXZWJLaXQ6OndlYktpdFBsYXRmb3JtU3VwcG9ydCgpLT5z
aGFyZWRXb3JrZXJSZXBvc2l0b3J5KCk7CisgICAgLy8gQWxsb3cgdGhlIFdlYktpdFBsYXRmb3Jt
U3VwcG9ydCB0byBkZXRlcm1pbmUgaWYgU2hhcmVkV29ya2VycworICAgIC8vIGFyZSBhdmFpbGFi
bGUuCisgICAgV2ViS2l0OjpXZWJTaGFyZWRXb3JrZXJSZXBvc2l0b3J5KiByZXBvc2l0b3J5Owor
CisgICAgcmVwb3NpdG9yeSA9IHNfc2hhcmVkV29ya2VyUmVwb3NpdG9yeTsKKyAgICBpZiAoIXJl
cG9zaXRvcnkpIHsKKyAgICAgICAgcmVwb3NpdG9yeSA9IFdlYktpdDo6d2ViS2l0UGxhdGZvcm1T
dXBwb3J0KCktPnNoYXJlZFdvcmtlclJlcG9zaXRvcnkoKTsKKyAgICAgICAgc2V0U2hhcmVkV29y
a2VyUmVwb3NpdG9yeShyZXBvc2l0b3J5KTsKKyAgICB9CisKKyAgICByZXR1cm4gcmVwb3NpdG9y
eTsKIH0KIAogc3RhdGljIFdlYlNoYXJlZFdvcmtlclJlcG9zaXRvcnk6OkRvY3VtZW50SUQgZ2V0
SWQodm9pZCogZG9jdW1lbnQpCkBAIC0yMDYsOSArMjIyLDE0IEBAIHN0YXRpYyBXZWJTaGFyZWRX
b3JrZXJSZXBvc2l0b3J5OjpEb2N1bWUKIAogdm9pZCBTaGFyZWRXb3JrZXJSZXBvc2l0b3J5Ojpj
b25uZWN0KFBhc3NSZWZQdHI8U2hhcmVkV29ya2VyPiB3b3JrZXIsIFBhc3NPd25QdHI8TWVzc2Fn
ZVBvcnRDaGFubmVsPiBwb3J0LCBjb25zdCBLVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbmFtZSwg
RXhjZXB0aW9uQ29kZSYgZWMpCiB7CisgICAgV2ViS2l0OjpXZWJTaGFyZWRXb3JrZXJSZXBvc2l0
b3J5KiByZXBvc2l0b3J5OworCisgICAgcmVwb3NpdG9yeSA9IHNfc2hhcmVkV29ya2VyUmVwb3Np
dG9yeTsKKyAgICBpZiAoIXJlcG9zaXRvcnkpCisgICAgICAgIHJlcG9zaXRvcnkgPSBXZWJLaXQ6
OndlYktpdFBsYXRmb3JtU3VwcG9ydCgpLT5zaGFyZWRXb3JrZXJSZXBvc2l0b3J5KCk7CiAgICAg
Ly8gVGhpcyBzaG91bGQgbm90IGJlIGNhbGxhYmxlIHVubGVzcyB0aGVyZSdzIGEgU2hhcmVkV29y
a2VyUmVwb3NpdG9yeSBmb3IKICAgICAvLyB0aGlzIGNvbnRleHQgKHNpbmNlIGlzQXZhaWxhYmxl
KCkgc2hvdWxkIGhhdmUgcmV0dXJuZWQgbnVsbCkuCi0gICAgQVNTRVJUKFdlYktpdDo6d2ViS2l0
UGxhdGZvcm1TdXBwb3J0KCktPnNoYXJlZFdvcmtlclJlcG9zaXRvcnkoKSk7CisgICAgQVNTRVJU
KHJlcG9zaXRvcnkpOwogCiAgICAgLy8gTm8gbmVzdGVkIHdvcmtlcnMgKGZvciBub3cpIC0gY29u
bmVjdCgpIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBmcm9tIGRvY3VtZW50IGNvbnRleHQuCiAgICAg
QVNTRVJUKHdvcmtlci0+c2NyaXB0RXhlY3V0aW9uQ29udGV4dCgpLT5pc0RvY3VtZW50KCkpOwpA
QCAtMjIzLDggKzI0NCw3IEBAIHZvaWQgU2hhcmVkV29ya2VyUmVwb3NpdG9yeTo6Y29ubmVjdChQ
YXMKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIFdlYktpdDo6d2ViS2l0UGxhdGZvcm1T
dXBwb3J0KCktPnNoYXJlZFdvcmtlclJlcG9zaXRvcnkoKS0+YWRkU2hhcmVkV29ya2VyKAotICAg
ICAgICB3ZWJXb3JrZXIuZ2V0KCksIGdldElkKGRvY3VtZW50KSk7CisgICAgcmVwb3NpdG9yeS0+
YWRkU2hhcmVkV29ya2VyKHdlYldvcmtlci5nZXQoKSwgZ2V0SWQoZG9jdW1lbnQpKTsKIAogICAg
IC8vIFRoZSBsb2FkZXIgb2JqZWN0IG1hbmFnZXMgaXRzIG93biBsaWZlY3ljbGUgKGFuZCB0aGUg
bGlmZWN5Y2xlcyBvZiB0aGUgdHdvIHdvcmtlciBvYmplY3RzKS4KICAgICAvLyBJdCB3aWxsIGZy
ZWUgaXRzZWxmIG9uY2UgbG9hZGluZyBpcyBjb21wbGV0ZWQuCkBAIC0yMzQsOSArMjU0LDEzIEBA
IHZvaWQgU2hhcmVkV29ya2VyUmVwb3NpdG9yeTo6Y29ubmVjdChQYXMKIAogdm9pZCBTaGFyZWRX
b3JrZXJSZXBvc2l0b3J5Ojpkb2N1bWVudERldGFjaGVkKERvY3VtZW50KiBkb2N1bWVudCkKIHsK
LSAgICBXZWJTaGFyZWRXb3JrZXJSZXBvc2l0b3J5KiByZXBvID0gV2ViS2l0Ojp3ZWJLaXRQbGF0
Zm9ybVN1cHBvcnQoKS0+c2hhcmVkV29ya2VyUmVwb3NpdG9yeSgpOwotICAgIGlmIChyZXBvKQot
ICAgICAgICByZXBvLT5kb2N1bWVudERldGFjaGVkKGdldElkKGRvY3VtZW50KSk7CisgICAgV2Vi
S2l0OjpXZWJTaGFyZWRXb3JrZXJSZXBvc2l0b3J5KiByZXBvc2l0b3J5OworCisgICAgcmVwb3Np
dG9yeSA9IHNfc2hhcmVkV29ya2VyUmVwb3NpdG9yeTsKKyAgICBpZiAoIXJlcG9zaXRvcnkpCisg
ICAgICAgIFdlYktpdDo6d2ViS2l0UGxhdGZvcm1TdXBwb3J0KCktPnNoYXJlZFdvcmtlclJlcG9z
aXRvcnkoKTsKKyAgICBpZiAocmVwb3NpdG9yeSkKKyAgICAgICAgcmVwb3NpdG9yeS0+ZG9jdW1l
bnREZXRhY2hlZChnZXRJZChkb2N1bWVudCkpOwogCiAgICAgLy8gU3RvcCB0aGUgY3JlYXRpb24g
b2YgYW55IHBlbmRpbmcgU2hhcmVkV29ya2VycyBmb3IgdGhpcyBjb250ZXh0LgogICAgIC8vIEZJ
WE1FOiBOZWVkIGEgd2F5IHRvIGludm9rZSB0aGlzIGZvciBXb3JrZXJDb250ZXh0cyBhcyB3ZWxs
IHdoZW4gd2Ugc3VwcG9ydCBmb3IgbmVzdGVkIHdvcmtlcnMuCkBAIC0yNDUsMTEgKzI2OSwxNCBA
QCB2b2lkIFNoYXJlZFdvcmtlclJlcG9zaXRvcnk6OmRvY3VtZW50RGV0CiAKIGJvb2wgU2hhcmVk
V29ya2VyUmVwb3NpdG9yeTo6aGFzU2hhcmVkV29ya2VycyhEb2N1bWVudCogZG9jdW1lbnQpCiB7
Ci0gICAgV2ViU2hhcmVkV29ya2VyUmVwb3NpdG9yeSogcmVwbyA9IFdlYktpdDo6d2ViS2l0UGxh
dGZvcm1TdXBwb3J0KCktPnNoYXJlZFdvcmtlclJlcG9zaXRvcnkoKTsKLSAgICByZXR1cm4gcmVw
byAmJiByZXBvLT5oYXNTaGFyZWRXb3JrZXJzKGdldElkKGRvY3VtZW50KSk7Ci19CisgICAgV2Vi
S2l0OjpXZWJTaGFyZWRXb3JrZXJSZXBvc2l0b3J5KiByZXBvc2l0b3J5OwogCisgICAgcmVwb3Np
dG9yeSA9IHNfc2hhcmVkV29ya2VyUmVwb3NpdG9yeTsKKyAgICBpZiAoIXJlcG9zaXRvcnkpCisg
ICAgICAgIHJlcG9zaXRvcnkgPSBXZWJLaXQ6OndlYktpdFBsYXRmb3JtU3VwcG9ydCgpLT5zaGFy
ZWRXb3JrZXJSZXBvc2l0b3J5KCk7CiAKKyAgICByZXR1cm4gcmVwb3NpdG9yeSAmJiByZXBvc2l0
b3J5LT5oYXNTaGFyZWRXb3JrZXJzKGdldElkKGRvY3VtZW50KSk7Cit9CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>162507</attachid>
            <date>2012-09-06 08:02:26 -0700</date>
            <delta_ts>2012-09-10 10:39:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95861-20120906110130.patch</filename>
            <type>text/plain</type>
            <size>5793</size>
            <attacher name="Mark Pilgrim (Google)">pilgrim</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiAxMjc3NDApCisrKyBTb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI0
IEBACisyMDEyLTA5LTA2ICBNYXJrIFBpbGdyaW0gIDxwaWxncmltQGNocm9taXVtLm9yZz4KKwor
ICAgICAgICBbQ2hyb21pdW1dIERlZmluZSBuZXcgc2V0U2hhcmVkV29ya2VyUmVwb3NpdG9yeSBm
dW5jdGlvbiBpbiBwcmVwYXJhdGlvbiBmb3IgcmVtb3ZpbmcgV2ViS2l0UGxhdGZvcm1TdXBwb3J0
OjpzaGFyZWRXb3JrZXJSZXBvc2l0b3J5KCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTk1ODYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgRm9sbG93dXAgcGF0Y2ggdG8gQ2hyb21pdW0gd2lsbCBjYWxsIHRo
aXMgbmV3IGZ1bmN0aW9uLCB0aGVuIHdlCisgICAgICAgIGNhbiByZW1vdmUgYWxsIHJlZmVyZW5j
ZXMgdG8gdGhlIGxlZ2FjeSBmdW5jdGlvbiBvbiBXZWJLaXRQbGF0Zm9ybVN1cHBvcnQuCisKKyAg
ICAgICAgKiBwdWJsaWMvV2ViS2l0Lmg6CisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAqIHNy
Yy9TaGFyZWRXb3JrZXJSZXBvc2l0b3J5LmNwcDoKKyAgICAgICAgKFdlYktpdCk6CisgICAgICAg
IChXZWJLaXQ6OnNldFNoYXJlZFdvcmtlclJlcG9zaXRvcnkpOgorICAgICAgICAoV2ViS2l0Ojpz
aGFyZWRXb3JrZXJSZXBvc2l0b3J5KToKKyAgICAgICAgKFdlYkNvcmU6OlNoYXJlZFdvcmtlclJl
cG9zaXRvcnk6OmlzQXZhaWxhYmxlKToKKyAgICAgICAgKFdlYkNvcmU6OlNoYXJlZFdvcmtlclJl
cG9zaXRvcnk6OmNvbm5lY3QpOgorICAgICAgICAoV2ViQ29yZTo6U2hhcmVkV29ya2VyUmVwb3Np
dG9yeTo6ZG9jdW1lbnREZXRhY2hlZCk6CisgICAgICAgIChXZWJDb3JlOjpTaGFyZWRXb3JrZXJS
ZXBvc2l0b3J5OjpoYXNTaGFyZWRXb3JrZXJzKToKKwogMjAxMi0wOS0wNiAgSWx5YSBUaWtob25v
dnNreSAgPGxvaXNsb0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3RvcjogTk1J
OiBzd2l0Y2ggdG8gaGllcmFyY2hpY2FsIGlkZW50aWZpZXJzIG9mIE1lbW9yeUJsb2NrVHlwZXMg
YW5kIHVzZSB0aGVzZSBpZGVudGlmaWVycyBpbiBwcm90b2NvbC4KSW5kZXg6IFNvdXJjZS9XZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYktpdC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vcHVibGljL1dlYktpdC5oCShyZXZpc2lvbiAxMjc3NDApCisrKyBTb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3B1YmxpYy9XZWJLaXQuaAkod29ya2luZyBjb3B5KQpAQCAtMzEsNiArMzEs
NyBAQAogI2lmbmRlZiBXZWJLaXRfaAogI2RlZmluZSBXZWJLaXRfaAogCisjaW5jbHVkZSAiV2Vi
U2hhcmVkV29ya2VyUmVwb3NpdG9yeS5oIgogI2luY2x1ZGUgInBsYXRmb3JtL1dlYkNvbW1vbi5o
IgogCiAjZGVmaW5lIEhBVkVfV0VCQ09NUE9TSVRPUgpAQCAtNjQsNiArNjUsOSBAQCBXRUJLSVRf
RVhQT1JUIFdlYktpdFBsYXRmb3JtU3VwcG9ydCogd2ViCiBXRUJLSVRfRVhQT1JUIHZvaWQgc2V0
TGF5b3V0VGVzdE1vZGUoYm9vbCk7CiBXRUJLSVRfRVhQT1JUIGJvb2wgbGF5b3V0VGVzdE1vZGUo
KTsKIAorLy8gSW5pdGlhbGl6ZXMgc2hhcmVkIHdvcmtlciBzdXBwb3J0LgorV0VCS0lUX0VYUE9S
VCB2b2lkIHNldFNoYXJlZFdvcmtlclJlcG9zaXRvcnkoV2ViU2hhcmVkV29ya2VyUmVwb3NpdG9y
eSopOworCiAvLyBFbmFibGVzIHRoZSBuYW1lZCBsb2cgY2hhbm5lbC4gU2VlIFdlYkNvcmUvcGxh
dGZvcm0vTG9nZ2luZy5oIGZvciBkZXRhaWxzLgogV0VCS0lUX0VYUE9SVCB2b2lkIGVuYWJsZUxv
Z0NoYW5uZWwoY29uc3QgY2hhciopOwogCkluZGV4OiBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9TaGFyZWRXb3JrZXJSZXBvc2l0b3J5LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
L2Nocm9taXVtL3NyYy9TaGFyZWRXb3JrZXJSZXBvc2l0b3J5LmNwcAkocmV2aXNpb24gMTI3NzQw
KQorKysgU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvU2hhcmVkV29ya2VyUmVwb3NpdG9yeS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTU4LDYgKzU4LDMwIEBACiAjaW5jbHVkZSA8cHVibGljL1dl
YlN0cmluZy5oPgogI2luY2x1ZGUgPHB1YmxpYy9XZWJVUkwuaD4KIAorbmFtZXNwYWNlIFdlYktp
dCB7CisKK1dlYlNoYXJlZFdvcmtlclJlcG9zaXRvcnkqIHNfc2hhcmVkV29ya2VyUmVwb3NpdG9y
eSA9IDA7CisKK3ZvaWQgc2V0U2hhcmVkV29ya2VyUmVwb3NpdG9yeShXZWJTaGFyZWRXb3JrZXJS
ZXBvc2l0b3J5KiByZXBvc2l0b3J5KQoreworICAgIHNfc2hhcmVkV29ya2VyUmVwb3NpdG9yeSA9
IHJlcG9zaXRvcnk7Cit9CisKK3N0YXRpYyBXZWJTaGFyZWRXb3JrZXJSZXBvc2l0b3J5KiBzaGFy
ZWRXb3JrZXJSZXBvc2l0b3J5KCkKK3sKKyAgICBXZWJTaGFyZWRXb3JrZXJSZXBvc2l0b3J5KiBy
ZXBvc2l0b3J5OworCisgICAgcmVwb3NpdG9yeSA9IHNfc2hhcmVkV29ya2VyUmVwb3NpdG9yeTsK
KyAgICBpZiAoIXJlcG9zaXRvcnkpIHsKKyAgICAgICAgcmVwb3NpdG9yeSA9IHdlYktpdFBsYXRm
b3JtU3VwcG9ydCgpLT5zaGFyZWRXb3JrZXJSZXBvc2l0b3J5KCk7CisgICAgICAgIHNldFNoYXJl
ZFdvcmtlclJlcG9zaXRvcnkocmVwb3NpdG9yeSk7CisgICAgfQorCisgICAgcmV0dXJuIHJlcG9z
aXRvcnk7Cit9CisKK30KKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBEb2N1bWVudDsK
QEAgLTE5NCw4ICsyMTgsOSBAQCB2b2lkIFNoYXJlZFdvcmtlclNjcmlwdExvYWRlcjo6Y29ubmVj
dGVkCiAKIGJvb2wgU2hhcmVkV29ya2VyUmVwb3NpdG9yeTo6aXNBdmFpbGFibGUoKQogewotICAg
IC8vIEFsbG93IHRoZSBXZWJLaXRQbGF0Zm9ybVN1cHBvcnQgdG8gZGV0ZXJtaW5lIGlmIFNoYXJl
ZFdvcmtlcnMgYXJlIGF2YWlsYWJsZS4KLSAgICByZXR1cm4gV2ViS2l0Ojp3ZWJLaXRQbGF0Zm9y
bVN1cHBvcnQoKS0+c2hhcmVkV29ya2VyUmVwb3NpdG9yeSgpOworICAgIC8vIEFsbG93IHRoZSBX
ZWJLaXRQbGF0Zm9ybVN1cHBvcnQgdG8gZGV0ZXJtaW5lIGlmIFNoYXJlZFdvcmtlcnMKKyAgICAv
LyBhcmUgYXZhaWxhYmxlLgorICAgIHJldHVybiBXZWJLaXQ6OnNoYXJlZFdvcmtlclJlcG9zaXRv
cnkoKTsKIH0KIAogc3RhdGljIFdlYlNoYXJlZFdvcmtlclJlcG9zaXRvcnk6OkRvY3VtZW50SUQg
Z2V0SWQodm9pZCogZG9jdW1lbnQpCkBAIC0yMDYsOSArMjMxLDExIEBAIHN0YXRpYyBXZWJTaGFy
ZWRXb3JrZXJSZXBvc2l0b3J5OjpEb2N1bWUKIAogdm9pZCBTaGFyZWRXb3JrZXJSZXBvc2l0b3J5
Ojpjb25uZWN0KFBhc3NSZWZQdHI8U2hhcmVkV29ya2VyPiB3b3JrZXIsIFBhc3NPd25QdHI8TWVz
c2FnZVBvcnRDaGFubmVsPiBwb3J0LCBjb25zdCBLVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbmFt
ZSwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CisgICAgV2ViS2l0OjpXZWJTaGFyZWRXb3JrZXJSZXBv
c2l0b3J5KiByZXBvc2l0b3J5ID0gV2ViS2l0OjpzaGFyZWRXb3JrZXJSZXBvc2l0b3J5KCk7CisK
ICAgICAvLyBUaGlzIHNob3VsZCBub3QgYmUgY2FsbGFibGUgdW5sZXNzIHRoZXJlJ3MgYSBTaGFy
ZWRXb3JrZXJSZXBvc2l0b3J5IGZvcgogICAgIC8vIHRoaXMgY29udGV4dCAoc2luY2UgaXNBdmFp
bGFibGUoKSBzaG91bGQgaGF2ZSByZXR1cm5lZCBudWxsKS4KLSAgICBBU1NFUlQoV2ViS2l0Ojp3
ZWJLaXRQbGF0Zm9ybVN1cHBvcnQoKS0+c2hhcmVkV29ya2VyUmVwb3NpdG9yeSgpKTsKKyAgICBB
U1NFUlQocmVwb3NpdG9yeSk7CiAKICAgICAvLyBObyBuZXN0ZWQgd29ya2VycyAoZm9yIG5vdykg
LSBjb25uZWN0KCkgc2hvdWxkIG9ubHkgYmUgY2FsbGVkIGZyb20gZG9jdW1lbnQgY29udGV4dC4K
ICAgICBBU1NFUlQod29ya2VyLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0KCktPmlzRG9jdW1lbnQo
KSk7CkBAIC0yMjMsOCArMjUwLDcgQEAgdm9pZCBTaGFyZWRXb3JrZXJSZXBvc2l0b3J5Ojpjb25u
ZWN0KFBhcwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgV2ViS2l0Ojp3ZWJLaXRQbGF0
Zm9ybVN1cHBvcnQoKS0+c2hhcmVkV29ya2VyUmVwb3NpdG9yeSgpLT5hZGRTaGFyZWRXb3JrZXIo
Ci0gICAgICAgIHdlYldvcmtlci5nZXQoKSwgZ2V0SWQoZG9jdW1lbnQpKTsKKyAgICByZXBvc2l0
b3J5LT5hZGRTaGFyZWRXb3JrZXIod2ViV29ya2VyLmdldCgpLCBnZXRJZChkb2N1bWVudCkpOwog
CiAgICAgLy8gVGhlIGxvYWRlciBvYmplY3QgbWFuYWdlcyBpdHMgb3duIGxpZmVjeWNsZSAoYW5k
IHRoZSBsaWZlY3ljbGVzIG9mIHRoZSB0d28gd29ya2VyIG9iamVjdHMpLgogICAgIC8vIEl0IHdp
bGwgZnJlZSBpdHNlbGYgb25jZSBsb2FkaW5nIGlzIGNvbXBsZXRlZC4KQEAgLTIzNCw5ICsyNjAs
MTAgQEAgdm9pZCBTaGFyZWRXb3JrZXJSZXBvc2l0b3J5Ojpjb25uZWN0KFBhcwogCiB2b2lkIFNo
YXJlZFdvcmtlclJlcG9zaXRvcnk6OmRvY3VtZW50RGV0YWNoZWQoRG9jdW1lbnQqIGRvY3VtZW50
KQogewotICAgIFdlYlNoYXJlZFdvcmtlclJlcG9zaXRvcnkqIHJlcG8gPSBXZWJLaXQ6OndlYktp
dFBsYXRmb3JtU3VwcG9ydCgpLT5zaGFyZWRXb3JrZXJSZXBvc2l0b3J5KCk7Ci0gICAgaWYgKHJl
cG8pCi0gICAgICAgIHJlcG8tPmRvY3VtZW50RGV0YWNoZWQoZ2V0SWQoZG9jdW1lbnQpKTsKKyAg
ICBXZWJLaXQ6OldlYlNoYXJlZFdvcmtlclJlcG9zaXRvcnkqIHJlcG9zaXRvcnkgPSBXZWJLaXQ6
OnNoYXJlZFdvcmtlclJlcG9zaXRvcnkoKTsKKworICAgIGlmIChyZXBvc2l0b3J5KQorICAgICAg
ICByZXBvc2l0b3J5LT5kb2N1bWVudERldGFjaGVkKGdldElkKGRvY3VtZW50KSk7CiAKICAgICAv
LyBTdG9wIHRoZSBjcmVhdGlvbiBvZiBhbnkgcGVuZGluZyBTaGFyZWRXb3JrZXJzIGZvciB0aGlz
IGNvbnRleHQuCiAgICAgLy8gRklYTUU6IE5lZWQgYSB3YXkgdG8gaW52b2tlIHRoaXMgZm9yIFdv
cmtlckNvbnRleHRzIGFzIHdlbGwgd2hlbiB3ZSBzdXBwb3J0IGZvciBuZXN0ZWQgd29ya2Vycy4K
QEAgLTI0NSwxMSArMjcyLDEwIEBAIHZvaWQgU2hhcmVkV29ya2VyUmVwb3NpdG9yeTo6ZG9jdW1l
bnREZXQKIAogYm9vbCBTaGFyZWRXb3JrZXJSZXBvc2l0b3J5OjpoYXNTaGFyZWRXb3JrZXJzKERv
Y3VtZW50KiBkb2N1bWVudCkKIHsKLSAgICBXZWJTaGFyZWRXb3JrZXJSZXBvc2l0b3J5KiByZXBv
ID0gV2ViS2l0Ojp3ZWJLaXRQbGF0Zm9ybVN1cHBvcnQoKS0+c2hhcmVkV29ya2VyUmVwb3NpdG9y
eSgpOwotICAgIHJldHVybiByZXBvICYmIHJlcG8tPmhhc1NoYXJlZFdvcmtlcnMoZ2V0SWQoZG9j
dW1lbnQpKTsKLX0KLQorICAgIFdlYktpdDo6V2ViU2hhcmVkV29ya2VyUmVwb3NpdG9yeSogcmVw
b3NpdG9yeSA9IFdlYktpdDo6c2hhcmVkV29ya2VyUmVwb3NpdG9yeSgpOwogCisgICAgcmV0dXJu
IHJlcG9zaXRvcnkgJiYgcmVwb3NpdG9yeS0+aGFzU2hhcmVkV29ya2VycyhnZXRJZChkb2N1bWVu
dCkpOworfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>163162</attachid>
            <date>2012-09-10 10:39:43 -0700</date>
            <delta_ts>2012-09-10 12:07:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95861-20120910133836.patch</filename>
            <type>text/plain</type>
            <size>5523</size>
            <attacher name="Mark Pilgrim (Google)">pilgrim</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiAxMjgwNzcpCisrKyBTb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIz
IEBACisyMDEyLTA5LTEwICBNYXJrIFBpbGdyaW0gIDxwaWxncmltQGNocm9taXVtLm9yZz4KKwor
ICAgICAgICBbQ2hyb21pdW1dIERlZmluZSBuZXcgc2V0U2hhcmVkV29ya2VyUmVwb3NpdG9yeSBm
dW5jdGlvbiBpbiBwcmVwYXJhdGlvbiBmb3IgcmVtb3ZpbmcgV2ViS2l0UGxhdGZvcm1TdXBwb3J0
OjpzaGFyZWRXb3JrZXJSZXBvc2l0b3J5KCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTk1ODYxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgRm9sbG93dXAgcGF0Y2ggdG8gQ2hyb21pdW0gd2lsbCBjYWxsIHRo
aXMgbmV3IGZ1bmN0aW9uLCB0aGVuIHdlIGNhbiByZW1vdmUgYWxsIHJlZmVyZW5jZXMgdG8gdGhl
IGxlZ2FjeSBmdW5jdGlvbiBvbiBXZWJLaXRQbGF0Zm9ybVN1cHBvcnQuCisKKyAgICAgICAgKiBw
dWJsaWMvV2ViU2hhcmVkV29ya2VyUmVwb3NpdG9yeS5oOgorICAgICAgICAoV2ViS2l0KToKKyAg
ICAgICAgKiBzcmMvU2hhcmVkV29ya2VyUmVwb3NpdG9yeS5jcHA6CisgICAgICAgIChXZWJLaXQp
OgorICAgICAgICAoV2ViS2l0OjpzZXRTaGFyZWRXb3JrZXJSZXBvc2l0b3J5KToKKyAgICAgICAg
KFdlYktpdDo6c2hhcmVkV29ya2VyUmVwb3NpdG9yeSk6CisgICAgICAgIChXZWJDb3JlOjpTaGFy
ZWRXb3JrZXJSZXBvc2l0b3J5Ojppc0F2YWlsYWJsZSk6CisgICAgICAgIChXZWJDb3JlOjpTaGFy
ZWRXb3JrZXJSZXBvc2l0b3J5Ojpjb25uZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlNoYXJlZFdv
cmtlclJlcG9zaXRvcnk6OmRvY3VtZW50RGV0YWNoZWQpOgorICAgICAgICAoV2ViQ29yZTo6U2hh
cmVkV29ya2VyUmVwb3NpdG9yeTo6aGFzU2hhcmVkV29ya2Vycyk6CisKIDIwMTItMDktMTAgIFJp
Y2sgQnllcnMgIDxyYnllcnNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtjaHJvbWl1bV0gRG9u
J3QgdXNlIFdlYkdlc3R1cmVFdmVudC5ib3VuZGluZ0JveCBmb3IgdG91Y2ggYWRqdXN0bWVudApJ
bmRleDogU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2hhcmVkV29ya2VyUmVwb3Np
dG9yeS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlNo
YXJlZFdvcmtlclJlcG9zaXRvcnkuaAkocmV2aXNpb24gMTI4MDY1KQorKysgU291cmNlL1dlYktp
dC9jaHJvbWl1bS9wdWJsaWMvV2ViU2hhcmVkV29ya2VyUmVwb3NpdG9yeS5oCSh3b3JraW5nIGNv
cHkpCkBAIC01NCw2ICs1NCw5IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIGJvb2wgaGFzU2hhcmVk
V29ya2VycyhEb2N1bWVudElEKSA9IDA7CiB9OwogCisvLyBJbml0aWFsaXplcyBzaGFyZWQgd29y
a2VyIHN1cHBvcnQuCitXRUJLSVRfRVhQT1JUIHZvaWQgc2V0U2hhcmVkV29ya2VyUmVwb3NpdG9y
eShXZWJTaGFyZWRXb3JrZXJSZXBvc2l0b3J5Kik7CisKIH0gLy8gbmFtZXNwYWNlIFdlYktpdAog
CiAjZW5kaWYgLy8gV2ViU2hhcmVkV29ya2VyUmVwb3NpdG9yeV9oCkluZGV4OiBTb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9TaGFyZWRXb3JrZXJSZXBvc2l0b3J5LmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9TaGFyZWRXb3JrZXJSZXBvc2l0b3J5LmNwcAko
cmV2aXNpb24gMTI4MDY1KQorKysgU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvU2hhcmVkV29y
a2VyUmVwb3NpdG9yeS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU4LDYgKzU4LDMwIEBACiAjaW5j
bHVkZSA8cHVibGljL1dlYlN0cmluZy5oPgogI2luY2x1ZGUgPHB1YmxpYy9XZWJVUkwuaD4KIAor
bmFtZXNwYWNlIFdlYktpdCB7CisKK1dlYlNoYXJlZFdvcmtlclJlcG9zaXRvcnkqIHNfc2hhcmVk
V29ya2VyUmVwb3NpdG9yeSA9IDA7CisKK3ZvaWQgc2V0U2hhcmVkV29ya2VyUmVwb3NpdG9yeShX
ZWJTaGFyZWRXb3JrZXJSZXBvc2l0b3J5KiByZXBvc2l0b3J5KQoreworICAgIHNfc2hhcmVkV29y
a2VyUmVwb3NpdG9yeSA9IHJlcG9zaXRvcnk7Cit9CisKK3N0YXRpYyBXZWJTaGFyZWRXb3JrZXJS
ZXBvc2l0b3J5KiBzaGFyZWRXb3JrZXJSZXBvc2l0b3J5KCkKK3sKKyAgICBXZWJTaGFyZWRXb3Jr
ZXJSZXBvc2l0b3J5KiByZXBvc2l0b3J5OworCisgICAgcmVwb3NpdG9yeSA9IHNfc2hhcmVkV29y
a2VyUmVwb3NpdG9yeTsKKyAgICBpZiAoIXJlcG9zaXRvcnkpIHsKKyAgICAgICAgcmVwb3NpdG9y
eSA9IHdlYktpdFBsYXRmb3JtU3VwcG9ydCgpLT5zaGFyZWRXb3JrZXJSZXBvc2l0b3J5KCk7Cisg
ICAgICAgIHNldFNoYXJlZFdvcmtlclJlcG9zaXRvcnkocmVwb3NpdG9yeSk7CisgICAgfQorCisg
ICAgcmV0dXJuIHJlcG9zaXRvcnk7Cit9CisKK30KKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBj
bGFzcyBEb2N1bWVudDsKQEAgLTE5NCw4ICsyMTgsOSBAQCB2b2lkIFNoYXJlZFdvcmtlclNjcmlw
dExvYWRlcjo6Y29ubmVjdGVkCiAKIGJvb2wgU2hhcmVkV29ya2VyUmVwb3NpdG9yeTo6aXNBdmFp
bGFibGUoKQogewotICAgIC8vIEFsbG93IHRoZSBXZWJLaXRQbGF0Zm9ybVN1cHBvcnQgdG8gZGV0
ZXJtaW5lIGlmIFNoYXJlZFdvcmtlcnMgYXJlIGF2YWlsYWJsZS4KLSAgICByZXR1cm4gV2ViS2l0
Ojp3ZWJLaXRQbGF0Zm9ybVN1cHBvcnQoKS0+c2hhcmVkV29ya2VyUmVwb3NpdG9yeSgpOworICAg
IC8vIEFsbG93IHRoZSBXZWJLaXRQbGF0Zm9ybVN1cHBvcnQgdG8gZGV0ZXJtaW5lIGlmIFNoYXJl
ZFdvcmtlcnMKKyAgICAvLyBhcmUgYXZhaWxhYmxlLgorICAgIHJldHVybiBXZWJLaXQ6OnNoYXJl
ZFdvcmtlclJlcG9zaXRvcnkoKTsKIH0KIAogc3RhdGljIFdlYlNoYXJlZFdvcmtlclJlcG9zaXRv
cnk6OkRvY3VtZW50SUQgZ2V0SWQodm9pZCogZG9jdW1lbnQpCkBAIC0yMDYsOSArMjMxLDExIEBA
IHN0YXRpYyBXZWJTaGFyZWRXb3JrZXJSZXBvc2l0b3J5OjpEb2N1bWUKIAogdm9pZCBTaGFyZWRX
b3JrZXJSZXBvc2l0b3J5Ojpjb25uZWN0KFBhc3NSZWZQdHI8U2hhcmVkV29ya2VyPiB3b3JrZXIs
IFBhc3NPd25QdHI8TWVzc2FnZVBvcnRDaGFubmVsPiBwb3J0LCBjb25zdCBLVVJMJiB1cmwsIGNv
bnN0IFN0cmluZyYgbmFtZSwgRXhjZXB0aW9uQ29kZSYgZWMpCiB7CisgICAgV2ViS2l0OjpXZWJT
aGFyZWRXb3JrZXJSZXBvc2l0b3J5KiByZXBvc2l0b3J5ID0gV2ViS2l0OjpzaGFyZWRXb3JrZXJS
ZXBvc2l0b3J5KCk7CisKICAgICAvLyBUaGlzIHNob3VsZCBub3QgYmUgY2FsbGFibGUgdW5sZXNz
IHRoZXJlJ3MgYSBTaGFyZWRXb3JrZXJSZXBvc2l0b3J5IGZvcgogICAgIC8vIHRoaXMgY29udGV4
dCAoc2luY2UgaXNBdmFpbGFibGUoKSBzaG91bGQgaGF2ZSByZXR1cm5lZCBudWxsKS4KLSAgICBB
U1NFUlQoV2ViS2l0Ojp3ZWJLaXRQbGF0Zm9ybVN1cHBvcnQoKS0+c2hhcmVkV29ya2VyUmVwb3Np
dG9yeSgpKTsKKyAgICBBU1NFUlQocmVwb3NpdG9yeSk7CiAKICAgICAvLyBObyBuZXN0ZWQgd29y
a2VycyAoZm9yIG5vdykgLSBjb25uZWN0KCkgc2hvdWxkIG9ubHkgYmUgY2FsbGVkIGZyb20gZG9j
dW1lbnQgY29udGV4dC4KICAgICBBU1NFUlQod29ya2VyLT5zY3JpcHRFeGVjdXRpb25Db250ZXh0
KCktPmlzRG9jdW1lbnQoKSk7CkBAIC0yMjMsOCArMjUwLDcgQEAgdm9pZCBTaGFyZWRXb3JrZXJS
ZXBvc2l0b3J5Ojpjb25uZWN0KFBhcwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgV2Vi
S2l0Ojp3ZWJLaXRQbGF0Zm9ybVN1cHBvcnQoKS0+c2hhcmVkV29ya2VyUmVwb3NpdG9yeSgpLT5h
ZGRTaGFyZWRXb3JrZXIoCi0gICAgICAgIHdlYldvcmtlci5nZXQoKSwgZ2V0SWQoZG9jdW1lbnQp
KTsKKyAgICByZXBvc2l0b3J5LT5hZGRTaGFyZWRXb3JrZXIod2ViV29ya2VyLmdldCgpLCBnZXRJ
ZChkb2N1bWVudCkpOwogCiAgICAgLy8gVGhlIGxvYWRlciBvYmplY3QgbWFuYWdlcyBpdHMgb3du
IGxpZmVjeWNsZSAoYW5kIHRoZSBsaWZlY3ljbGVzIG9mIHRoZSB0d28gd29ya2VyIG9iamVjdHMp
LgogICAgIC8vIEl0IHdpbGwgZnJlZSBpdHNlbGYgb25jZSBsb2FkaW5nIGlzIGNvbXBsZXRlZC4K
QEAgLTIzNCw5ICsyNjAsMTAgQEAgdm9pZCBTaGFyZWRXb3JrZXJSZXBvc2l0b3J5Ojpjb25uZWN0
KFBhcwogCiB2b2lkIFNoYXJlZFdvcmtlclJlcG9zaXRvcnk6OmRvY3VtZW50RGV0YWNoZWQoRG9j
dW1lbnQqIGRvY3VtZW50KQogewotICAgIFdlYlNoYXJlZFdvcmtlclJlcG9zaXRvcnkqIHJlcG8g
PSBXZWJLaXQ6OndlYktpdFBsYXRmb3JtU3VwcG9ydCgpLT5zaGFyZWRXb3JrZXJSZXBvc2l0b3J5
KCk7Ci0gICAgaWYgKHJlcG8pCi0gICAgICAgIHJlcG8tPmRvY3VtZW50RGV0YWNoZWQoZ2V0SWQo
ZG9jdW1lbnQpKTsKKyAgICBXZWJLaXQ6OldlYlNoYXJlZFdvcmtlclJlcG9zaXRvcnkqIHJlcG9z
aXRvcnkgPSBXZWJLaXQ6OnNoYXJlZFdvcmtlclJlcG9zaXRvcnkoKTsKKworICAgIGlmIChyZXBv
c2l0b3J5KQorICAgICAgICByZXBvc2l0b3J5LT5kb2N1bWVudERldGFjaGVkKGdldElkKGRvY3Vt
ZW50KSk7CiAKICAgICAvLyBTdG9wIHRoZSBjcmVhdGlvbiBvZiBhbnkgcGVuZGluZyBTaGFyZWRX
b3JrZXJzIGZvciB0aGlzIGNvbnRleHQuCiAgICAgLy8gRklYTUU6IE5lZWQgYSB3YXkgdG8gaW52
b2tlIHRoaXMgZm9yIFdvcmtlckNvbnRleHRzIGFzIHdlbGwgd2hlbiB3ZSBzdXBwb3J0IGZvciBu
ZXN0ZWQgd29ya2Vycy4KQEAgLTI0NSwxMSArMjcyLDEwIEBAIHZvaWQgU2hhcmVkV29ya2VyUmVw
b3NpdG9yeTo6ZG9jdW1lbnREZXQKIAogYm9vbCBTaGFyZWRXb3JrZXJSZXBvc2l0b3J5OjpoYXNT
aGFyZWRXb3JrZXJzKERvY3VtZW50KiBkb2N1bWVudCkKIHsKLSAgICBXZWJTaGFyZWRXb3JrZXJS
ZXBvc2l0b3J5KiByZXBvID0gV2ViS2l0Ojp3ZWJLaXRQbGF0Zm9ybVN1cHBvcnQoKS0+c2hhcmVk
V29ya2VyUmVwb3NpdG9yeSgpOwotICAgIHJldHVybiByZXBvICYmIHJlcG8tPmhhc1NoYXJlZFdv
cmtlcnMoZ2V0SWQoZG9jdW1lbnQpKTsKLX0KLQorICAgIFdlYktpdDo6V2ViU2hhcmVkV29ya2Vy
UmVwb3NpdG9yeSogcmVwb3NpdG9yeSA9IFdlYktpdDo6c2hhcmVkV29ya2VyUmVwb3NpdG9yeSgp
OwogCisgICAgcmV0dXJuIHJlcG9zaXRvcnkgJiYgcmVwb3NpdG9yeS0+aGFzU2hhcmVkV29ya2Vy
cyhnZXRJZChkb2N1bWVudCkpOworfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>