<?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>46495</bug_id>
          
          <creation_ts>2010-09-24 12:16:33 -0700</creation_ts>
          <short_desc>Add AudioBasicProcessorNode files</short_desc>
          <delta_ts>2010-10-05 23:14:41 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</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>0</everconfirmed>
          <reporter name="Chris Rogers">crogers</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cmarrin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dglazkov</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>eric</cc>
    
    <cc>jamesr</cc>
    
    <cc>jer.noble</cc>
    
    <cc>kbr</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>284611</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2010-09-24 12:16:33 -0700</bug_when>
    <thetext>Add AudioBasicProcessorNode files</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>284613</commentid>
    <comment_count>1</comment_count>
      <attachid>68728</attachid>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2010-09-24 12:18:22 -0700</bug_when>
    <thetext>Created attachment 68728
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>288490</commentid>
    <comment_count>2</comment_count>
      <attachid>69520</attachid>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2010-10-01 14:32:48 -0700</bug_when>
    <thetext>Created attachment 69520
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289173</commentid>
    <comment_count>3</comment_count>
      <attachid>69520</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2010-10-04 14:55:46 -0700</bug_when>
    <thetext>Comment on attachment 69520
Patch

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

This basically looks good; couple of tiny changes. r- for the license text update discussed offline.

&gt; WebCore/webaudio/AudioBasicProcessorNode.cpp:44
&gt; +    , m_processor(0)

m_processor does not require explicit initialization.

&gt; WebCore/webaudio/AudioBasicProcessorNode.cpp:85
&gt; +            // FIXME: if we take &quot;tailTime&quot; into account, then we can avoid calling processor()-&gt;process() once the tail dies down.

Is tailTime concretely defined somewhere? If so, please mention where in the comment; otherwise, change to &quot;tail time&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289226</commentid>
    <comment_count>4</comment_count>
      <attachid>69704</attachid>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2010-10-04 15:41:23 -0700</bug_when>
    <thetext>Created attachment 69704
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289229</commentid>
    <comment_count>5</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2010-10-04 15:42:10 -0700</bug_when>
    <thetext>license updated and comments addressed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289235</commentid>
    <comment_count>6</comment_count>
      <attachid>69704</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2010-10-04 15:45:35 -0700</bug_when>
    <thetext>Comment on attachment 69704
Patch

Looks good to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289478</commentid>
    <comment_count>7</comment_count>
      <attachid>69704</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-05 00:45:12 -0700</bug_when>
    <thetext>Comment on attachment 69704
Patch

Rejecting patch 69704 from commit-queue.

Failed to run &quot;[&apos;./WebKitTools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;land-attachment&apos;, &apos;--force-clean&apos;, &apos;--ignore-builders&apos;, &apos;--quiet&apos;, &apos;--non-interactive&apos;, &apos;--parent-command=commit-queue&apos;, 69704]&quot; exit_code: 2
Last 500 characters of output:
 69704 from bug 46495.
Parsing ChangeLog: /Projects/CommitQueue/WebCore/ChangeLog
Failed to run &quot;[u&apos;git&apos;, u&apos;svn&apos;, u&apos;dcommit&apos;]&quot; exit_code: 1
Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	WebCore/ChangeLog
	A	WebCore/webaudio/AudioBasicProcessorNode.cpp
	A	WebCore/webaudio/AudioBasicProcessorNode.h
Merge conflict during commit: Conflict at &apos;/trunk/WebCore/ChangeLog&apos; at /usr/local/git/libexec/git-core/git-svn line 572


Failed to run &quot;[u&apos;git&apos;, u&apos;svn&apos;, u&apos;dcommit&apos;]&quot; exit_code: 1

Full output: http://queues.webkit.org/results/4220074</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289763</commentid>
    <comment_count>8</comment_count>
      <attachid>69704</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-10-05 11:18:28 -0700</bug_when>
    <thetext>Comment on attachment 69704
Patch

That should have generated a retry.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289788</commentid>
    <comment_count>9</comment_count>
      <attachid>69704</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-05 11:48:53 -0700</bug_when>
    <thetext>Comment on attachment 69704
Patch

Clearing flags on attachment: 69704

Committed r69131: &lt;http://trac.webkit.org/changeset/69131&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>289789</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-05 11:48:59 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>290109</commentid>
    <comment_count>11</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-10-05 23:14:41 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 69704 [details])
&gt; That should have generated a retry.

I don&apos;t think we detect that case.  It&apos;s not a &quot;Checkout out of date&quot; error.  It&apos;s a merge failure.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>68728</attachid>
            <date>2010-09-24 12:18:22 -0700</date>
            <delta_ts>2010-10-01 14:32:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-46495-20100924121821.patch</filename>
            <type>text/plain</type>
            <size>9966</size>
            <attacher name="Chris Rogers">crogers</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2ODI4MikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjQgQEAKKzIwMTAtMDktMjQgIENocmlzIFJvZ2VycyAgPGNyb2dlcnNAZ29vZ2xl
LmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGQgQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGUgZmlsZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ2NDk1CisKKyAgICAgICAgTm8gbmV3IHRlc3RzIHNp
bmNlIGF1ZGlvIEFQSSBpcyBub3QgeWV0IGltcGxlbWVudGVkLgorCisgICAgICAgICogd2ViYXVk
aW8vQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGUuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZSk6CisgICAg
ICAgIChXZWJDb3JlOjpBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZTo6aW5pdGlhbGl6ZSk6CisgICAg
ICAgIChXZWJDb3JlOjpBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZTo6dW5pbml0aWFsaXplKToKKyAg
ICAgICAgKFdlYkNvcmU6OkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpwcm9jZXNzKToKKyAgICAg
ICAgKFdlYkNvcmU6OkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpwdWxsSW5wdXRzKToKKyAgICAg
ICAgKFdlYkNvcmU6OkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpyZXNldCk6CisgICAgICAgIChX
ZWJDb3JlOjpBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZTo6Y2hlY2tOdW1iZXJPZkNoYW5uZWxzRm9y
SW5wdXQpOgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6Om51bWJl
ck9mQ2hhbm5lbHMpOgorICAgICAgICAqIHdlYmF1ZGlvL0F1ZGlvQmFzaWNQcm9jZXNzb3JOb2Rl
Lmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6OnBy
b2Nlc3Nvcik6CisKIDIwMTAtMDktMjQgIERhdmlkIEh5YXR0ICA8aHlhdHRAYXBwbGUuY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IFNhbSBXZWluaWcuCkluZGV4OiBXZWJDb3JlL3dlYmF1ZGlv
L0F1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3dlYmF1
ZGlvL0F1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmNwcAkocmV2aXNpb24gMCkKKysrIFdlYkNvcmUv
d2ViYXVkaW8vQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGUuY3BwCShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDE1MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gIE5laXRoZXIgdGhlIG5hbWUg
b2YgQXBwbGUgQ29tcHV0ZXIsIEluYy4gKCJBcHBsZSIpIG5vciB0aGUgbmFtZXMgb2YKKyAqICAg
ICBpdHMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9k
dWN0cyBkZXJpdmVkCisgKiAgICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMg
cHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgQU5EIElUUyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5ECisgKiBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lmIEVOQUJMRShXRUJfQVVESU8p
CisKKyNpbmNsdWRlICJBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZS5oIgorCisjaW5jbHVkZSAiQXVk
aW9CdXMuaCIKKyNpbmNsdWRlICJBdWRpb05vZGVJbnB1dC5oIgorI2luY2x1ZGUgIkF1ZGlvTm9k
ZU91dHB1dC5oIgorI2luY2x1ZGUgIkF1ZGlvUHJvY2Vzc29yLmgiCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6OkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2Rl
KEF1ZGlvQ29udGV4dCogY29udGV4dCwgZG91YmxlIHNhbXBsZVJhdGUpCisgICAgOiBBdWRpb05v
ZGUoY29udGV4dCwgc2FtcGxlUmF0ZSkKKyAgICAsIG1fcHJvY2Vzc29yKDApCit7CisgICAgYWRk
SW5wdXQoYWRvcHRQdHIobmV3IEF1ZGlvTm9kZUlucHV0KHRoaXMpKSk7CisgICAgYWRkT3V0cHV0
KGFkb3B0UHRyKG5ldyBBdWRpb05vZGVPdXRwdXQodGhpcywgMCkpKTsKKworICAgIC8vIFRoZSBz
dWJjbGFzcyBtdXN0IGNyZWF0ZSBtX3Byb2Nlc3Nvci4KK30KKwordm9pZCBBdWRpb0Jhc2ljUHJv
Y2Vzc29yTm9kZTo6aW5pdGlhbGl6ZSgpCit7CisgICAgaWYgKGlzSW5pdGlhbGl6ZWQoKSkKKyAg
ICAgICAgcmV0dXJuOworCisgICAgQVNTRVJUKHByb2Nlc3NvcigpKTsKKyAgICBwcm9jZXNzb3Io
KS0+aW5pdGlhbGl6ZSgpOworCisgICAgbV9pc0luaXRpYWxpemVkID0gdHJ1ZTsKK30KKwordm9p
ZCBBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZTo6dW5pbml0aWFsaXplKCkKK3sKKyAgICBpZiAoIWlz
SW5pdGlhbGl6ZWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgQVNTRVJUKHByb2Nlc3Nvcigp
KTsKKyAgICBwcm9jZXNzb3IoKS0+dW5pbml0aWFsaXplKCk7CisKKyAgICBtX2lzSW5pdGlhbGl6
ZWQgPSBmYWxzZTsKK30KKwordm9pZCBBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZTo6cHJvY2Vzcyhz
aXplX3QgZnJhbWVzVG9Qcm9jZXNzKQoreworICAgIEF1ZGlvQnVzKiBkZXN0aW5hdGlvbkJ1cyA9
IG91dHB1dCgwKS0+YnVzKCk7CisgICAgCisgICAgLy8gVGhlIHJlYWx0aW1lIHRocmVhZCBjYW4n
dCBibG9jayBvbiB0aGlzIGxvY2ssIHNvIHdlIGNhbGwgdHJ5TG9jaygpIGluc3RlYWQuCisgICAg
aWYgKG1fcHJvY2Vzc0xvY2sudHJ5TG9jaygpKSB7CisgICAgICAgIGlmICghaXNJbml0aWFsaXpl
ZCgpIHx8ICFwcm9jZXNzb3IoKSkKKyAgICAgICAgICAgIGRlc3RpbmF0aW9uQnVzLT56ZXJvKCk7
CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgQXVkaW9CdXMqIHNvdXJjZUJ1cyA9IGlucHV0
KDApLT5idXMoKTsKKworICAgICAgICAgICAgLy8gRklYTUU6IGlmIHdlIHRha2UgInRhaWxUaW1l
IiBpbnRvIGFjY291bnQsIHRoZW4gd2UgY2FuIGF2b2lkIGNhbGxpbmcgcHJvY2Vzc29yKCktPnBy
b2Nlc3MoKSBvbmNlIHRoZSB0YWlsIGRpZXMgZG93bi4KKyAgICAgICAgICAgIGlmICghaW5wdXQo
MCktPmlzQ29ubmVjdGVkKCkpCisgICAgICAgICAgICAgICAgc291cmNlQnVzLT56ZXJvKCk7Cisg
ICAgICAgICAgICAKKyAgICAgICAgICAgIHByb2Nlc3NvcigpLT5wcm9jZXNzKHNvdXJjZUJ1cywg
ZGVzdGluYXRpb25CdXMsIGZyYW1lc1RvUHJvY2Vzcyk7ICAKKyAgICAgICAgfQorCisgICAgICAg
IG1fcHJvY2Vzc0xvY2sudW5sb2NrKCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgLy8gVG9vIGJh
ZCAtIHRoZSB0cnlMb2NrKCkgZmFpbGVkLiAgV2UgbXVzdCBiZSBpbiB0aGUgbWlkZGxlIG9mIHJl
LWNvbm5lY3RpbmcgYW5kIHdlcmUgYWxyZWFkeSBvdXRwdXR0aW5nIHNpbGVuY2UgYW55d2F5Li4u
CisgICAgICAgIGRlc3RpbmF0aW9uQnVzLT56ZXJvKCk7CisgICAgfQorfQorCisvLyBOaWNlIG9w
dGltaXphdGlvbiBpbiB0aGUgdmVyeSBjb21tb24gY2FzZSBhbGxvd2luZyBmb3IgImluLXBsYWNl
IiBwcm9jZXNzaW5nCit2b2lkIEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpwdWxsSW5wdXRzKHNp
emVfdCBmcmFtZXNUb1Byb2Nlc3MpCit7CisgICAgLy8gUmVuZGVyIGlucHV0IHN0cmVhbSAtIHN1
Z2dlc3QgdG8gdGhlIGlucHV0IHRvIHJlbmRlciBkaXJlY3RseSBpbnRvIG91dHB1dCBidXMgZm9y
IGluLXBsYWNlIHByb2Nlc3NpbmcgaW4gcHJvY2VzcygpIGlmIHBvc3NpYmxlLgorICAgIGlucHV0
KDApLT5wdWxsKG91dHB1dCgwKS0+YnVzKCksIGZyYW1lc1RvUHJvY2Vzcyk7Cit9CisKK3ZvaWQg
QXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6OnJlc2V0KCkKK3sKKyAgICBpZiAocHJvY2Vzc29yKCkp
CisgICAgICAgIHByb2Nlc3NvcigpLT5yZXNldCgpOworfQorCisvLyBBcyBzb29uIGFzIHdlIGtu
b3cgdGhlIGNoYW5uZWwgY291bnQgb2Ygb3VyIGlucHV0LCB3ZSBjYW4gbGF6aWx5IGluaXRpYWxp
emUuCisvLyBTb21ldGltZXMgdGhpcyBtYXkgYmUgY2FsbGVkIG1vcmUgdGhhbiBvbmNlIHdpdGgg
ZGlmZmVyZW50IGNoYW5uZWwgY291bnRzLCBpbiB3aGljaCBjYXNlIHdlIG11c3Qgc2FmZWx5Cisv
LyB1bmluaXRpYWxpemUgYW5kIHRoZW4gcmUtaW5pdGlhbGl6ZSB3aXRoIHRoZSBuZXcgY2hhbm5l
bCBjb3VudC4KK3ZvaWQgQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6OmNoZWNrTnVtYmVyT2ZDaGFu
bmVsc0ZvcklucHV0KEF1ZGlvTm9kZUlucHV0KiBpbnB1dCkKK3sKKyAgICBBU1NFUlQoaXNNYWlu
VGhyZWFkKCkpOworICAgIAorICAgIEFTU0VSVChpbnB1dCA9PSB0aGlzLT5pbnB1dCgwKSk7Cisg
ICAgaWYgKGlucHV0ICE9IHRoaXMtPmlucHV0KDApKQorICAgICAgICByZXR1cm47CisKKyAgICBB
U1NFUlQocHJvY2Vzc29yKCkpOworICAgIGlmICghcHJvY2Vzc29yKCkpCisgICAgICAgIHJldHVy
bjsKKworICAgIHVuc2lnbmVkIG51bWJlck9mQ2hhbm5lbHMgPSBpbnB1dC0+bnVtYmVyT2ZDaGFu
bmVscygpOworICAgIAorICAgIGlmIChpc0luaXRpYWxpemVkKCkgJiYgbnVtYmVyT2ZDaGFubmVs
cyAhPSBvdXRwdXQoMCktPm51bWJlck9mQ2hhbm5lbHMoKSkgeworICAgICAgICAvLyBXZSdyZSBh
bHJlYWR5IGluaXRpYWxpemVkIGJ1dCB0aGUgY2hhbm5lbCBjb3VudCBoYXMgY2hhbmdlZC4KKyAg
ICAgICAgLy8gV2UgbmVlZCB0byBiZSBjYXJlZnVsIHNpbmNlIHdlIG1heSBiZSBhY3RpdmVseSBw
cm9jZXNzaW5nIHJpZ2h0IG5vdywgc28gc3luY2hyb25pemUgd2l0aCBwcm9jZXNzKCkuCisgICAg
ICAgIE11dGV4TG9ja2VyIGxvY2tlcihtX3Byb2Nlc3NMb2NrKTsKKyAgICAgICAgdW5pbml0aWFs
aXplKCk7CisgICAgfQorICAgIAorICAgIC8vIFRoaXMgd2lsbCBwcm9wYWdhdGUgdGhlIGNoYW5u
ZWwgY291bnQgdG8gYW55IG5vZGVzIGNvbm5lY3RlZCBmdXJ0aGVyIGRvd24gdGhlIGNoYWluLi4u
CisgICAgb3V0cHV0KDApLT5zZXROdW1iZXJPZkNoYW5uZWxzKG51bWJlck9mQ2hhbm5lbHMpOwor
CisgICAgLy8gUmUtaW5pdGlhbGl6ZSB0aGUgcHJvY2Vzc29yIHdpdGggdGhlIG5ldyBjaGFubmVs
IGNvdW50LgorICAgIHByb2Nlc3NvcigpLT5zZXROdW1iZXJPZkNoYW5uZWxzKG51bWJlck9mQ2hh
bm5lbHMpOworICAgIGluaXRpYWxpemUoKTsKK30KKwordW5zaWduZWQgQXVkaW9CYXNpY1Byb2Nl
c3Nvck5vZGU6Om51bWJlck9mQ2hhbm5lbHMoKQoreworICAgIHJldHVybiBvdXRwdXQoMCktPm51
bWJlck9mQ2hhbm5lbHMoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYg
Ly8gRU5BQkxFKFdFQl9BVURJTykKSW5kZXg6IFdlYkNvcmUvd2ViYXVkaW8vQXVkaW9CYXNpY1By
b2Nlc3Nvck5vZGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3dlYmF1ZGlvL0F1ZGlvQmFzaWNQ
cm9jZXNzb3JOb2RlLmgJKHJldmlzaW9uIDApCisrKyBXZWJDb3JlL3dlYmF1ZGlvL0F1ZGlvQmFz
aWNQcm9jZXNzb3JOb2RlLmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNzIgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiAgUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyAqIDMuICBOZWl0aGVyIHRoZSBuYW1lIG9mIEFwcGxlIENvbXB1dGVyLCBJ
bmMuICgiQXBwbGUiKSBub3IgdGhlIG5hbWVzIG9mCisgKiAgICAgaXRzIGNvbnRyaWJ1dG9ycyBt
YXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAorICogICAg
IGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlz
c2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMg
Q09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORAorICogT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgorICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVm
IEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlX2gKKyNkZWZpbmUgQXVkaW9CYXNpY1Byb2Nlc3Nvck5v
ZGVfaAorCisjaW5jbHVkZSAiQXVkaW9Ob2RlLmgiCisjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQdHIu
aD4KKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcu
aD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBBdWRpb0J1czsKK2NsYXNzIEF1ZGlv
Tm9kZUlucHV0OworY2xhc3MgQXVkaW9Qcm9jZXNzb3I7CisgICAgCisvLyBBdWRpb0Jhc2ljUHJv
Y2Vzc29yTm9kZSBpcyBhbiBBdWRpb05vZGUgd2l0aCBvbmUgaW5wdXQgYW5kIG9uZSBvdXRwdXQg
d2hlcmUgdGhlIGlucHV0IGFuZCBvdXRwdXQgaGF2ZSB0aGUgc2FtZSBudW1iZXIgb2YgY2hhbm5l
bHMuCitjbGFzcyBBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZSA6IHB1YmxpYyBBdWRpb05vZGUgewor
cHVibGljOgorICAgIEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlKEF1ZGlvQ29udGV4dCosIGRvdWJs
ZSBzYW1wbGVSYXRlKTsKKworICAgIC8vIEF1ZGlvTm9kZQorICAgIHZpcnR1YWwgdm9pZCBwcm9j
ZXNzKHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpOworICAgIHZpcnR1YWwgdm9pZCBwdWxsSW5wdXRz
KHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpOworICAgIHZpcnR1YWwgdm9pZCByZXNldCgpOworICAg
IHZpcnR1YWwgdm9pZCBpbml0aWFsaXplKCk7CisgICAgdmlydHVhbCB2b2lkIHVuaW5pdGlhbGl6
ZSgpOworCisgICAgLy8gQ2FsbGVkIGluIHRoZSBtYWluIHRocmVhZCB3aGVuIHRoZSBudW1iZXIg
b2YgY2hhbm5lbHMgZm9yIHRoZSBpbnB1dCBtYXkgaGF2ZSBjaGFuZ2VkLgorICAgIHZpcnR1YWwg
dm9pZCBjaGVja051bWJlck9mQ2hhbm5lbHNGb3JJbnB1dChBdWRpb05vZGVJbnB1dCopOworCisg
ICAgLy8gUmV0dXJucyB0aGUgbnVtYmVyIG9mIGNoYW5uZWxzIGZvciBib3RoIHRoZSBpbnB1dCBh
bmQgdGhlIG91dHB1dC4KKyAgICB1bnNpZ25lZCBudW1iZXJPZkNoYW5uZWxzKCk7CisKK3Byb3Rl
Y3RlZDoKKyAgICBBdWRpb1Byb2Nlc3NvciogcHJvY2Vzc29yKCkgeyByZXR1cm4gbV9wcm9jZXNz
b3IuZ2V0KCk7IH0KKyAgICBPd25QdHI8QXVkaW9Qcm9jZXNzb3I+IG1fcHJvY2Vzc29yOworCitw
cml2YXRlOgorICAgIC8vIFRoaXMgc3luY2hyb25pemVzIGxpdmUgY2hhbm5lbCBjb3VudCBjaGFu
Z2VzIHdoaWNoIHJlcXVpcmUgYW4gdW5pbml0aWFsaXphdGlvbiAvIHJlLWluaXRpYWxpemF0aW9u
LgorICAgIG11dGFibGUgTXV0ZXggbV9wcm9jZXNzTG9jazsKK307CisKK30gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKKworI2VuZGlmIC8vIEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlX2gK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>69520</attachid>
            <date>2010-10-01 14:32:48 -0700</date>
            <delta_ts>2010-10-04 15:41:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-46495-20101001143246.patch</filename>
            <type>text/plain</type>
            <size>9969</size>
            <attacher name="Chris Rogers">crogers</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2ODkyNykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjQgQEAKKzIwMTAtMTAtMDEgIENocmlzIFJvZ2VycyAgPGNyb2dlcnNAZ29vZ2xl
LmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGQgQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGUgZmlsZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ2NDk1CisKKyAgICAgICAgTm8gbmV3IHRlc3RzIHNp
bmNlIGF1ZGlvIEFQSSBpcyBub3QgeWV0IGltcGxlbWVudGVkLgorCisgICAgICAgICogd2ViYXVk
aW8vQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGUuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZSk6CisgICAg
ICAgIChXZWJDb3JlOjpBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZTo6aW5pdGlhbGl6ZSk6CisgICAg
ICAgIChXZWJDb3JlOjpBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZTo6dW5pbml0aWFsaXplKToKKyAg
ICAgICAgKFdlYkNvcmU6OkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpwcm9jZXNzKToKKyAgICAg
ICAgKFdlYkNvcmU6OkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpwdWxsSW5wdXRzKToKKyAgICAg
ICAgKFdlYkNvcmU6OkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpyZXNldCk6CisgICAgICAgIChX
ZWJDb3JlOjpBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZTo6Y2hlY2tOdW1iZXJPZkNoYW5uZWxzRm9y
SW5wdXQpOgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6Om51bWJl
ck9mQ2hhbm5lbHMpOgorICAgICAgICAqIHdlYmF1ZGlvL0F1ZGlvQmFzaWNQcm9jZXNzb3JOb2Rl
Lmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6OnBy
b2Nlc3Nvcik6CisKIDIwMTAtMTAtMDEgIERhdmlkIEh5YXR0ICA8aHlhdHRAYXBwbGUuY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IFNhbSBXZWluaWcuCkluZGV4OiBXZWJDb3JlL3dlYmF1ZGlv
L0F1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3dlYmF1
ZGlvL0F1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmNwcAkocmV2aXNpb24gMCkKKysrIFdlYkNvcmUv
d2ViYXVkaW8vQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGUuY3BwCShyZXZpc2lvbiAwKQpAQCAtMCww
ICsxLDE1MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKKyAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICogMy4gIE5laXRoZXIgdGhlIG5hbWUg
b2YgQXBwbGUgQ29tcHV0ZXIsIEluYy4gKCJBcHBsZSIpIG5vciB0aGUgbmFtZXMgb2YKKyAqICAg
ICBpdHMgY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9k
dWN0cyBkZXJpdmVkCisgKiAgICAgZnJvbSB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMg
cHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgQU5EIElUUyBDT05UUklCVVRPUlMgIkFTIElTIiBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRSBJTVBMSUVECisgKiBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVO
VCBTSEFMTCBBUFBMRSBPUiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNF
UVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9D
VVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0Us
IERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVT
RUQgQU5ECisgKiBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFD
VCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9S
IE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCisgKiBUSElT
IFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKworI2lmIEVOQUJMRShXRUJfQVVESU8p
CisKKyNpbmNsdWRlICJBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZS5oIgorCisjaW5jbHVkZSAiQXVk
aW9CdXMuaCIKKyNpbmNsdWRlICJBdWRpb05vZGVJbnB1dC5oIgorI2luY2x1ZGUgIkF1ZGlvTm9k
ZU91dHB1dC5oIgorI2luY2x1ZGUgIkF1ZGlvUHJvY2Vzc29yLmgiCisKK25hbWVzcGFjZSBXZWJD
b3JlIHsKKworQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6OkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2Rl
KEF1ZGlvQ29udGV4dCogY29udGV4dCwgZG91YmxlIHNhbXBsZVJhdGUpCisgICAgOiBBdWRpb05v
ZGUoY29udGV4dCwgc2FtcGxlUmF0ZSkKKyAgICAsIG1fcHJvY2Vzc29yKDApCit7CisgICAgYWRk
SW5wdXQoYWRvcHRQdHIobmV3IEF1ZGlvTm9kZUlucHV0KHRoaXMpKSk7CisgICAgYWRkT3V0cHV0
KGFkb3B0UHRyKG5ldyBBdWRpb05vZGVPdXRwdXQodGhpcywgMCkpKTsKKworICAgIC8vIFRoZSBz
dWJjbGFzcyBtdXN0IGNyZWF0ZSBtX3Byb2Nlc3Nvci4KK30KKwordm9pZCBBdWRpb0Jhc2ljUHJv
Y2Vzc29yTm9kZTo6aW5pdGlhbGl6ZSgpCit7CisgICAgaWYgKGlzSW5pdGlhbGl6ZWQoKSkKKyAg
ICAgICAgcmV0dXJuOworCisgICAgQVNTRVJUKHByb2Nlc3NvcigpKTsKKyAgICBwcm9jZXNzb3Io
KS0+aW5pdGlhbGl6ZSgpOworCisgICAgQXVkaW9Ob2RlOjppbml0aWFsaXplKCk7Cit9CisKK3Zv
aWQgQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6OnVuaW5pdGlhbGl6ZSgpCit7CisgICAgaWYgKCFp
c0luaXRpYWxpemVkKCkpCisgICAgICAgIHJldHVybjsKKworICAgIEFTU0VSVChwcm9jZXNzb3Io
KSk7CisgICAgcHJvY2Vzc29yKCktPnVuaW5pdGlhbGl6ZSgpOworCisgICAgQXVkaW9Ob2RlOjp1
bmluaXRpYWxpemUoKTsKK30KKwordm9pZCBBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZTo6cHJvY2Vz
cyhzaXplX3QgZnJhbWVzVG9Qcm9jZXNzKQoreworICAgIEF1ZGlvQnVzKiBkZXN0aW5hdGlvbkJ1
cyA9IG91dHB1dCgwKS0+YnVzKCk7CisgICAgCisgICAgLy8gVGhlIHJlYWx0aW1lIHRocmVhZCBj
YW4ndCBibG9jayBvbiB0aGlzIGxvY2ssIHNvIHdlIGNhbGwgdHJ5TG9jaygpIGluc3RlYWQuCisg
ICAgaWYgKG1fcHJvY2Vzc0xvY2sudHJ5TG9jaygpKSB7CisgICAgICAgIGlmICghaXNJbml0aWFs
aXplZCgpIHx8ICFwcm9jZXNzb3IoKSkKKyAgICAgICAgICAgIGRlc3RpbmF0aW9uQnVzLT56ZXJv
KCk7CisgICAgICAgIGVsc2UgeworICAgICAgICAgICAgQXVkaW9CdXMqIHNvdXJjZUJ1cyA9IGlu
cHV0KDApLT5idXMoKTsKKworICAgICAgICAgICAgLy8gRklYTUU6IGlmIHdlIHRha2UgInRhaWxU
aW1lIiBpbnRvIGFjY291bnQsIHRoZW4gd2UgY2FuIGF2b2lkIGNhbGxpbmcgcHJvY2Vzc29yKCkt
PnByb2Nlc3MoKSBvbmNlIHRoZSB0YWlsIGRpZXMgZG93bi4KKyAgICAgICAgICAgIGlmICghaW5w
dXQoMCktPmlzQ29ubmVjdGVkKCkpCisgICAgICAgICAgICAgICAgc291cmNlQnVzLT56ZXJvKCk7
CisgICAgICAgICAgICAKKyAgICAgICAgICAgIHByb2Nlc3NvcigpLT5wcm9jZXNzKHNvdXJjZUJ1
cywgZGVzdGluYXRpb25CdXMsIGZyYW1lc1RvUHJvY2Vzcyk7ICAKKyAgICAgICAgfQorCisgICAg
ICAgIG1fcHJvY2Vzc0xvY2sudW5sb2NrKCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgLy8gVG9v
IGJhZCAtIHRoZSB0cnlMb2NrKCkgZmFpbGVkLiAgV2UgbXVzdCBiZSBpbiB0aGUgbWlkZGxlIG9m
IHJlLWNvbm5lY3RpbmcgYW5kIHdlcmUgYWxyZWFkeSBvdXRwdXR0aW5nIHNpbGVuY2UgYW55d2F5
Li4uCisgICAgICAgIGRlc3RpbmF0aW9uQnVzLT56ZXJvKCk7CisgICAgfQorfQorCisvLyBOaWNl
IG9wdGltaXphdGlvbiBpbiB0aGUgdmVyeSBjb21tb24gY2FzZSBhbGxvd2luZyBmb3IgImluLXBs
YWNlIiBwcm9jZXNzaW5nCit2b2lkIEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpwdWxsSW5wdXRz
KHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCit7CisgICAgLy8gUmVuZGVyIGlucHV0IHN0cmVhbSAt
IHN1Z2dlc3QgdG8gdGhlIGlucHV0IHRvIHJlbmRlciBkaXJlY3RseSBpbnRvIG91dHB1dCBidXMg
Zm9yIGluLXBsYWNlIHByb2Nlc3NpbmcgaW4gcHJvY2VzcygpIGlmIHBvc3NpYmxlLgorICAgIGlu
cHV0KDApLT5wdWxsKG91dHB1dCgwKS0+YnVzKCksIGZyYW1lc1RvUHJvY2Vzcyk7Cit9CisKK3Zv
aWQgQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6OnJlc2V0KCkKK3sKKyAgICBpZiAocHJvY2Vzc29y
KCkpCisgICAgICAgIHByb2Nlc3NvcigpLT5yZXNldCgpOworfQorCisvLyBBcyBzb29uIGFzIHdl
IGtub3cgdGhlIGNoYW5uZWwgY291bnQgb2Ygb3VyIGlucHV0LCB3ZSBjYW4gbGF6aWx5IGluaXRp
YWxpemUuCisvLyBTb21ldGltZXMgdGhpcyBtYXkgYmUgY2FsbGVkIG1vcmUgdGhhbiBvbmNlIHdp
dGggZGlmZmVyZW50IGNoYW5uZWwgY291bnRzLCBpbiB3aGljaCBjYXNlIHdlIG11c3Qgc2FmZWx5
CisvLyB1bmluaXRpYWxpemUgYW5kIHRoZW4gcmUtaW5pdGlhbGl6ZSB3aXRoIHRoZSBuZXcgY2hh
bm5lbCBjb3VudC4KK3ZvaWQgQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6OmNoZWNrTnVtYmVyT2ZD
aGFubmVsc0ZvcklucHV0KEF1ZGlvTm9kZUlucHV0KiBpbnB1dCkKK3sKKyAgICBBU1NFUlQoaXNN
YWluVGhyZWFkKCkpOworICAgIAorICAgIEFTU0VSVChpbnB1dCA9PSB0aGlzLT5pbnB1dCgwKSk7
CisgICAgaWYgKGlucHV0ICE9IHRoaXMtPmlucHV0KDApKQorICAgICAgICByZXR1cm47CisKKyAg
ICBBU1NFUlQocHJvY2Vzc29yKCkpOworICAgIGlmICghcHJvY2Vzc29yKCkpCisgICAgICAgIHJl
dHVybjsKKworICAgIHVuc2lnbmVkIG51bWJlck9mQ2hhbm5lbHMgPSBpbnB1dC0+bnVtYmVyT2ZD
aGFubmVscygpOworICAgIAorICAgIGlmIChpc0luaXRpYWxpemVkKCkgJiYgbnVtYmVyT2ZDaGFu
bmVscyAhPSBvdXRwdXQoMCktPm51bWJlck9mQ2hhbm5lbHMoKSkgeworICAgICAgICAvLyBXZSdy
ZSBhbHJlYWR5IGluaXRpYWxpemVkIGJ1dCB0aGUgY2hhbm5lbCBjb3VudCBoYXMgY2hhbmdlZC4K
KyAgICAgICAgLy8gV2UgbmVlZCB0byBiZSBjYXJlZnVsIHNpbmNlIHdlIG1heSBiZSBhY3RpdmVs
eSBwcm9jZXNzaW5nIHJpZ2h0IG5vdywgc28gc3luY2hyb25pemUgd2l0aCBwcm9jZXNzKCkuCisg
ICAgICAgIE11dGV4TG9ja2VyIGxvY2tlcihtX3Byb2Nlc3NMb2NrKTsKKyAgICAgICAgdW5pbml0
aWFsaXplKCk7CisgICAgfQorICAgIAorICAgIC8vIFRoaXMgd2lsbCBwcm9wYWdhdGUgdGhlIGNo
YW5uZWwgY291bnQgdG8gYW55IG5vZGVzIGNvbm5lY3RlZCBmdXJ0aGVyIGRvd24gdGhlIGNoYWlu
Li4uCisgICAgb3V0cHV0KDApLT5zZXROdW1iZXJPZkNoYW5uZWxzKG51bWJlck9mQ2hhbm5lbHMp
OworCisgICAgLy8gUmUtaW5pdGlhbGl6ZSB0aGUgcHJvY2Vzc29yIHdpdGggdGhlIG5ldyBjaGFu
bmVsIGNvdW50LgorICAgIHByb2Nlc3NvcigpLT5zZXROdW1iZXJPZkNoYW5uZWxzKG51bWJlck9m
Q2hhbm5lbHMpOworICAgIGluaXRpYWxpemUoKTsKK30KKwordW5zaWduZWQgQXVkaW9CYXNpY1By
b2Nlc3Nvck5vZGU6Om51bWJlck9mQ2hhbm5lbHMoKQoreworICAgIHJldHVybiBvdXRwdXQoMCkt
Pm51bWJlck9mQ2hhbm5lbHMoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5k
aWYgLy8gRU5BQkxFKFdFQl9BVURJTykKSW5kZXg6IFdlYkNvcmUvd2ViYXVkaW8vQXVkaW9CYXNp
Y1Byb2Nlc3Nvck5vZGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3dlYmF1ZGlvL0F1ZGlvQmFz
aWNQcm9jZXNzb3JOb2RlLmgJKHJldmlzaW9uIDApCisrKyBXZWJDb3JlL3dlYmF1ZGlvL0F1ZGlv
QmFzaWNQcm9jZXNzb3JOb2RlLmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNzIgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiAgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqIDMuICBOZWl0aGVyIHRoZSBuYW1lIG9mIEFwcGxlIENvbXB1dGVy
LCBJbmMuICgiQXBwbGUiKSBub3IgdGhlIG5hbWVzIG9mCisgKiAgICAgaXRzIGNvbnRyaWJ1dG9y
cyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZAorICog
ICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVy
bWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJ
VFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICog
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1Ig
SVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwg
SU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMK
KyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORAorICogT04gQU5Z
IFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgorICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZu
ZGVmIEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlX2gKKyNkZWZpbmUgQXVkaW9CYXNpY1Byb2Nlc3Nv
ck5vZGVfaAorCisjaW5jbHVkZSAiQXVkaW9Ob2RlLmgiCisjaW5jbHVkZSA8d3RmL1Bhc3NSZWZQ
dHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorI2luY2x1ZGUgPHd0Zi9UaHJlYWRp
bmcuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBBdWRpb0J1czsKK2NsYXNzIEF1
ZGlvTm9kZUlucHV0OworY2xhc3MgQXVkaW9Qcm9jZXNzb3I7CisgICAgCisvLyBBdWRpb0Jhc2lj
UHJvY2Vzc29yTm9kZSBpcyBhbiBBdWRpb05vZGUgd2l0aCBvbmUgaW5wdXQgYW5kIG9uZSBvdXRw
dXQgd2hlcmUgdGhlIGlucHV0IGFuZCBvdXRwdXQgaGF2ZSB0aGUgc2FtZSBudW1iZXIgb2YgY2hh
bm5lbHMuCitjbGFzcyBBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZSA6IHB1YmxpYyBBdWRpb05vZGUg
eworcHVibGljOgorICAgIEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlKEF1ZGlvQ29udGV4dCosIGRv
dWJsZSBzYW1wbGVSYXRlKTsKKworICAgIC8vIEF1ZGlvTm9kZQorICAgIHZpcnR1YWwgdm9pZCBw
cm9jZXNzKHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpOworICAgIHZpcnR1YWwgdm9pZCBwdWxsSW5w
dXRzKHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpOworICAgIHZpcnR1YWwgdm9pZCByZXNldCgpOwor
ICAgIHZpcnR1YWwgdm9pZCBpbml0aWFsaXplKCk7CisgICAgdmlydHVhbCB2b2lkIHVuaW5pdGlh
bGl6ZSgpOworCisgICAgLy8gQ2FsbGVkIGluIHRoZSBtYWluIHRocmVhZCB3aGVuIHRoZSBudW1i
ZXIgb2YgY2hhbm5lbHMgZm9yIHRoZSBpbnB1dCBtYXkgaGF2ZSBjaGFuZ2VkLgorICAgIHZpcnR1
YWwgdm9pZCBjaGVja051bWJlck9mQ2hhbm5lbHNGb3JJbnB1dChBdWRpb05vZGVJbnB1dCopOwor
CisgICAgLy8gUmV0dXJucyB0aGUgbnVtYmVyIG9mIGNoYW5uZWxzIGZvciBib3RoIHRoZSBpbnB1
dCBhbmQgdGhlIG91dHB1dC4KKyAgICB1bnNpZ25lZCBudW1iZXJPZkNoYW5uZWxzKCk7CisKK3By
b3RlY3RlZDoKKyAgICBBdWRpb1Byb2Nlc3NvciogcHJvY2Vzc29yKCkgeyByZXR1cm4gbV9wcm9j
ZXNzb3IuZ2V0KCk7IH0KKyAgICBPd25QdHI8QXVkaW9Qcm9jZXNzb3I+IG1fcHJvY2Vzc29yOwor
Citwcml2YXRlOgorICAgIC8vIFRoaXMgc3luY2hyb25pemVzIGxpdmUgY2hhbm5lbCBjb3VudCBj
aGFuZ2VzIHdoaWNoIHJlcXVpcmUgYW4gdW5pbml0aWFsaXphdGlvbiAvIHJlLWluaXRpYWxpemF0
aW9uLgorICAgIG11dGFibGUgTXV0ZXggbV9wcm9jZXNzTG9jazsKK307CisKK30gLy8gbmFtZXNw
YWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlX2gK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>69704</attachid>
            <date>2010-10-04 15:41:23 -0700</date>
            <delta_ts>2010-10-05 11:48:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-46495-20101004154121.patch</filename>
            <type>text/plain</type>
            <size>9525</size>
            <attacher name="Chris Rogers">crogers</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2OTA0MykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjQgQEAKKzIwMTAtMTAtMDQgIENocmlzIFJvZ2VycyAgPGNyb2dlcnNAZ29vZ2xl
LmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGQgQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGUgZmlsZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ2NDk1CisKKyAgICAgICAgTm8gbmV3IHRlc3RzIHNp
bmNlIGF1ZGlvIEFQSSBpcyBub3QgeWV0IGltcGxlbWVudGVkLgorCisgICAgICAgICogd2ViYXVk
aW8vQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGUuY3BwOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZSk6CisgICAg
ICAgIChXZWJDb3JlOjpBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZTo6aW5pdGlhbGl6ZSk6CisgICAg
ICAgIChXZWJDb3JlOjpBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZTo6dW5pbml0aWFsaXplKToKKyAg
ICAgICAgKFdlYkNvcmU6OkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpwcm9jZXNzKToKKyAgICAg
ICAgKFdlYkNvcmU6OkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpwdWxsSW5wdXRzKToKKyAgICAg
ICAgKFdlYkNvcmU6OkF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpyZXNldCk6CisgICAgICAgIChX
ZWJDb3JlOjpBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZTo6Y2hlY2tOdW1iZXJPZkNoYW5uZWxzRm9y
SW5wdXQpOgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6Om51bWJl
ck9mQ2hhbm5lbHMpOgorICAgICAgICAqIHdlYmF1ZGlvL0F1ZGlvQmFzaWNQcm9jZXNzb3JOb2Rl
Lmg6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6OnBy
b2Nlc3Nvcik6CisKIDIwMTAtMTAtMDQgIEp1c3RpbiBTY2h1aCAgPGpzY2h1aEBjaHJvbWl1bS5v
cmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgSmFtZXMgUm9iaW5zb24uCkluZGV4OiBXZWJDb3Jl
L3dlYmF1ZGlvL0F1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJD
b3JlL3dlYmF1ZGlvL0F1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlLmNwcAkocmV2aXNpb24gMCkKKysr
IFdlYkNvcmUvd2ViYXVkaW8vQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGUuY3BwCShyZXZpc2lvbiAw
KQpAQCAtMCwwICsxLDE0NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCwgR29vZ2xlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuICBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0
aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Cisg
KiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUg
SVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycg
QU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xB
SU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTIEJF
IExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUworICogKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBBTlkgVEhFT1JZIE9GIExJQUJJTElU
WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlICJjb25maWcuaCIKKwor
I2lmIEVOQUJMRShXRUJfQVVESU8pCisKKyNpbmNsdWRlICJBdWRpb0Jhc2ljUHJvY2Vzc29yTm9k
ZS5oIgorCisjaW5jbHVkZSAiQXVkaW9CdXMuaCIKKyNpbmNsdWRlICJBdWRpb05vZGVJbnB1dC5o
IgorI2luY2x1ZGUgIkF1ZGlvTm9kZU91dHB1dC5oIgorI2luY2x1ZGUgIkF1ZGlvUHJvY2Vzc29y
LmgiCisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6OkF1
ZGlvQmFzaWNQcm9jZXNzb3JOb2RlKEF1ZGlvQ29udGV4dCogY29udGV4dCwgZG91YmxlIHNhbXBs
ZVJhdGUpCisgICAgOiBBdWRpb05vZGUoY29udGV4dCwgc2FtcGxlUmF0ZSkKK3sKKyAgICBhZGRJ
bnB1dChhZG9wdFB0cihuZXcgQXVkaW9Ob2RlSW5wdXQodGhpcykpKTsKKyAgICBhZGRPdXRwdXQo
YWRvcHRQdHIobmV3IEF1ZGlvTm9kZU91dHB1dCh0aGlzLCAwKSkpOworCisgICAgLy8gVGhlIHN1
YmNsYXNzIG11c3QgY3JlYXRlIG1fcHJvY2Vzc29yLgorfQorCit2b2lkIEF1ZGlvQmFzaWNQcm9j
ZXNzb3JOb2RlOjppbml0aWFsaXplKCkKK3sKKyAgICBpZiAoaXNJbml0aWFsaXplZCgpKQorICAg
ICAgICByZXR1cm47CisKKyAgICBBU1NFUlQocHJvY2Vzc29yKCkpOworICAgIHByb2Nlc3Nvcigp
LT5pbml0aWFsaXplKCk7CisKKyAgICBBdWRpb05vZGU6OmluaXRpYWxpemUoKTsKK30KKwordm9p
ZCBBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZTo6dW5pbml0aWFsaXplKCkKK3sKKyAgICBpZiAoIWlz
SW5pdGlhbGl6ZWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgQVNTRVJUKHByb2Nlc3Nvcigp
KTsKKyAgICBwcm9jZXNzb3IoKS0+dW5pbml0aWFsaXplKCk7CisKKyAgICBBdWRpb05vZGU6OnVu
aW5pdGlhbGl6ZSgpOworfQorCit2b2lkIEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpwcm9jZXNz
KHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCit7CisgICAgQXVkaW9CdXMqIGRlc3RpbmF0aW9uQnVz
ID0gb3V0cHV0KDApLT5idXMoKTsKKyAgICAKKyAgICAvLyBUaGUgcmVhbHRpbWUgdGhyZWFkIGNh
bid0IGJsb2NrIG9uIHRoaXMgbG9jaywgc28gd2UgY2FsbCB0cnlMb2NrKCkgaW5zdGVhZC4KKyAg
ICBpZiAobV9wcm9jZXNzTG9jay50cnlMb2NrKCkpIHsKKyAgICAgICAgaWYgKCFpc0luaXRpYWxp
emVkKCkgfHwgIXByb2Nlc3NvcigpKQorICAgICAgICAgICAgZGVzdGluYXRpb25CdXMtPnplcm8o
KTsKKyAgICAgICAgZWxzZSB7CisgICAgICAgICAgICBBdWRpb0J1cyogc291cmNlQnVzID0gaW5w
dXQoMCktPmJ1cygpOworCisgICAgICAgICAgICAvLyBGSVhNRTogaWYgd2UgdGFrZSAidGFpbCB0
aW1lIiBpbnRvIGFjY291bnQsIHRoZW4gd2UgY2FuIGF2b2lkIGNhbGxpbmcgcHJvY2Vzc29yKCkt
PnByb2Nlc3MoKSBvbmNlIHRoZSB0YWlsIGRpZXMgZG93bi4KKyAgICAgICAgICAgIGlmICghaW5w
dXQoMCktPmlzQ29ubmVjdGVkKCkpCisgICAgICAgICAgICAgICAgc291cmNlQnVzLT56ZXJvKCk7
CisgICAgICAgICAgICAKKyAgICAgICAgICAgIHByb2Nlc3NvcigpLT5wcm9jZXNzKHNvdXJjZUJ1
cywgZGVzdGluYXRpb25CdXMsIGZyYW1lc1RvUHJvY2Vzcyk7ICAKKyAgICAgICAgfQorCisgICAg
ICAgIG1fcHJvY2Vzc0xvY2sudW5sb2NrKCk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgLy8gVG9v
IGJhZCAtIHRoZSB0cnlMb2NrKCkgZmFpbGVkLiAgV2UgbXVzdCBiZSBpbiB0aGUgbWlkZGxlIG9m
IHJlLWNvbm5lY3RpbmcgYW5kIHdlcmUgYWxyZWFkeSBvdXRwdXR0aW5nIHNpbGVuY2UgYW55d2F5
Li4uCisgICAgICAgIGRlc3RpbmF0aW9uQnVzLT56ZXJvKCk7CisgICAgfQorfQorCisvLyBOaWNl
IG9wdGltaXphdGlvbiBpbiB0aGUgdmVyeSBjb21tb24gY2FzZSBhbGxvd2luZyBmb3IgImluLXBs
YWNlIiBwcm9jZXNzaW5nCit2b2lkIEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlOjpwdWxsSW5wdXRz
KHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpCit7CisgICAgLy8gUmVuZGVyIGlucHV0IHN0cmVhbSAt
IHN1Z2dlc3QgdG8gdGhlIGlucHV0IHRvIHJlbmRlciBkaXJlY3RseSBpbnRvIG91dHB1dCBidXMg
Zm9yIGluLXBsYWNlIHByb2Nlc3NpbmcgaW4gcHJvY2VzcygpIGlmIHBvc3NpYmxlLgorICAgIGlu
cHV0KDApLT5wdWxsKG91dHB1dCgwKS0+YnVzKCksIGZyYW1lc1RvUHJvY2Vzcyk7Cit9CisKK3Zv
aWQgQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6OnJlc2V0KCkKK3sKKyAgICBpZiAocHJvY2Vzc29y
KCkpCisgICAgICAgIHByb2Nlc3NvcigpLT5yZXNldCgpOworfQorCisvLyBBcyBzb29uIGFzIHdl
IGtub3cgdGhlIGNoYW5uZWwgY291bnQgb2Ygb3VyIGlucHV0LCB3ZSBjYW4gbGF6aWx5IGluaXRp
YWxpemUuCisvLyBTb21ldGltZXMgdGhpcyBtYXkgYmUgY2FsbGVkIG1vcmUgdGhhbiBvbmNlIHdp
dGggZGlmZmVyZW50IGNoYW5uZWwgY291bnRzLCBpbiB3aGljaCBjYXNlIHdlIG11c3Qgc2FmZWx5
CisvLyB1bmluaXRpYWxpemUgYW5kIHRoZW4gcmUtaW5pdGlhbGl6ZSB3aXRoIHRoZSBuZXcgY2hh
bm5lbCBjb3VudC4KK3ZvaWQgQXVkaW9CYXNpY1Byb2Nlc3Nvck5vZGU6OmNoZWNrTnVtYmVyT2ZD
aGFubmVsc0ZvcklucHV0KEF1ZGlvTm9kZUlucHV0KiBpbnB1dCkKK3sKKyAgICBBU1NFUlQoaXNN
YWluVGhyZWFkKCkpOworICAgIAorICAgIEFTU0VSVChpbnB1dCA9PSB0aGlzLT5pbnB1dCgwKSk7
CisgICAgaWYgKGlucHV0ICE9IHRoaXMtPmlucHV0KDApKQorICAgICAgICByZXR1cm47CisKKyAg
ICBBU1NFUlQocHJvY2Vzc29yKCkpOworICAgIGlmICghcHJvY2Vzc29yKCkpCisgICAgICAgIHJl
dHVybjsKKworICAgIHVuc2lnbmVkIG51bWJlck9mQ2hhbm5lbHMgPSBpbnB1dC0+bnVtYmVyT2ZD
aGFubmVscygpOworICAgIAorICAgIGlmIChpc0luaXRpYWxpemVkKCkgJiYgbnVtYmVyT2ZDaGFu
bmVscyAhPSBvdXRwdXQoMCktPm51bWJlck9mQ2hhbm5lbHMoKSkgeworICAgICAgICAvLyBXZSdy
ZSBhbHJlYWR5IGluaXRpYWxpemVkIGJ1dCB0aGUgY2hhbm5lbCBjb3VudCBoYXMgY2hhbmdlZC4K
KyAgICAgICAgLy8gV2UgbmVlZCB0byBiZSBjYXJlZnVsIHNpbmNlIHdlIG1heSBiZSBhY3RpdmVs
eSBwcm9jZXNzaW5nIHJpZ2h0IG5vdywgc28gc3luY2hyb25pemUgd2l0aCBwcm9jZXNzKCkuCisg
ICAgICAgIE11dGV4TG9ja2VyIGxvY2tlcihtX3Byb2Nlc3NMb2NrKTsKKyAgICAgICAgdW5pbml0
aWFsaXplKCk7CisgICAgfQorICAgIAorICAgIC8vIFRoaXMgd2lsbCBwcm9wYWdhdGUgdGhlIGNo
YW5uZWwgY291bnQgdG8gYW55IG5vZGVzIGNvbm5lY3RlZCBmdXJ0aGVyIGRvd24gdGhlIGNoYWlu
Li4uCisgICAgb3V0cHV0KDApLT5zZXROdW1iZXJPZkNoYW5uZWxzKG51bWJlck9mQ2hhbm5lbHMp
OworCisgICAgLy8gUmUtaW5pdGlhbGl6ZSB0aGUgcHJvY2Vzc29yIHdpdGggdGhlIG5ldyBjaGFu
bmVsIGNvdW50LgorICAgIHByb2Nlc3NvcigpLT5zZXROdW1iZXJPZkNoYW5uZWxzKG51bWJlck9m
Q2hhbm5lbHMpOworICAgIGluaXRpYWxpemUoKTsKK30KKwordW5zaWduZWQgQXVkaW9CYXNpY1By
b2Nlc3Nvck5vZGU6Om51bWJlck9mQ2hhbm5lbHMoKQoreworICAgIHJldHVybiBvdXRwdXQoMCkt
Pm51bWJlck9mQ2hhbm5lbHMoKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorCisjZW5k
aWYgLy8gRU5BQkxFKFdFQl9BVURJTykKSW5kZXg6IFdlYkNvcmUvd2ViYXVkaW8vQXVkaW9CYXNp
Y1Byb2Nlc3Nvck5vZGUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3dlYmF1ZGlvL0F1ZGlvQmFz
aWNQcm9jZXNzb3JOb2RlLmgJKHJldmlzaW9uIDApCisrKyBXZWJDb3JlL3dlYmF1ZGlvL0F1ZGlv
QmFzaWNQcm9jZXNzb3JOb2RlLmgJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNjggQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTAsIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiAgUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcg
ZGlzY2xhaW1lci4KKyAqIDIuICBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2Yg
Y29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9j
dW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3Ry
aWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4g
QU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFIElNUExJ
RUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQ
UExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RCBPTgorICogQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTCisgKiBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjaWZuZGVmIEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlX2gKKyNkZWZpbmUgQXVkaW9C
YXNpY1Byb2Nlc3Nvck5vZGVfaAorCisjaW5jbHVkZSAiQXVkaW9Ob2RlLmgiCisjaW5jbHVkZSA8
d3RmL1Bhc3NSZWZQdHIuaD4KKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorI2luY2x1ZGUg
PHd0Zi9UaHJlYWRpbmcuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBBdWRpb0J1
czsKK2NsYXNzIEF1ZGlvTm9kZUlucHV0OworY2xhc3MgQXVkaW9Qcm9jZXNzb3I7CisgICAgCisv
LyBBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZSBpcyBhbiBBdWRpb05vZGUgd2l0aCBvbmUgaW5wdXQg
YW5kIG9uZSBvdXRwdXQgd2hlcmUgdGhlIGlucHV0IGFuZCBvdXRwdXQgaGF2ZSB0aGUgc2FtZSBu
dW1iZXIgb2YgY2hhbm5lbHMuCitjbGFzcyBBdWRpb0Jhc2ljUHJvY2Vzc29yTm9kZSA6IHB1Ymxp
YyBBdWRpb05vZGUgeworcHVibGljOgorICAgIEF1ZGlvQmFzaWNQcm9jZXNzb3JOb2RlKEF1ZGlv
Q29udGV4dCosIGRvdWJsZSBzYW1wbGVSYXRlKTsKKworICAgIC8vIEF1ZGlvTm9kZQorICAgIHZp
cnR1YWwgdm9pZCBwcm9jZXNzKHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpOworICAgIHZpcnR1YWwg
dm9pZCBwdWxsSW5wdXRzKHNpemVfdCBmcmFtZXNUb1Byb2Nlc3MpOworICAgIHZpcnR1YWwgdm9p
ZCByZXNldCgpOworICAgIHZpcnR1YWwgdm9pZCBpbml0aWFsaXplKCk7CisgICAgdmlydHVhbCB2
b2lkIHVuaW5pdGlhbGl6ZSgpOworCisgICAgLy8gQ2FsbGVkIGluIHRoZSBtYWluIHRocmVhZCB3
aGVuIHRoZSBudW1iZXIgb2YgY2hhbm5lbHMgZm9yIHRoZSBpbnB1dCBtYXkgaGF2ZSBjaGFuZ2Vk
LgorICAgIHZpcnR1YWwgdm9pZCBjaGVja051bWJlck9mQ2hhbm5lbHNGb3JJbnB1dChBdWRpb05v
ZGVJbnB1dCopOworCisgICAgLy8gUmV0dXJucyB0aGUgbnVtYmVyIG9mIGNoYW5uZWxzIGZvciBi
b3RoIHRoZSBpbnB1dCBhbmQgdGhlIG91dHB1dC4KKyAgICB1bnNpZ25lZCBudW1iZXJPZkNoYW5u
ZWxzKCk7CisKK3Byb3RlY3RlZDoKKyAgICBBdWRpb1Byb2Nlc3NvciogcHJvY2Vzc29yKCkgeyBy
ZXR1cm4gbV9wcm9jZXNzb3IuZ2V0KCk7IH0KKyAgICBPd25QdHI8QXVkaW9Qcm9jZXNzb3I+IG1f
cHJvY2Vzc29yOworCitwcml2YXRlOgorICAgIC8vIFRoaXMgc3luY2hyb25pemVzIGxpdmUgY2hh
bm5lbCBjb3VudCBjaGFuZ2VzIHdoaWNoIHJlcXVpcmUgYW4gdW5pbml0aWFsaXphdGlvbiAvIHJl
LWluaXRpYWxpemF0aW9uLgorICAgIG11dGFibGUgTXV0ZXggbV9wcm9jZXNzTG9jazsKK307CisK
K30gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKworI2VuZGlmIC8vIEF1ZGlvQmFzaWNQcm9jZXNzb3JO
b2RlX2gK
</data>

          </attachment>
      

    </bug>

</bugzilla>