<?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>47586</bug_id>
          
          <creation_ts>2010-10-13 06:00:53 -0700</creation_ts>
          <short_desc>Get CLIENT_BASED_GEOLOCATION building</short_desc>
          <delta_ts>2010-10-13 11:02:45 -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>Platform</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</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>
          
          <blocked>45752</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="John Knottenbelt">jknotten</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bulach</cc>
    
    <cc>commit-queue</cc>
    
    <cc>joth</cc>
    
    <cc>steveblock</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>293376</commentid>
    <comment_count>0</comment_count>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-10-13 06:00:53 -0700</bug_when>
    <thetext>In preparation for introducing client-based geolocation classes, get the chromium port building and running with CLIENT_BASED_GEOLOCATION</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>293387</commentid>
    <comment_count>1</comment_count>
      <attachid>70604</attachid>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-10-13 06:22:33 -0700</bug_when>
    <thetext>Created attachment 70604
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>293396</commentid>
    <comment_count>2</comment_count>
      <attachid>70604</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-10-13 06:40:42 -0700</bug_when>
    <thetext>Comment on attachment 70604
Patch

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

&gt; WebKitTools/DumpRenderTree/chromium/LayoutTestController.cpp:1501
&gt; +#if !ENABLE(CLIENT_BASED_GEOLOCATION)

Do you need these guards now that you&apos;ve stubbed out the client-based impl? If you do, I think the following style is better ...
#if client-based
    // FIXME
#else
    foo();
#endif</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>293422</commentid>
    <comment_count>3</comment_count>
      <attachid>70610</attachid>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-10-13 07:36:00 -0700</bug_when>
    <thetext>Created attachment 70610
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>293423</commentid>
    <comment_count>4</comment_count>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-10-13 07:37:01 -0700</bug_when>
    <thetext>You are right, I do not need the guards in LayoutTestController.cpp, well spotted.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>293424</commentid>
    <comment_count>5</comment_count>
      <attachid>70610</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-10-13 07:40:56 -0700</bug_when>
    <thetext>Comment on attachment 70610
Patch

LGTM, but best to wait for a review from chromium.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>293436</commentid>
    <comment_count>6</comment_count>
    <who name="Marcus Bulach">bulach</who>
    <bug_when>2010-10-13 08:18:30 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 70610 [details])
&gt; LGTM, but best to wait for a review from chromium.

looks fine by me as well, just two minor suggestions:

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

&gt; WebCore/WebCore.gyp/WebCore.gyp:1207
&gt; +            [&apos;exclude&apos;, &apos;/GeolocationService.*$&apos;],

I&apos;m not too familiar with gyp, but would this exclude platform/chromium/GeolocationServiceChromium.*$ ?

you may also want to add something like:
#if ENABLE(CLIENT_BASED_GEOLOCATION)
#error &quot;This file should not be compiled when ENABLE(CLIENT_BASED_GEOLOCATION)&quot;
#endif  // ENABLE(CLIENT_BASED_GEOLOCATION)

to those files, so that it makes a clearer documentation (on top of removing the entry points..)

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

&gt; WebKit/chromium/src/WebGeolocationServiceMock.cpp:46
&gt; +// FIXME: Implement mock bindings for client-based geolocation

and remove WebGeolocationServiceMockClientBasedImpl?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>293446</commentid>
    <comment_count>7</comment_count>
      <attachid>70613</attachid>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-10-13 09:12:47 -0700</bug_when>
    <thetext>Created attachment 70613
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>293447</commentid>
    <comment_count>8</comment_count>
      <attachid>70613</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-10-13 09:22:56 -0700</bug_when>
    <thetext>Comment on attachment 70613
Patch

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

&gt; WebCore/platform/gtk/GeolocationServiceGtk.cpp:25
&gt; +#endif // ENABLE(CLIENT_BASED_GEOLOCATION)

Sorry to be a pain, but I don&apos;t think we should be making these changes to non-Chromium files. It&apos;s making assumptions about the build systems of other platforms.

Is there a need for a guard in these files? Will building this file when !client-based cause a compile error? If not, let&apos;s leave it alone. If so, we should add guards around the code like elsewhere.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>293452</commentid>
    <comment_count>9</comment_count>
      <attachid>70616</attachid>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-10-13 09:30:36 -0700</bug_when>
    <thetext>Created attachment 70616
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>293531</commentid>
    <comment_count>10</comment_count>
      <attachid>70616</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-13 11:02:40 -0700</bug_when>
    <thetext>Comment on attachment 70616
Patch

Clearing flags on attachment: 70616

Committed r69673: &lt;http://trac.webkit.org/changeset/69673&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>293532</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-13 11:02:45 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>70604</attachid>
            <date>2010-10-13 06:22:33 -0700</date>
            <delta_ts>2010-10-13 07:35:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-47586-20101013142231.patch</filename>
            <type>text/plain</type>
            <size>13399</size>
            <attacher name="John Knottenbelt">jknotten</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
N2NmYTQ1YmI3YTEyNTNkZTliN2VmOGM0ODAxNDVkYzcyZTg0YWQzMi4uMmIxMjYyYTMxNjg5YThi
ZjEwOGIyMjdiMTMzMjk3NzA3OTI3MmFmMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMC0xMC0xMyAgSm9o
biBLbm90dGVuYmVsdCAgPGprbm90dGVuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXJzdCBzdGVwIHRvd2FyZHMgY2xpZW50
LWJhc2VkIEdlb2xvY2F0aW9uIGluIENocm9taXVtLiBCdWlsZAorICAgICAgICBmaXhlcyBmb3Ig
Q0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OIHByZXByb2Nlc3NvciBmZWF0dXJlIGRlZmluZS4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ3NTg2CisKKyAg
ICAgICAgKiBXZWJDb3JlLmd5cC9XZWJDb3JlLmd5cDoKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJv
bWl1bS9DaHJvbWl1bUJyaWRnZS5oOgorCiAyMDEwLTEwLTEzICBTdGV2ZSBCbG9jayAgPHN0ZXZl
YmxvY2tAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlh
a292LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmd5cC9XZWJDb3JlLmd5cCBiL1dlYkNv
cmUvV2ViQ29yZS5neXAvV2ViQ29yZS5neXAKaW5kZXggMmY0NTc5OWE5ZDQyY2E4MTY1NDAwNDhm
ZGYwZjgwNmZkMmU2ZGZiMC4uYWIwZDMzODNmNGVmOTVjNGM1NWRlYWRjYzc3ZjRmZGQ2YjUwZGNj
MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLmd5cC9XZWJDb3JlLmd5cAorKysgYi9XZWJD
b3JlL1dlYkNvcmUuZ3lwL1dlYkNvcmUuZ3lwCkBAIC0xMjAyLDYgKzEyMDIsMTEgQEAKICAgICAg
ICAgICAgIFsnZXhjbHVkZScsICdQb3NpeFxcLmNwcCQnXSwKICAgICAgICAgICBdLAogICAgICAg
ICB9XSwKKyAgICAgICAgWyciRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTj0xIiBpbiBm
ZWF0dXJlX2RlZmluZXMnLCB7CisgICAgICAgICAgJ3NvdXJjZXMvJzogWworICAgICAgICAgICAg
WydleGNsdWRlJywgJy9HZW9sb2NhdGlvblNlcnZpY2UuKiQnXSwKKyAgICAgICAgICBdLAorICAg
ICAgICB9XSwKICAgICAgIF0sCiAgICAgfSwKICAgICB7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3Bs
YXRmb3JtL2Nocm9taXVtL0Nocm9taXVtQnJpZGdlLmggYi9XZWJDb3JlL3BsYXRmb3JtL2Nocm9t
aXVtL0Nocm9taXVtQnJpZGdlLmgKaW5kZXggMWM4MTllNWI5OTNmNWNhZThkZTViZmVmNWExMmYx
ODgwZmRjYTZiMy4uNzRiYWQwNDRmNTk5MDg2ZTgwZDI1NTFlNjFjM2E5ZjA2MGU1YWQ0ZiAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9DaHJvbWl1bUJyaWRnZS5oCisrKyBi
L1dlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vQ2hyb21pdW1CcmlkZ2UuaApAQCAtMTU0LDkgKzE1
NCwxMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIC8vIEZvcm1zIC0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAg
ICAgIHN0YXRpYyB2b2lkIG5vdGlmeUZvcm1TdGF0ZUNoYW5nZWQoY29uc3QgRG9jdW1lbnQqKTsK
IAorI2lmICFFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQogICAgICAgICAvLyBHZW9s
b2NhdGlvbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLQogICAgICAgICBzdGF0aWMgR2VvbG9jYXRpb25TZXJ2aWNlQnJpZGdlKiBjcmVhdGVH
ZW9sb2NhdGlvblNlcnZpY2VCcmlkZ2UoR2VvbG9jYXRpb25TZXJ2aWNlQ2hyb21pdW0qKTsKLQor
I2VuZGlmCiAgICAgICAgIC8vIERhdGFiYXNlcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAgICAgIC8vIFJldHVybnMgYSBoYW5k
bGUgdG8gdGhlIERCIGZpbGUgYW5kIG9vcHRpb25hbGx5IGEgaGFuZGxlIHRvIGl0cyBjb250YWlu
aW5nIGRpcmVjdG9yeQogICAgICAgICBzdGF0aWMgUGxhdGZvcm1GaWxlSGFuZGxlIGRhdGFiYXNl
T3BlbkZpbGUoY29uc3QgU3RyaW5nJiB2ZnNGbGVOYW1lLCBpbnQgZGVzaXJlZEZsYWdzKTsKZGlm
ZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21pdW0vQ2hh
bmdlTG9nCmluZGV4IDE4MGUzMzBhNzgyOWExOTRiZWU0ZTIzN2RmY2Q3MmRjNzU3Yjg4NzEuLjU3
YWVlZjIwMjUyYmJiYWQ5MzVkNmE3NDExNjIyOGM5MDc3ODA5N2QgMTAwNjQ0Ci0tLSBhL1dlYktp
dC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDIyIEBACisyMDEwLTEwLTEzICBKb2huIEtub3R0ZW5iZWx0ICA8amtub3R0ZW5AY2hy
b21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEZpcnN0IHN0ZXAgdG93YXJkcyBjbGllbnQtYmFzZWQgR2VvbG9jYXRpb24gaW4gQ2hyb21p
dW0uIEJ1aWxkCisgICAgICAgIGZpeGVzIGZvciBDTElFTlRfQkFTRURfR0VPTE9DQVRJT04gcHJl
cHJvY2Vzc29yIGZlYXR1cmUgZGVmaW5lLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NDc1ODYKKworICAgICAgICAqIFdlYktpdC5neXA6CisgICAgICAg
ICogc3JjL0Nocm9tZUNsaWVudEltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpDaHJvbWVDbGll
bnRJbXBsOjpyZXF1ZXN0R2VvbG9jYXRpb25QZXJtaXNzaW9uRm9yRnJhbWUpOgorICAgICAgICAo
V2ViS2l0OjpDaHJvbWVDbGllbnRJbXBsOjpjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1
ZXN0Rm9yRnJhbWUpOgorICAgICAgICAqIHNyYy9DaHJvbWl1bUJyaWRnZS5jcHA6CisgICAgICAg
ICogc3JjL1dlYkdlb2xvY2F0aW9uU2VydmljZU1vY2suY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrOjpjcmVhdGVXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2Nr
KToKKyAgICAgICAgKFdlYktpdDo6V2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jazo6c2V0TW9ja0dl
b2xvY2F0aW9uUGVybWlzc2lvbik6CisgICAgICAgIChXZWJLaXQ6OldlYkdlb2xvY2F0aW9uU2Vy
dmljZU1vY2s6OnNldE1vY2tHZW9sb2NhdGlvblBvc2l0aW9uKToKKyAgICAgICAgKFdlYktpdDo6
V2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jazo6c2V0TW9ja0dlb2xvY2F0aW9uRXJyb3IpOgorCiAy
MDEwLTEwLTEyICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAZ29vZ2xlLmNvbT4KIAogICAgICAgICBV
bnJldmlld2VkLiBGaXhlcyBmb3IgYWxsIFdlYkdMIGNvbnRlbnQgY2F1c2luZyBhc3NlcnRpb24g
ZmFpbHVyZXMKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9XZWJLaXQuZ3lwIGIvV2ViS2l0
L2Nocm9taXVtL1dlYktpdC5neXAKaW5kZXggNzQ4Njg4MTY5ODFiMWI3ODRmZTQ1ZjU4Njc0MWEz
Njc0NWE3MmU4Mi4uOWEwM2I5OGM0NWI1YzI5OGFlZWVhNTFhNmQ1MjdlNjk5ZmE5YzNhZiAxMDA2
NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL1dlYktpdC5neXAKKysrIGIvV2ViS2l0L2Nocm9taXVt
L1dlYktpdC5neXAKQEAgLTY0Niw2ICs2NDYsMTIgQEAKICAgICAgICAgICAgICAgICAgICAgICAg
IH1dLAogICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgIH1dLAorICAgICAg
ICAgICAgICAgIFsnIkVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT049MSIgaW4gZmVhdHVy
ZV9kZWZpbmVzJywgeworICAgICAgICAgICAgICAgICAgICAnc291cmNlcy8nOiBbCisgICAgICAg
ICAgICAgICAgICAgICAgICBbJ2V4Y2x1ZGUnLCAnV2ViR2VvbG9jYXRpb25TZXJ2aWNlLiokJ10s
CisgICAgICAgICAgICAgICAgICAgICAgICBbJ2luY2x1ZGUnLCAnV2ViR2VvbG9jYXRpb25TZXJ2
aWNlTW9jay4qJ10sCisgICAgICAgICAgICAgICAgICAgIF0sCisgICAgICAgICAgICAgICAgfV0K
ICAgICAgICAgICAgIF0sCiAgICAgICAgIH0sCiAKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1
bS9zcmMvQ2hyb21lQ2xpZW50SW1wbC5jcHAgYi9XZWJLaXQvY2hyb21pdW0vc3JjL0Nocm9tZUNs
aWVudEltcGwuY3BwCmluZGV4IDU3NGE5ZjY4NjNmZTI4NWIzOTQ3ZDQ3ZGM1YWQ5YzJmMTllYjI2
NjEuLjM1MDM3MWFkNDljMWM3ZmIyYWI5MDE2ZGJiYmY2YzA2YjBkZTcwNTEgMTAwNjQ0Ci0tLSBh
L1dlYktpdC9jaHJvbWl1bS9zcmMvQ2hyb21lQ2xpZW50SW1wbC5jcHAKKysrIGIvV2ViS2l0L2No
cm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBsLmNwcApAQCAtNzcxLDE1ICs3NzEsMjMgQEAgTm90
aWZpY2F0aW9uUHJlc2VudGVyKiBDaHJvbWVDbGllbnRJbXBsOjpub3RpZmljYXRpb25QcmVzZW50
ZXIoKSBjb25zdAogCiB2b2lkIENocm9tZUNsaWVudEltcGw6OnJlcXVlc3RHZW9sb2NhdGlvblBl
cm1pc3Npb25Gb3JGcmFtZShGcmFtZSogZnJhbWUsIEdlb2xvY2F0aW9uKiBnZW9sb2NhdGlvbikK
IHsKKyNpZiBFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQorICAgIC8vIEZJWE1FOiBJ
bXBsZW1lbnQgQ2xpZW50LWJhc2VkIEdlb2xvY2F0aW9uIFBlcm1pc3Npb25zCisjZWxzZQogICAg
IEdlb2xvY2F0aW9uU2VydmljZUNocm9taXVtKiBnZW9sb2NhdGlvblNlcnZpY2UgPSBzdGF0aWNf
Y2FzdDxHZW9sb2NhdGlvblNlcnZpY2VDaHJvbWl1bSo+KGdlb2xvY2F0aW9uLT5nZXRHZW9sb2Nh
dGlvblNlcnZpY2UoKSk7CiAgICAgZ2VvbG9jYXRpb25TZXJ2aWNlLT5nZW9sb2NhdGlvblNlcnZp
Y2VCcmlkZ2UoKS0+YXR0YWNoQnJpZGdlSWZOZWVkZWQoKTsKICAgICBtX3dlYlZpZXctPmNsaWVu
dCgpLT5nZW9sb2NhdGlvblNlcnZpY2UoKS0+cmVxdWVzdFBlcm1pc3Npb25Gb3JGcmFtZShnZW9s
b2NhdGlvblNlcnZpY2UtPmdlb2xvY2F0aW9uU2VydmljZUJyaWRnZSgpLT5nZXRCcmlkZ2VJZCgp
LCBmcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCkpOworI2VuZGlmCiB9CiAKIHZvaWQgQ2hyb21lQ2xp
ZW50SW1wbDo6Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKEZyYW1l
KiBmcmFtZSwgR2VvbG9jYXRpb24qIGdlb2xvY2F0aW9uKQogeworI2lmIEVOQUJMRShDTElFTlRf
QkFTRURfR0VPTE9DQVRJT04pCisgICAgLy8gRklYTUU6IEltcGxlbWVudCBDbGllbnQtYmFzZWQg
R2VvbG9jYXRpb24gUGVybWlzc2lvbnMKKyNlbHNlCiAgICAgR2VvbG9jYXRpb25TZXJ2aWNlQ2hy
b21pdW0qIGdlb2xvY2F0aW9uU2VydmljZSA9IHN0YXRpY19jYXN0PEdlb2xvY2F0aW9uU2Vydmlj
ZUNocm9taXVtKj4oZ2VvbG9jYXRpb24tPmdldEdlb2xvY2F0aW9uU2VydmljZSgpKTsKICAgICBt
X3dlYlZpZXctPmNsaWVudCgpLT5nZW9sb2NhdGlvblNlcnZpY2UoKS0+Y2FuY2VsUGVybWlzc2lv
blJlcXVlc3RGb3JGcmFtZShnZW9sb2NhdGlvblNlcnZpY2UtPmdlb2xvY2F0aW9uU2VydmljZUJy
aWRnZSgpLT5nZXRCcmlkZ2VJZCgpLCBmcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCkpOworI2VuZGlm
CiB9CiAKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCmRpZmYgLS1naXQgYS9XZWJL
aXQvY2hyb21pdW0vc3JjL0Nocm9taXVtQnJpZGdlLmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMv
Q2hyb21pdW1CcmlkZ2UuY3BwCmluZGV4IDAzYWY3YzU4MGJhOTFmZDE3NzYwYjRlMmEwNTg0ZTRh
Y2E3MzdhMmUuLjFjNTg4MjRhM2FmYzc2MDcxNzExNzQwY2RlNWYwZGI5ZDRiNTBkMTQgMTAwNjQ0
Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9zcmMvQ2hyb21pdW1CcmlkZ2UuY3BwCisrKyBiL1dlYktp
dC9jaHJvbWl1bS9zcmMvQ2hyb21pdW1CcmlkZ2UuY3BwCkBAIC04Niw3ICs4NiwxMSBAQAogI2lu
Y2x1ZGUgIlBsYXRmb3JtQ29udGV4dFNraWEuaCIKICNpbmNsdWRlICJQbHVnaW5EYXRhLmgiCiAj
aW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgiCisKKyNpZiAhRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9M
T0NBVElPTikKICNpbmNsdWRlICJXZWJHZW9sb2NhdGlvblNlcnZpY2VCcmlkZ2VJbXBsLmgiCisj
ZW5kaWYKKwogI2luY2x1ZGUgIldvcmtlci5oIgogI2luY2x1ZGUgIldvcmtlckNvbnRleHRQcm94
eS5oIgogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CkBAIC00NjUsMTIgKzQ2OSwxNCBAQCBi
b29sIENocm9taXVtQnJpZGdlOjpsb2FkRm9udChOU0ZvbnQqIHNyY0ZvbnQsIEFUU0ZvbnRDb250
YWluZXJSZWYqIG91dCkKIH0KICNlbmRpZgogCisjaWYgIUVOQUJMRShDTElFTlRfQkFTRURfR0VP
TE9DQVRJT04pCiAvLyBHZW9sb2NhdGlvbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIEdlb2xvY2F0aW9uU2VydmljZUJy
aWRnZSogQ2hyb21pdW1CcmlkZ2U6OmNyZWF0ZUdlb2xvY2F0aW9uU2VydmljZUJyaWRnZShHZW9s
b2NhdGlvblNlcnZpY2VDaHJvbWl1bSogZ2VvbG9jYXRpb25TZXJ2aWNlQ2hyb21pdW0pCiB7CiAg
ICAgcmV0dXJuIGNyZWF0ZUdlb2xvY2F0aW9uU2VydmljZUJyaWRnZUltcGwoZ2VvbG9jYXRpb25T
ZXJ2aWNlQ2hyb21pdW0pOwogfQorI2VuZGlmCiAKIC8vIERhdGFiYXNlcyAtLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIApk
aWZmIC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJHZW9sb2NhdGlvblNlcnZpY2VNb2Nr
LmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jay5jcHAK
aW5kZXggZTE0OWNmMWI3ZWI0NWFlYzg5MDVmZGE2YzVlYzgyNTk1OGVkMzljYS4uZDc3Nzk2NjZk
ZGNkYTljNjFlMWU5YzM3NzlkY2M0ZTExMTIxOGRhMiAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrLmNwcAorKysgYi9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYkdlb2xvY2F0aW9uU2VydmljZU1vY2suY3BwCkBAIC00Miw2ICs0MiwzNyBAQAog
CiAjaWYgRU5BQkxFKEdFT0xPQ0FUSU9OKQogCisjaWYgRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9M
T0NBVElPTikKKy8vIEZJWE1FOiBJbXBsZW1lbnQgbW9jayBiaW5kaW5ncyBmb3IgY2xpZW50LWJh
c2VkIGdlb2xvY2F0aW9uCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBXZWJHZW9sb2Nh
dGlvblNlcnZpY2VNb2NrQ2xpZW50QmFzZWRJbXBsIDogcHVibGljIFdlYkdlb2xvY2F0aW9uU2Vy
dmljZU1vY2sgeworfTsKKworV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jayogV2ViR2VvbG9jYXRp
b25TZXJ2aWNlTW9jazo6Y3JlYXRlV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jaygpCit7CisgICAg
cmV0dXJuIG5ldyBXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrQ2xpZW50QmFzZWRJbXBsOworfQor
Cit2b2lkIFdlYkdlb2xvY2F0aW9uU2VydmljZU1vY2s6OnNldE1vY2tHZW9sb2NhdGlvblBlcm1p
c3Npb24oYm9vbCBhbGxvd2VkKQoreworICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgbW9jayBiaW5k
aW5nCit9CisKK3ZvaWQgV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jazo6c2V0TW9ja0dlb2xvY2F0
aW9uUG9zaXRpb24oZG91YmxlIGxhdGl0dWRlLCBkb3VibGUgbG9uZ2l0dWRlLCBkb3VibGUgYWNj
dXJhY3kpCit7CisgICAgLy8gRklYTUU6IEltcGxlbWVudCBtb2NrIGJpbmRpbmcKK30KKwordm9p
ZCBXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrOjpzZXRNb2NrR2VvbG9jYXRpb25FcnJvcihpbnQg
ZXJyb3JDb2RlLCBjb25zdCBXZWJTdHJpbmcmIG1lc3NhZ2UpCit7CisgICAgLy8gRklYTUU6IElt
cGxlbWVudCBtb2NrIGJpbmRpbmcKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKKyNlbHNl
CiB1c2luZyBXZWJDb3JlOjpDb29yZGluYXRlczsKIHVzaW5nIFdlYkNvcmU6OkZyYW1lOwogdXNp
bmcgV2ViQ29yZTo6R2VvbG9jYXRpb247CkBAIC0yNDEsNCArMjcyLDUgQEAgdm9pZCBXZWJHZW9s
b2NhdGlvblNlcnZpY2VNb2NrSW1wbDo6bm90aWZ5UGVuZGluZ1Blcm1pc3Npb25zKCkKIAogfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CiAKKyNlbmRpZiAvLyBFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xP
Q0FUSU9OKQogI2VuZGlmIC8vIEVOQUJMRShHRU9MT0NBVElPTikKZGlmZiAtLWdpdCBhL1dlYktp
dFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwppbmRleCBlOWJkMzEwN2U1
MTgzYTIxYThhMmFmNWE3NjE1YmU2ODI2M2RjMmQ3Li4zZmY2YWRiMWM4ODNhNjMyNGFhYmYzZTUw
OTA1YzFhNGJhZmYyY2UyIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cKKysrIGIv
V2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTAtMTAtMTMgIEpvaG4g
S25vdHRlbmJlbHQgIDxqa25vdHRlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRmlyc3Qgc3RlcCB0b3dhcmRzIGNsaWVudC1i
YXNlZCBHZW9sb2NhdGlvbiBpbiBDaHJvbWl1bS4gQnVpbGQKKyAgICAgICAgZml4ZXMgZm9yIENM
SUVOVF9CQVNFRF9HRU9MT0NBVElPTiBwcmVwcm9jZXNzb3IgZmVhdHVyZSBkZWZpbmUuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NzU4NgorCisgICAg
ICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwOgor
ICAgICAgICAoTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldEdlb2xvY2F0aW9uUGVybWlzc2lvbik6
CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0TW9ja0dlb2xvY2F0aW9uUG9zaXRp
b24pOgorICAgICAgICAoTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldE1vY2tHZW9sb2NhdGlvbkVy
cm9yKToKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJWaWV3SG9zdC5jcHA6
CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViVmlld0hvc3QuaDoKKwogMjAx
MC0xMC0xMiAgRGlyayBQcmFua2UgIDxkcHJhbmtlQGNocm9taXVtLm9yZz4KIAogICAgICAgICBS
ZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL2Nocm9taXVtL0xheW91dFRlc3RDb250cm9sbGVyLmNwcCBiL1dlYktpdFRvb2xzL0R1
bXBSZW5kZXJUcmVlL2Nocm9taXVtL0xheW91dFRlc3RDb250cm9sbGVyLmNwcAppbmRleCBkNzc3
NGU5OTY3YmU4NjlhNGQzNTM2OTZmYzA0Y2MzZmRmOTgxZGRhLi43MDQ3MDk3ZGI1NDdlMWY3NTg3
MGE5NWJiYTEzZWRiYmRlNGIyMmRiIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1wUmVuZGVy
VHJlZS9jaHJvbWl1bS9MYXlvdXRUZXN0Q29udHJvbGxlci5jcHAKKysrIGIvV2ViS2l0VG9vbHMv
RHVtcFJlbmRlclRyZWUvY2hyb21pdW0vTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwCkBAIC0xNDk4
LDcgKzE0OTgsMTAgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0R2VvbG9jYXRpb25Q
ZXJtaXNzaW9uKGNvbnN0IENwcEFyZ3VtZW50TGlzdCYgYXJndW0KICAgICByZXN1bHQtPnNldE51
bGwoKTsKICAgICBpZiAoYXJndW1lbnRzLnNpemUoKSA8IDEgfHwgIWFyZ3VtZW50c1swXS5pc0Jv
b2woKSkKICAgICAgICAgcmV0dXJuOworI2lmICFFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FU
SU9OKQorICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgc2V0TW9ja0dlb2xvY2F0aW9uUG9zaXRpb24g
Y2xpZW50LWJhc2VkCiAgICAgV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jazo6c2V0TW9ja0dlb2xv
Y2F0aW9uUGVybWlzc2lvbihhcmd1bWVudHNbMF0udG9Cb29sZWFuKCkpOworI2VuZGlmCiB9CiAK
IHZvaWQgTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldE1vY2tHZW9sb2NhdGlvblBvc2l0aW9uKGNv
bnN0IENwcEFyZ3VtZW50TGlzdCYgYXJndW1lbnRzLCBDcHBWYXJpYW50KiByZXN1bHQpCkBAIC0x
NTA2LDcgKzE1MDksMTAgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0TW9ja0dlb2xv
Y2F0aW9uUG9zaXRpb24oY29uc3QgQ3BwQXJndW1lbnRMaXN0JiBhcmcKICAgICByZXN1bHQtPnNl
dE51bGwoKTsKICAgICBpZiAoYXJndW1lbnRzLnNpemUoKSA8IDMgfHwgIWFyZ3VtZW50c1swXS5p
c051bWJlcigpIHx8ICFhcmd1bWVudHNbMV0uaXNOdW1iZXIoKSB8fCAhYXJndW1lbnRzWzJdLmlz
TnVtYmVyKCkpCiAgICAgICAgIHJldHVybjsKKyNpZiAhRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9M
T0NBVElPTikKKyAgICAvLyBGSVhNRTogSW1wbGVtZW50IHNldE1vY2tHZW9sb2NhdGlvblBvc2l0
aW9uIGNsaWVudC1iYXNlZAogICAgIFdlYkdlb2xvY2F0aW9uU2VydmljZU1vY2s6OnNldE1vY2tH
ZW9sb2NhdGlvblBvc2l0aW9uKGFyZ3VtZW50c1swXS50b0RvdWJsZSgpLCBhcmd1bWVudHNbMV0u
dG9Eb3VibGUoKSwgYXJndW1lbnRzWzJdLnRvRG91YmxlKCkpOworI2VuZGlmCiB9CiAKIHZvaWQg
TGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldE1vY2tHZW9sb2NhdGlvbkVycm9yKGNvbnN0IENwcEFy
Z3VtZW50TGlzdCYgYXJndW1lbnRzLCBDcHBWYXJpYW50KiByZXN1bHQpCkBAIC0xNTE0LDcgKzE1
MjAsMTAgQEAgdm9pZCBMYXlvdXRUZXN0Q29udHJvbGxlcjo6c2V0TW9ja0dlb2xvY2F0aW9uRXJy
b3IoY29uc3QgQ3BwQXJndW1lbnRMaXN0JiBhcmd1bWUKICAgICByZXN1bHQtPnNldE51bGwoKTsK
ICAgICBpZiAoYXJndW1lbnRzLnNpemUoKSA8IDIgfHwgIWFyZ3VtZW50c1swXS5pc0ludDMyKCkg
fHwgIWFyZ3VtZW50c1sxXS5pc1N0cmluZygpKQogICAgICAgICByZXR1cm47CisjaWYgIUVOQUJM
RShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCisgICAgLy8gRklYTUU6IEltcGxlbWVudCBzZXRN
b2NrR2VvbG9jYXRpb25FcnJvciBjbGllbnQtYmFzZWQKICAgICBXZWJHZW9sb2NhdGlvblNlcnZp
Y2VNb2NrOjpzZXRNb2NrR2VvbG9jYXRpb25FcnJvcihhcmd1bWVudHNbMF0udG9JbnQzMigpLCBj
cHBWYXJpYW50VG9XZWJTdHJpbmcoYXJndW1lbnRzWzFdKSk7CisjZW5kaWYKIH0KIAogdm9pZCBM
YXlvdXRUZXN0Q29udHJvbGxlcjo6YWJvcnRNb2RhbChjb25zdCBDcHBBcmd1bWVudExpc3QmIGFy
Z3VtZW50cywgQ3BwVmFyaWFudCogcmVzdWx0KQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVt
cFJlbmRlclRyZWUvY2hyb21pdW0vV2ViVmlld0hvc3QuY3BwIGIvV2ViS2l0VG9vbHMvRHVtcFJl
bmRlclRyZWUvY2hyb21pdW0vV2ViVmlld0hvc3QuY3BwCmluZGV4IDAzMTY3ZWY1MjRmNGZiYWY3
NjFhZmY5MmNkMmQzYWQyMTI2NGMyZDUuLjVhNjQ4NTYxYjhlN2E1MmRkZmVlOWVkZDUwNWRkZjU2
MTY2NzExMTkgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVt
L1dlYlZpZXdIb3N0LmNwcAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1
bS9XZWJWaWV3SG9zdC5jcHAKQEAgLTU1OSwxMiArNTU5LDE0IEBAIFdlYk5vdGlmaWNhdGlvblBy
ZXNlbnRlciogV2ViVmlld0hvc3Q6Om5vdGlmaWNhdGlvblByZXNlbnRlcigpCiAgICAgcmV0dXJu
IG1fc2hlbGwtPm5vdGlmaWNhdGlvblByZXNlbnRlcigpOwogfQogCisjaWYgIUVOQUJMRShDTElF
TlRfQkFTRURfR0VPTE9DQVRJT04pCiBXZWJLaXQ6OldlYkdlb2xvY2F0aW9uU2VydmljZSogV2Vi
Vmlld0hvc3Q6Omdlb2xvY2F0aW9uU2VydmljZSgpCiB7CiAgICAgaWYgKCFtX2dlb2xvY2F0aW9u
U2VydmljZU1vY2suZ2V0KCkpCiAgICAgICAgIG1fZ2VvbG9jYXRpb25TZXJ2aWNlTW9jay5zZXQo
V2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jazo6Y3JlYXRlV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9j
aygpKTsKICAgICByZXR1cm4gbV9nZW9sb2NhdGlvblNlcnZpY2VNb2NrLmdldCgpOwogfQorI2Vu
ZGlmCiAKIFdlYlNwZWVjaElucHV0Q29udHJvbGxlciogV2ViVmlld0hvc3Q6OnNwZWVjaElucHV0
Q29udHJvbGxlcihXZWJLaXQ6OldlYlNwZWVjaElucHV0TGlzdGVuZXIqIGxpc3RlbmVyKQogewpk
aWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViVmlld0hv
c3QuaCBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlZpZXdIb3N0LmgK
aW5kZXggZDYwZWE3NjNlNzhlYjc5MzU0YWFjOTM1ODgzMDY4NmNmMGI5ZGE5OC4uZGI1MDUwNjU2
M2EyNjI5NjZiZmFhNmY0MzBlYTVmNGY1YjVmZTdhYiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMv
RHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViVmlld0hvc3QuaAorKysgYi9XZWJLaXRUb29scy9E
dW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJWaWV3SG9zdC5oCkBAIC0xMjksNyArMTI5LDkgQEAg
Y2xhc3MgV2ViVmlld0hvc3QgOiBwdWJsaWMgV2ViS2l0OjpXZWJWaWV3Q2xpZW50LCBwdWJsaWMg
V2ViS2l0OjpXZWJGcmFtZUNsaWVudCwKICAgICB2aXJ0dWFsIGludCBoaXN0b3J5Rm9yd2FyZExp
c3RDb3VudCgpOwogICAgIHZpcnR1YWwgdm9pZCBwb3N0QWNjZXNzaWJpbGl0eU5vdGlmaWNhdGlv
bihjb25zdCBXZWJLaXQ6OldlYkFjY2Vzc2liaWxpdHlPYmplY3QmLCBXZWJLaXQ6OldlYkFjY2Vz
c2liaWxpdHlOb3RpZmljYXRpb24pOwogICAgIHZpcnR1YWwgV2ViS2l0OjpXZWJOb3RpZmljYXRp
b25QcmVzZW50ZXIqIG5vdGlmaWNhdGlvblByZXNlbnRlcigpOworI2lmICFFTkFCTEUoQ0xJRU5U
X0JBU0VEX0dFT0xPQ0FUSU9OKQogICAgIHZpcnR1YWwgV2ViS2l0OjpXZWJHZW9sb2NhdGlvblNl
cnZpY2UqIGdlb2xvY2F0aW9uU2VydmljZSgpOworI2VuZGlmCiAgICAgdmlydHVhbCBXZWJLaXQ6
OldlYlNwZWVjaElucHV0Q29udHJvbGxlciogc3BlZWNoSW5wdXRDb250cm9sbGVyKFdlYktpdDo6
V2ViU3BlZWNoSW5wdXRMaXN0ZW5lciopOwogICAgIHZpcnR1YWwgV2ViS2l0OjpXZWJEZXZpY2VP
cmllbnRhdGlvbkNsaWVudCogZGV2aWNlT3JpZW50YXRpb25DbGllbnQoKTsKIApAQCAtMjg3LDgg
KzI4OSwxMCBAQCBwcml2YXRlOgogICAgIFdlYktpdDo6V2ViUmVjdCBtX3BhaW50UmVjdDsKICAg
ICBib29sIG1faXNQYWludGluZzsKIAorI2lmICFFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FU
SU9OKQogICAgIC8vIEdlb2xvY2F0aW9uCiAgICAgT3duUHRyPFdlYktpdDo6V2ViR2VvbG9jYXRp
b25TZXJ2aWNlTW9jaz4gbV9nZW9sb2NhdGlvblNlcnZpY2VNb2NrOworI2VuZGlmCiAKICAgICBP
d25QdHI8VGVzdE5hdmlnYXRpb25Db250cm9sbGVyKj4gbV9uYXZpZ2F0aW9uQ29udHJvbGxlcjsK
IH07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>70610</attachid>
            <date>2010-10-13 07:36:00 -0700</date>
            <delta_ts>2010-10-13 09:12:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-47586-20101013153557.patch</filename>
            <type>text/plain</type>
            <size>11103</size>
            <attacher name="John Knottenbelt">jknotten</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
N2NmYTQ1YmI3YTEyNTNkZTliN2VmOGM0ODAxNDVkYzcyZTg0YWQzMi4uMmIxMjYyYTMxNjg5YThi
ZjEwOGIyMjdiMTMzMjk3NzA3OTI3MmFmMyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMC0xMC0xMyAgSm9o
biBLbm90dGVuYmVsdCAgPGprbm90dGVuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXJzdCBzdGVwIHRvd2FyZHMgY2xpZW50
LWJhc2VkIEdlb2xvY2F0aW9uIGluIENocm9taXVtLiBCdWlsZAorICAgICAgICBmaXhlcyBmb3Ig
Q0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OIHByZXByb2Nlc3NvciBmZWF0dXJlIGRlZmluZS4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ3NTg2CisKKyAg
ICAgICAgKiBXZWJDb3JlLmd5cC9XZWJDb3JlLmd5cDoKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJv
bWl1bS9DaHJvbWl1bUJyaWRnZS5oOgorCiAyMDEwLTEwLTEzICBTdGV2ZSBCbG9jayAgPHN0ZXZl
YmxvY2tAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlh
a292LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmd5cC9XZWJDb3JlLmd5cCBiL1dlYkNv
cmUvV2ViQ29yZS5neXAvV2ViQ29yZS5neXAKaW5kZXggMmY0NTc5OWE5ZDQyY2E4MTY1NDAwNDhm
ZGYwZjgwNmZkMmU2ZGZiMC4uYWIwZDMzODNmNGVmOTVjNGM1NWRlYWRjYzc3ZjRmZGQ2YjUwZGNj
MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLmd5cC9XZWJDb3JlLmd5cAorKysgYi9XZWJD
b3JlL1dlYkNvcmUuZ3lwL1dlYkNvcmUuZ3lwCkBAIC0xMjAyLDYgKzEyMDIsMTEgQEAKICAgICAg
ICAgICAgIFsnZXhjbHVkZScsICdQb3NpeFxcLmNwcCQnXSwKICAgICAgICAgICBdLAogICAgICAg
ICB9XSwKKyAgICAgICAgWyciRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTj0xIiBpbiBm
ZWF0dXJlX2RlZmluZXMnLCB7CisgICAgICAgICAgJ3NvdXJjZXMvJzogWworICAgICAgICAgICAg
WydleGNsdWRlJywgJy9HZW9sb2NhdGlvblNlcnZpY2UuKiQnXSwKKyAgICAgICAgICBdLAorICAg
ICAgICB9XSwKICAgICAgIF0sCiAgICAgfSwKICAgICB7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3Bs
YXRmb3JtL2Nocm9taXVtL0Nocm9taXVtQnJpZGdlLmggYi9XZWJDb3JlL3BsYXRmb3JtL2Nocm9t
aXVtL0Nocm9taXVtQnJpZGdlLmgKaW5kZXggMWM4MTllNWI5OTNmNWNhZThkZTViZmVmNWExMmYx
ODgwZmRjYTZiMy4uNzRiYWQwNDRmNTk5MDg2ZTgwZDI1NTFlNjFjM2E5ZjA2MGU1YWQ0ZiAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9DaHJvbWl1bUJyaWRnZS5oCisrKyBi
L1dlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vQ2hyb21pdW1CcmlkZ2UuaApAQCAtMTU0LDkgKzE1
NCwxMCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIC8vIEZvcm1zIC0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAg
ICAgIHN0YXRpYyB2b2lkIG5vdGlmeUZvcm1TdGF0ZUNoYW5nZWQoY29uc3QgRG9jdW1lbnQqKTsK
IAorI2lmICFFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQogICAgICAgICAvLyBHZW9s
b2NhdGlvbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLQogICAgICAgICBzdGF0aWMgR2VvbG9jYXRpb25TZXJ2aWNlQnJpZGdlKiBjcmVhdGVH
ZW9sb2NhdGlvblNlcnZpY2VCcmlkZ2UoR2VvbG9jYXRpb25TZXJ2aWNlQ2hyb21pdW0qKTsKLQor
I2VuZGlmCiAgICAgICAgIC8vIERhdGFiYXNlcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAgICAgIC8vIFJldHVybnMgYSBoYW5k
bGUgdG8gdGhlIERCIGZpbGUgYW5kIG9vcHRpb25hbGx5IGEgaGFuZGxlIHRvIGl0cyBjb250YWlu
aW5nIGRpcmVjdG9yeQogICAgICAgICBzdGF0aWMgUGxhdGZvcm1GaWxlSGFuZGxlIGRhdGFiYXNl
T3BlbkZpbGUoY29uc3QgU3RyaW5nJiB2ZnNGbGVOYW1lLCBpbnQgZGVzaXJlZEZsYWdzKTsKZGlm
ZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21pdW0vQ2hh
bmdlTG9nCmluZGV4IDE4MGUzMzBhNzgyOWExOTRiZWU0ZTIzN2RmY2Q3MmRjNzU3Yjg4NzEuLjU3
YWVlZjIwMjUyYmJiYWQ5MzVkNmE3NDExNjIyOGM5MDc3ODA5N2QgMTAwNjQ0Ci0tLSBhL1dlYktp
dC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDIyIEBACisyMDEwLTEwLTEzICBKb2huIEtub3R0ZW5iZWx0ICA8amtub3R0ZW5AY2hy
b21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEZpcnN0IHN0ZXAgdG93YXJkcyBjbGllbnQtYmFzZWQgR2VvbG9jYXRpb24gaW4gQ2hyb21p
dW0uIEJ1aWxkCisgICAgICAgIGZpeGVzIGZvciBDTElFTlRfQkFTRURfR0VPTE9DQVRJT04gcHJl
cHJvY2Vzc29yIGZlYXR1cmUgZGVmaW5lLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NDc1ODYKKworICAgICAgICAqIFdlYktpdC5neXA6CisgICAgICAg
ICogc3JjL0Nocm9tZUNsaWVudEltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpDaHJvbWVDbGll
bnRJbXBsOjpyZXF1ZXN0R2VvbG9jYXRpb25QZXJtaXNzaW9uRm9yRnJhbWUpOgorICAgICAgICAo
V2ViS2l0OjpDaHJvbWVDbGllbnRJbXBsOjpjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1
ZXN0Rm9yRnJhbWUpOgorICAgICAgICAqIHNyYy9DaHJvbWl1bUJyaWRnZS5jcHA6CisgICAgICAg
ICogc3JjL1dlYkdlb2xvY2F0aW9uU2VydmljZU1vY2suY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrOjpjcmVhdGVXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2Nr
KToKKyAgICAgICAgKFdlYktpdDo6V2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jazo6c2V0TW9ja0dl
b2xvY2F0aW9uUGVybWlzc2lvbik6CisgICAgICAgIChXZWJLaXQ6OldlYkdlb2xvY2F0aW9uU2Vy
dmljZU1vY2s6OnNldE1vY2tHZW9sb2NhdGlvblBvc2l0aW9uKToKKyAgICAgICAgKFdlYktpdDo6
V2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jazo6c2V0TW9ja0dlb2xvY2F0aW9uRXJyb3IpOgorCiAy
MDEwLTEwLTEyICBLZW5uZXRoIFJ1c3NlbGwgIDxrYnJAZ29vZ2xlLmNvbT4KIAogICAgICAgICBV
bnJldmlld2VkLiBGaXhlcyBmb3IgYWxsIFdlYkdMIGNvbnRlbnQgY2F1c2luZyBhc3NlcnRpb24g
ZmFpbHVyZXMKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9XZWJLaXQuZ3lwIGIvV2ViS2l0
L2Nocm9taXVtL1dlYktpdC5neXAKaW5kZXggNzQ4Njg4MTY5ODFiMWI3ODRmZTQ1ZjU4Njc0MWEz
Njc0NWE3MmU4Mi4uOWEwM2I5OGM0NWI1YzI5OGFlZWVhNTFhNmQ1MjdlNjk5ZmE5YzNhZiAxMDA2
NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL1dlYktpdC5neXAKKysrIGIvV2ViS2l0L2Nocm9taXVt
L1dlYktpdC5neXAKQEAgLTY0Niw2ICs2NDYsMTIgQEAKICAgICAgICAgICAgICAgICAgICAgICAg
IH1dLAogICAgICAgICAgICAgICAgICAgICBdLAogICAgICAgICAgICAgICAgIH1dLAorICAgICAg
ICAgICAgICAgIFsnIkVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT049MSIgaW4gZmVhdHVy
ZV9kZWZpbmVzJywgeworICAgICAgICAgICAgICAgICAgICAnc291cmNlcy8nOiBbCisgICAgICAg
ICAgICAgICAgICAgICAgICBbJ2V4Y2x1ZGUnLCAnV2ViR2VvbG9jYXRpb25TZXJ2aWNlLiokJ10s
CisgICAgICAgICAgICAgICAgICAgICAgICBbJ2luY2x1ZGUnLCAnV2ViR2VvbG9jYXRpb25TZXJ2
aWNlTW9jay4qJ10sCisgICAgICAgICAgICAgICAgICAgIF0sCisgICAgICAgICAgICAgICAgfV0K
ICAgICAgICAgICAgIF0sCiAgICAgICAgIH0sCiAKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1
bS9zcmMvQ2hyb21lQ2xpZW50SW1wbC5jcHAgYi9XZWJLaXQvY2hyb21pdW0vc3JjL0Nocm9tZUNs
aWVudEltcGwuY3BwCmluZGV4IDU3NGE5ZjY4NjNmZTI4NWIzOTQ3ZDQ3ZGM1YWQ5YzJmMTllYjI2
NjEuLjM1MDM3MWFkNDljMWM3ZmIyYWI5MDE2ZGJiYmY2YzA2YjBkZTcwNTEgMTAwNjQ0Ci0tLSBh
L1dlYktpdC9jaHJvbWl1bS9zcmMvQ2hyb21lQ2xpZW50SW1wbC5jcHAKKysrIGIvV2ViS2l0L2No
cm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBsLmNwcApAQCAtNzcxLDE1ICs3NzEsMjMgQEAgTm90
aWZpY2F0aW9uUHJlc2VudGVyKiBDaHJvbWVDbGllbnRJbXBsOjpub3RpZmljYXRpb25QcmVzZW50
ZXIoKSBjb25zdAogCiB2b2lkIENocm9tZUNsaWVudEltcGw6OnJlcXVlc3RHZW9sb2NhdGlvblBl
cm1pc3Npb25Gb3JGcmFtZShGcmFtZSogZnJhbWUsIEdlb2xvY2F0aW9uKiBnZW9sb2NhdGlvbikK
IHsKKyNpZiBFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQorICAgIC8vIEZJWE1FOiBJ
bXBsZW1lbnQgQ2xpZW50LWJhc2VkIEdlb2xvY2F0aW9uIFBlcm1pc3Npb25zCisjZWxzZQogICAg
IEdlb2xvY2F0aW9uU2VydmljZUNocm9taXVtKiBnZW9sb2NhdGlvblNlcnZpY2UgPSBzdGF0aWNf
Y2FzdDxHZW9sb2NhdGlvblNlcnZpY2VDaHJvbWl1bSo+KGdlb2xvY2F0aW9uLT5nZXRHZW9sb2Nh
dGlvblNlcnZpY2UoKSk7CiAgICAgZ2VvbG9jYXRpb25TZXJ2aWNlLT5nZW9sb2NhdGlvblNlcnZp
Y2VCcmlkZ2UoKS0+YXR0YWNoQnJpZGdlSWZOZWVkZWQoKTsKICAgICBtX3dlYlZpZXctPmNsaWVu
dCgpLT5nZW9sb2NhdGlvblNlcnZpY2UoKS0+cmVxdWVzdFBlcm1pc3Npb25Gb3JGcmFtZShnZW9s
b2NhdGlvblNlcnZpY2UtPmdlb2xvY2F0aW9uU2VydmljZUJyaWRnZSgpLT5nZXRCcmlkZ2VJZCgp
LCBmcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCkpOworI2VuZGlmCiB9CiAKIHZvaWQgQ2hyb21lQ2xp
ZW50SW1wbDo6Y2FuY2VsR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKEZyYW1l
KiBmcmFtZSwgR2VvbG9jYXRpb24qIGdlb2xvY2F0aW9uKQogeworI2lmIEVOQUJMRShDTElFTlRf
QkFTRURfR0VPTE9DQVRJT04pCisgICAgLy8gRklYTUU6IEltcGxlbWVudCBDbGllbnQtYmFzZWQg
R2VvbG9jYXRpb24gUGVybWlzc2lvbnMKKyNlbHNlCiAgICAgR2VvbG9jYXRpb25TZXJ2aWNlQ2hy
b21pdW0qIGdlb2xvY2F0aW9uU2VydmljZSA9IHN0YXRpY19jYXN0PEdlb2xvY2F0aW9uU2Vydmlj
ZUNocm9taXVtKj4oZ2VvbG9jYXRpb24tPmdldEdlb2xvY2F0aW9uU2VydmljZSgpKTsKICAgICBt
X3dlYlZpZXctPmNsaWVudCgpLT5nZW9sb2NhdGlvblNlcnZpY2UoKS0+Y2FuY2VsUGVybWlzc2lv
blJlcXVlc3RGb3JGcmFtZShnZW9sb2NhdGlvblNlcnZpY2UtPmdlb2xvY2F0aW9uU2VydmljZUJy
aWRnZSgpLT5nZXRCcmlkZ2VJZCgpLCBmcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCkpOworI2VuZGlm
CiB9CiAKICNpZiBVU0UoQUNDRUxFUkFURURfQ09NUE9TSVRJTkcpCmRpZmYgLS1naXQgYS9XZWJL
aXQvY2hyb21pdW0vc3JjL0Nocm9taXVtQnJpZGdlLmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMv
Q2hyb21pdW1CcmlkZ2UuY3BwCmluZGV4IDAzYWY3YzU4MGJhOTFmZDE3NzYwYjRlMmEwNTg0ZTRh
Y2E3MzdhMmUuLjFjNTg4MjRhM2FmYzc2MDcxNzExNzQwY2RlNWYwZGI5ZDRiNTBkMTQgMTAwNjQ0
Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9zcmMvQ2hyb21pdW1CcmlkZ2UuY3BwCisrKyBiL1dlYktp
dC9jaHJvbWl1bS9zcmMvQ2hyb21pdW1CcmlkZ2UuY3BwCkBAIC04Niw3ICs4NiwxMSBAQAogI2lu
Y2x1ZGUgIlBsYXRmb3JtQ29udGV4dFNraWEuaCIKICNpbmNsdWRlICJQbHVnaW5EYXRhLmgiCiAj
aW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgiCisKKyNpZiAhRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9M
T0NBVElPTikKICNpbmNsdWRlICJXZWJHZW9sb2NhdGlvblNlcnZpY2VCcmlkZ2VJbXBsLmgiCisj
ZW5kaWYKKwogI2luY2x1ZGUgIldvcmtlci5oIgogI2luY2x1ZGUgIldvcmtlckNvbnRleHRQcm94
eS5oIgogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CkBAIC00NjUsMTIgKzQ2OSwxNCBAQCBi
b29sIENocm9taXVtQnJpZGdlOjpsb2FkRm9udChOU0ZvbnQqIHNyY0ZvbnQsIEFUU0ZvbnRDb250
YWluZXJSZWYqIG91dCkKIH0KICNlbmRpZgogCisjaWYgIUVOQUJMRShDTElFTlRfQkFTRURfR0VP
TE9DQVRJT04pCiAvLyBHZW9sb2NhdGlvbiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKIEdlb2xvY2F0aW9uU2VydmljZUJy
aWRnZSogQ2hyb21pdW1CcmlkZ2U6OmNyZWF0ZUdlb2xvY2F0aW9uU2VydmljZUJyaWRnZShHZW9s
b2NhdGlvblNlcnZpY2VDaHJvbWl1bSogZ2VvbG9jYXRpb25TZXJ2aWNlQ2hyb21pdW0pCiB7CiAg
ICAgcmV0dXJuIGNyZWF0ZUdlb2xvY2F0aW9uU2VydmljZUJyaWRnZUltcGwoZ2VvbG9jYXRpb25T
ZXJ2aWNlQ2hyb21pdW0pOwogfQorI2VuZGlmCiAKIC8vIERhdGFiYXNlcyAtLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIApk
aWZmIC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJHZW9sb2NhdGlvblNlcnZpY2VNb2Nr
LmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jay5jcHAK
aW5kZXggZTE0OWNmMWI3ZWI0NWFlYzg5MDVmZGE2YzVlYzgyNTk1OGVkMzljYS4uZDc3Nzk2NjZk
ZGNkYTljNjFlMWU5YzM3NzlkY2M0ZTExMTIxOGRhMiAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrLmNwcAorKysgYi9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYkdlb2xvY2F0aW9uU2VydmljZU1vY2suY3BwCkBAIC00Miw2ICs0MiwzNyBAQAog
CiAjaWYgRU5BQkxFKEdFT0xPQ0FUSU9OKQogCisjaWYgRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9M
T0NBVElPTikKKy8vIEZJWE1FOiBJbXBsZW1lbnQgbW9jayBiaW5kaW5ncyBmb3IgY2xpZW50LWJh
c2VkIGdlb2xvY2F0aW9uCisKK25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBXZWJHZW9sb2Nh
dGlvblNlcnZpY2VNb2NrQ2xpZW50QmFzZWRJbXBsIDogcHVibGljIFdlYkdlb2xvY2F0aW9uU2Vy
dmljZU1vY2sgeworfTsKKworV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jayogV2ViR2VvbG9jYXRp
b25TZXJ2aWNlTW9jazo6Y3JlYXRlV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jaygpCit7CisgICAg
cmV0dXJuIG5ldyBXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrQ2xpZW50QmFzZWRJbXBsOworfQor
Cit2b2lkIFdlYkdlb2xvY2F0aW9uU2VydmljZU1vY2s6OnNldE1vY2tHZW9sb2NhdGlvblBlcm1p
c3Npb24oYm9vbCBhbGxvd2VkKQoreworICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgbW9jayBiaW5k
aW5nCit9CisKK3ZvaWQgV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jazo6c2V0TW9ja0dlb2xvY2F0
aW9uUG9zaXRpb24oZG91YmxlIGxhdGl0dWRlLCBkb3VibGUgbG9uZ2l0dWRlLCBkb3VibGUgYWNj
dXJhY3kpCit7CisgICAgLy8gRklYTUU6IEltcGxlbWVudCBtb2NrIGJpbmRpbmcKK30KKwordm9p
ZCBXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrOjpzZXRNb2NrR2VvbG9jYXRpb25FcnJvcihpbnQg
ZXJyb3JDb2RlLCBjb25zdCBXZWJTdHJpbmcmIG1lc3NhZ2UpCit7CisgICAgLy8gRklYTUU6IElt
cGxlbWVudCBtb2NrIGJpbmRpbmcKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKKyNlbHNl
CiB1c2luZyBXZWJDb3JlOjpDb29yZGluYXRlczsKIHVzaW5nIFdlYkNvcmU6OkZyYW1lOwogdXNp
bmcgV2ViQ29yZTo6R2VvbG9jYXRpb247CkBAIC0yNDEsNCArMjcyLDUgQEAgdm9pZCBXZWJHZW9s
b2NhdGlvblNlcnZpY2VNb2NrSW1wbDo6bm90aWZ5UGVuZGluZ1Blcm1pc3Npb25zKCkKIAogfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CiAKKyNlbmRpZiAvLyBFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xP
Q0FUSU9OKQogI2VuZGlmIC8vIEVOQUJMRShHRU9MT0NBVElPTikKZGlmZiAtLWdpdCBhL1dlYktp
dFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwppbmRleCBlOWJkMzEwN2U1
MTgzYTIxYThhMmFmNWE3NjE1YmU2ODI2M2RjMmQ3Li5hYTE4MWMzYzY5ZGU1ZTRkOWVlNjhiYTA0
NDc4ZGE4ZjdhZmQ1M2NjIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cKKysrIGIv
V2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTAtMTAtMTMgIEpvaG4g
S25vdHRlbmJlbHQgIDxqa25vdHRlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRmlyc3Qgc3RlcCB0b3dhcmRzIGNsaWVudC1i
YXNlZCBHZW9sb2NhdGlvbiBpbiBDaHJvbWl1bS4gQnVpbGQKKyAgICAgICAgZml4ZXMgZm9yIENM
SUVOVF9CQVNFRF9HRU9MT0NBVElPTiBwcmVwcm9jZXNzb3IgZmVhdHVyZSBkZWZpbmUuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NzU4NgorCisgICAg
ICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViVmlld0hvc3QuY3BwOgorICAgICAgICAq
IER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlZpZXdIb3N0Lmg6CisKIDIwMTAtMTAtMTIgIERp
cmsgUHJhbmtlICA8ZHByYW5rZUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
RXJpYyBTZWlkZWwuCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJv
bWl1bS9XZWJWaWV3SG9zdC5jcHAgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1
bS9XZWJWaWV3SG9zdC5jcHAKaW5kZXggMDMxNjdlZjUyNGY0ZmJhZjc2MWFmZjkyY2QyZDNhZDIx
MjY0YzJkNS4uNWE2NDg1NjFiOGU3YTUyZGRmZWU5ZWRkNTA1ZGRmNTYxNjY3MTExOSAxMDA2NDQK
LS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViVmlld0hvc3QuY3Bw
CisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlZpZXdIb3N0LmNw
cApAQCAtNTU5LDEyICs1NTksMTQgQEAgV2ViTm90aWZpY2F0aW9uUHJlc2VudGVyKiBXZWJWaWV3
SG9zdDo6bm90aWZpY2F0aW9uUHJlc2VudGVyKCkKICAgICByZXR1cm4gbV9zaGVsbC0+bm90aWZp
Y2F0aW9uUHJlc2VudGVyKCk7CiB9CiAKKyNpZiAhRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NB
VElPTikKIFdlYktpdDo6V2ViR2VvbG9jYXRpb25TZXJ2aWNlKiBXZWJWaWV3SG9zdDo6Z2VvbG9j
YXRpb25TZXJ2aWNlKCkKIHsKICAgICBpZiAoIW1fZ2VvbG9jYXRpb25TZXJ2aWNlTW9jay5nZXQo
KSkKICAgICAgICAgbV9nZW9sb2NhdGlvblNlcnZpY2VNb2NrLnNldChXZWJHZW9sb2NhdGlvblNl
cnZpY2VNb2NrOjpjcmVhdGVXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrKCkpOwogICAgIHJldHVy
biBtX2dlb2xvY2F0aW9uU2VydmljZU1vY2suZ2V0KCk7CiB9CisjZW5kaWYKIAogV2ViU3BlZWNo
SW5wdXRDb250cm9sbGVyKiBXZWJWaWV3SG9zdDo6c3BlZWNoSW5wdXRDb250cm9sbGVyKFdlYktp
dDo6V2ViU3BlZWNoSW5wdXRMaXN0ZW5lciogbGlzdGVuZXIpCiB7CmRpZmYgLS1naXQgYS9XZWJL
aXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJWaWV3SG9zdC5oIGIvV2ViS2l0VG9v
bHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViVmlld0hvc3QuaAppbmRleCBkNjBlYTc2M2U3
OGViNzkzNTRhYWM5MzU4ODMwNjg2Y2YwYjlkYTk4Li5kYjUwNTA2NTYzYTI2Mjk2NmJmYWE2ZjQz
MGVhNWY0ZjViNWZlN2FiIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9j
aHJvbWl1bS9XZWJWaWV3SG9zdC5oCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2No
cm9taXVtL1dlYlZpZXdIb3N0LmgKQEAgLTEyOSw3ICsxMjksOSBAQCBjbGFzcyBXZWJWaWV3SG9z
dCA6IHB1YmxpYyBXZWJLaXQ6OldlYlZpZXdDbGllbnQsIHB1YmxpYyBXZWJLaXQ6OldlYkZyYW1l
Q2xpZW50LAogICAgIHZpcnR1YWwgaW50IGhpc3RvcnlGb3J3YXJkTGlzdENvdW50KCk7CiAgICAg
dmlydHVhbCB2b2lkIHBvc3RBY2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uKGNvbnN0IFdlYktpdDo6
V2ViQWNjZXNzaWJpbGl0eU9iamVjdCYsIFdlYktpdDo6V2ViQWNjZXNzaWJpbGl0eU5vdGlmaWNh
dGlvbik7CiAgICAgdmlydHVhbCBXZWJLaXQ6OldlYk5vdGlmaWNhdGlvblByZXNlbnRlciogbm90
aWZpY2F0aW9uUHJlc2VudGVyKCk7CisjaWYgIUVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJ
T04pCiAgICAgdmlydHVhbCBXZWJLaXQ6OldlYkdlb2xvY2F0aW9uU2VydmljZSogZ2VvbG9jYXRp
b25TZXJ2aWNlKCk7CisjZW5kaWYKICAgICB2aXJ0dWFsIFdlYktpdDo6V2ViU3BlZWNoSW5wdXRD
b250cm9sbGVyKiBzcGVlY2hJbnB1dENvbnRyb2xsZXIoV2ViS2l0OjpXZWJTcGVlY2hJbnB1dExp
c3RlbmVyKik7CiAgICAgdmlydHVhbCBXZWJLaXQ6OldlYkRldmljZU9yaWVudGF0aW9uQ2xpZW50
KiBkZXZpY2VPcmllbnRhdGlvbkNsaWVudCgpOwogCkBAIC0yODcsOCArMjg5LDEwIEBAIHByaXZh
dGU6CiAgICAgV2ViS2l0OjpXZWJSZWN0IG1fcGFpbnRSZWN0OwogICAgIGJvb2wgbV9pc1BhaW50
aW5nOwogCisjaWYgIUVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCiAgICAgLy8gR2Vv
bG9jYXRpb24KICAgICBPd25QdHI8V2ViS2l0OjpXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrPiBt
X2dlb2xvY2F0aW9uU2VydmljZU1vY2s7CisjZW5kaWYKIAogICAgIE93blB0cjxUZXN0TmF2aWdh
dGlvbkNvbnRyb2xsZXIqPiBtX25hdmlnYXRpb25Db250cm9sbGVyOwogfTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>70613</attachid>
            <date>2010-10-13 09:12:47 -0700</date>
            <delta_ts>2010-10-13 09:30:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-47586-20101013171245.patch</filename>
            <type>text/plain</type>
            <size>13204</size>
            <attacher name="John Knottenbelt">jknotten</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
N2NmYTQ1YmI3YTEyNTNkZTliN2VmOGM0ODAxNDVkYzcyZTg0YWQzMi4uNDE3MDlhOTc0NmNjNGM0
NDlkZWFjYzQ3OWZiOGJmMTU4NGIzOTFjZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxMC0xMC0xMyAgSm9o
biBLbm90dGVuYmVsdCAgPGprbm90dGVuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXJzdCBzdGVwIHRvd2FyZHMgY2xpZW50
LWJhc2VkIEdlb2xvY2F0aW9uIGluIENocm9taXVtLiBCdWlsZAorICAgICAgICBmaXhlcyBmb3Ig
Q0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OIHByZXByb2Nlc3NvciBmZWF0dXJlIGRlZmluZS4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ3NTg2CisKKyAg
ICAgICAgKiBXZWJDb3JlLmd5cC9XZWJDb3JlLmd5cDoKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJv
bWl1bS9DaHJvbWl1bUJyaWRnZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL0dlb2xv
Y2F0aW9uU2VydmljZUNocm9taXVtLmNwcDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvR2VvbG9j
YXRpb25TZXJ2aWNlR3RrLmNwcDoKKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL0dlb2xvY2F0aW9u
U2VydmljZU1vY2suY3BwOgorCiAyMDEwLTEwLTEzICBTdGV2ZSBCbG9jayAgPHN0ZXZlYmxvY2tA
Z29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292Lgpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmd5cC9XZWJDb3JlLmd5cCBiL1dlYkNvcmUvV2Vi
Q29yZS5neXAvV2ViQ29yZS5neXAKaW5kZXggMmY0NTc5OWE5ZDQyY2E4MTY1NDAwNDhmZGYwZjgw
NmZkMmU2ZGZiMC4uYWIwZDMzODNmNGVmOTVjNGM1NWRlYWRjYzc3ZjRmZGQ2YjUwZGNjMCAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLmd5cC9XZWJDb3JlLmd5cAorKysgYi9XZWJDb3JlL1dl
YkNvcmUuZ3lwL1dlYkNvcmUuZ3lwCkBAIC0xMjAyLDYgKzEyMDIsMTEgQEAKICAgICAgICAgICAg
IFsnZXhjbHVkZScsICdQb3NpeFxcLmNwcCQnXSwKICAgICAgICAgICBdLAogICAgICAgICB9XSwK
KyAgICAgICAgWyciRU5BQkxFX0NMSUVOVF9CQVNFRF9HRU9MT0NBVElPTj0xIiBpbiBmZWF0dXJl
X2RlZmluZXMnLCB7CisgICAgICAgICAgJ3NvdXJjZXMvJzogWworICAgICAgICAgICAgWydleGNs
dWRlJywgJy9HZW9sb2NhdGlvblNlcnZpY2UuKiQnXSwKKyAgICAgICAgICBdLAorICAgICAgICB9
XSwKICAgICAgIF0sCiAgICAgfSwKICAgICB7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3Jt
L2Nocm9taXVtL0Nocm9taXVtQnJpZGdlLmggYi9XZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL0No
cm9taXVtQnJpZGdlLmgKaW5kZXggMWM4MTllNWI5OTNmNWNhZThkZTViZmVmNWExMmYxODgwZmRj
YTZiMy4uNzRiYWQwNDRmNTk5MDg2ZTgwZDI1NTFlNjFjM2E5ZjA2MGU1YWQ0ZiAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9DaHJvbWl1bUJyaWRnZS5oCisrKyBiL1dlYkNv
cmUvcGxhdGZvcm0vY2hyb21pdW0vQ2hyb21pdW1CcmlkZ2UuaApAQCAtMTU0LDkgKzE1NCwxMCBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIC8vIEZvcm1zIC0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAgICAgIHN0
YXRpYyB2b2lkIG5vdGlmeUZvcm1TdGF0ZUNoYW5nZWQoY29uc3QgRG9jdW1lbnQqKTsKIAorI2lm
ICFFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQogICAgICAgICAvLyBHZW9sb2NhdGlv
biAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LQogICAgICAgICBzdGF0aWMgR2VvbG9jYXRpb25TZXJ2aWNlQnJpZGdlKiBjcmVhdGVHZW9sb2Nh
dGlvblNlcnZpY2VCcmlkZ2UoR2VvbG9jYXRpb25TZXJ2aWNlQ2hyb21pdW0qKTsKLQorI2VuZGlm
CiAgICAgICAgIC8vIERhdGFiYXNlcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAgICAgIC8vIFJldHVybnMgYSBoYW5kbGUgdG8g
dGhlIERCIGZpbGUgYW5kIG9vcHRpb25hbGx5IGEgaGFuZGxlIHRvIGl0cyBjb250YWluaW5nIGRp
cmVjdG9yeQogICAgICAgICBzdGF0aWMgUGxhdGZvcm1GaWxlSGFuZGxlIGRhdGFiYXNlT3BlbkZp
bGUoY29uc3QgU3RyaW5nJiB2ZnNGbGVOYW1lLCBpbnQgZGVzaXJlZEZsYWdzKTsKZGlmZiAtLWdp
dCBhL1dlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vR2VvbG9jYXRpb25TZXJ2aWNlQ2hyb21pdW0u
Y3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9HZW9sb2NhdGlvblNlcnZpY2VDaHJvbWl1
bS5jcHAKaW5kZXggYjY0ZjVlYjRhN2NkN2NiNTcxZTJlMGRiOWFjYmYxNWQ1YzhkNDc1OC4uYzVl
NzNhZThiNDU3MGZkZjg4NzMxN2JhYTI1NmI2MjM3YWE2NTg1OSAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9wbGF0Zm9ybS9jaHJvbWl1bS9HZW9sb2NhdGlvblNlcnZpY2VDaHJvbWl1bS5jcHAKKysrIGIv
V2ViQ29yZS9wbGF0Zm9ybS9jaHJvbWl1bS9HZW9sb2NhdGlvblNlcnZpY2VDaHJvbWl1bS5jcHAK
QEAgLTMzLDYgKzMzLDEwIEBACiAKICNpbmNsdWRlICJDaHJvbWl1bUJyaWRnZS5oIgogCisjaWYg
RU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKKyNlcnJvciAiVGhpcyBmaWxlIHNob3Vs
ZCBub3QgYmUgY29tcGlsZWQgd2hlbiBFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKSIK
KyNlbmRpZiAvLyBFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQorCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKIEdlb2xvY2F0aW9uU2VydmljZUJyaWRnZTo6fkdlb2xvY2F0aW9uU2Vydmlj
ZUJyaWRnZSgpCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9HZW9sb2NhdGlvblNl
cnZpY2VHdGsuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvR2VvbG9jYXRpb25TZXJ2aWNlR3Rr
LmNwcAppbmRleCA1YjM0YzY4OGM4ZGI5NjQ3NDFmZWY0NGNlNmI2Yzk2MDFiOWNkODg0Li5iNGNl
YWI2Y2JmMzNmYTE3NGZhZjE4MDVjN2ZiZjVlZmYzZWQxOGFiIDEwMDY0NAotLS0gYS9XZWJDb3Jl
L3BsYXRmb3JtL2d0ay9HZW9sb2NhdGlvblNlcnZpY2VHdGsuY3BwCisrKyBiL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL0dlb2xvY2F0aW9uU2VydmljZUd0ay5jcHAKQEAgLTE5LDYgKzE5LDExIEBACiAK
ICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJHZW9sb2NhdGlvblNlcnZpY2VHdGsuaCIK
KworI2lmIEVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCisjZXJyb3IgIlRoaXMgZmls
ZSBzaG91bGQgbm90IGJlIGNvbXBpbGVkIHdoZW4gRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NB
VElPTikiCisjZW5kaWYgLy8gRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKKwogI2lm
IEVOQUJMRShHRU9MT0NBVElPTikKIAogI2luY2x1ZGUgIkdPd25QdHIuaCIKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvcGxhdGZvcm0vbW9jay9HZW9sb2NhdGlvblNlcnZpY2VNb2NrLmNwcCBiL1dlYkNv
cmUvcGxhdGZvcm0vbW9jay9HZW9sb2NhdGlvblNlcnZpY2VNb2NrLmNwcAppbmRleCBiMjU0Y2I4
MTI3Njk1YWQwNWQ5ZWQ4YTc5NTVlMTJmZDQ1NmRjM2E0Li43OGMyZTU1YmY4MjJhZDY0M2I4NmNk
ZDBkYmNlY2YxMThkYWNlNmYyIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL21vY2svR2Vv
bG9jYXRpb25TZXJ2aWNlTW9jay5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL0dlb2xv
Y2F0aW9uU2VydmljZU1vY2suY3BwCkBAIC0yNiw2ICsyNiwxMCBAQAogI2luY2x1ZGUgImNvbmZp
Zy5oIgogI2luY2x1ZGUgIkdlb2xvY2F0aW9uU2VydmljZU1vY2suaCIKIAorI2lmIEVOQUJMRShD
TElFTlRfQkFTRURfR0VPTE9DQVRJT04pCisjZXJyb3IgIlRoaXMgZmlsZSBzaG91bGQgbm90IGJl
IGNvbXBpbGVkIHdoZW4gRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikiCisjZW5kaWYg
Ly8gRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKKwogI2lmIEVOQUJMRShHRU9MT0NB
VElPTikKIAogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1
bS9DaGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDE4MGUzMzBhNzgy
OWExOTRiZWU0ZTIzN2RmY2Q3MmRjNzU3Yjg4NzEuLjU3YWVlZjIwMjUyYmJiYWQ5MzVkNmE3NDEx
NjIyOGM5MDc3ODA5N2QgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysr
IGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDEwLTEwLTEz
ICBKb2huIEtub3R0ZW5iZWx0ICA8amtub3R0ZW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpcnN0IHN0ZXAgdG93YXJkcyBj
bGllbnQtYmFzZWQgR2VvbG9jYXRpb24gaW4gQ2hyb21pdW0uIEJ1aWxkCisgICAgICAgIGZpeGVz
IGZvciBDTElFTlRfQkFTRURfR0VPTE9DQVRJT04gcHJlcHJvY2Vzc29yIGZlYXR1cmUgZGVmaW5l
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDc1ODYK
KworICAgICAgICAqIFdlYktpdC5neXA6CisgICAgICAgICogc3JjL0Nocm9tZUNsaWVudEltcGwu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpDaHJvbWVDbGllbnRJbXBsOjpyZXF1ZXN0R2VvbG9jYXRp
b25QZXJtaXNzaW9uRm9yRnJhbWUpOgorICAgICAgICAoV2ViS2l0OjpDaHJvbWVDbGllbnRJbXBs
OjpjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1ZXN0Rm9yRnJhbWUpOgorICAgICAgICAq
IHNyYy9DaHJvbWl1bUJyaWRnZS5jcHA6CisgICAgICAgICogc3JjL1dlYkdlb2xvY2F0aW9uU2Vy
dmljZU1vY2suY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2Nr
OjpjcmVhdGVXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
R2VvbG9jYXRpb25TZXJ2aWNlTW9jazo6c2V0TW9ja0dlb2xvY2F0aW9uUGVybWlzc2lvbik6Cisg
ICAgICAgIChXZWJLaXQ6OldlYkdlb2xvY2F0aW9uU2VydmljZU1vY2s6OnNldE1vY2tHZW9sb2Nh
dGlvblBvc2l0aW9uKToKKyAgICAgICAgKFdlYktpdDo6V2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9j
azo6c2V0TW9ja0dlb2xvY2F0aW9uRXJyb3IpOgorCiAyMDEwLTEwLTEyICBLZW5uZXRoIFJ1c3Nl
bGwgIDxrYnJAZ29vZ2xlLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLiBGaXhlcyBmb3IgYWxs
IFdlYkdMIGNvbnRlbnQgY2F1c2luZyBhc3NlcnRpb24gZmFpbHVyZXMKZGlmZiAtLWdpdCBhL1dl
YktpdC9jaHJvbWl1bS9XZWJLaXQuZ3lwIGIvV2ViS2l0L2Nocm9taXVtL1dlYktpdC5neXAKaW5k
ZXggNzQ4Njg4MTY5ODFiMWI3ODRmZTQ1ZjU4Njc0MWEzNjc0NWE3MmU4Mi4uOWEwM2I5OGM0NWI1
YzI5OGFlZWVhNTFhNmQ1MjdlNjk5ZmE5YzNhZiAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVt
L1dlYktpdC5neXAKKysrIGIvV2ViS2l0L2Nocm9taXVtL1dlYktpdC5neXAKQEAgLTY0Niw2ICs2
NDYsMTIgQEAKICAgICAgICAgICAgICAgICAgICAgICAgIH1dLAogICAgICAgICAgICAgICAgICAg
ICBdLAogICAgICAgICAgICAgICAgIH1dLAorICAgICAgICAgICAgICAgIFsnIkVOQUJMRV9DTElF
TlRfQkFTRURfR0VPTE9DQVRJT049MSIgaW4gZmVhdHVyZV9kZWZpbmVzJywgeworICAgICAgICAg
ICAgICAgICAgICAnc291cmNlcy8nOiBbCisgICAgICAgICAgICAgICAgICAgICAgICBbJ2V4Y2x1
ZGUnLCAnV2ViR2VvbG9jYXRpb25TZXJ2aWNlLiokJ10sCisgICAgICAgICAgICAgICAgICAgICAg
ICBbJ2luY2x1ZGUnLCAnV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jay4qJ10sCisgICAgICAgICAg
ICAgICAgICAgIF0sCisgICAgICAgICAgICAgICAgfV0KICAgICAgICAgICAgIF0sCiAgICAgICAg
IH0sCiAKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9zcmMvQ2hyb21lQ2xpZW50SW1wbC5j
cHAgYi9XZWJLaXQvY2hyb21pdW0vc3JjL0Nocm9tZUNsaWVudEltcGwuY3BwCmluZGV4IDU3NGE5
ZjY4NjNmZTI4NWIzOTQ3ZDQ3ZGM1YWQ5YzJmMTllYjI2NjEuLjM1MDM3MWFkNDljMWM3ZmIyYWI5
MDE2ZGJiYmY2YzA2YjBkZTcwNTEgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9zcmMvQ2hy
b21lQ2xpZW50SW1wbC5jcHAKKysrIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJ
bXBsLmNwcApAQCAtNzcxLDE1ICs3NzEsMjMgQEAgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBDaHJv
bWVDbGllbnRJbXBsOjpub3RpZmljYXRpb25QcmVzZW50ZXIoKSBjb25zdAogCiB2b2lkIENocm9t
ZUNsaWVudEltcGw6OnJlcXVlc3RHZW9sb2NhdGlvblBlcm1pc3Npb25Gb3JGcmFtZShGcmFtZSog
ZnJhbWUsIEdlb2xvY2F0aW9uKiBnZW9sb2NhdGlvbikKIHsKKyNpZiBFTkFCTEUoQ0xJRU5UX0JB
U0VEX0dFT0xPQ0FUSU9OKQorICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgQ2xpZW50LWJhc2VkIEdl
b2xvY2F0aW9uIFBlcm1pc3Npb25zCisjZWxzZQogICAgIEdlb2xvY2F0aW9uU2VydmljZUNocm9t
aXVtKiBnZW9sb2NhdGlvblNlcnZpY2UgPSBzdGF0aWNfY2FzdDxHZW9sb2NhdGlvblNlcnZpY2VD
aHJvbWl1bSo+KGdlb2xvY2F0aW9uLT5nZXRHZW9sb2NhdGlvblNlcnZpY2UoKSk7CiAgICAgZ2Vv
bG9jYXRpb25TZXJ2aWNlLT5nZW9sb2NhdGlvblNlcnZpY2VCcmlkZ2UoKS0+YXR0YWNoQnJpZGdl
SWZOZWVkZWQoKTsKICAgICBtX3dlYlZpZXctPmNsaWVudCgpLT5nZW9sb2NhdGlvblNlcnZpY2Uo
KS0+cmVxdWVzdFBlcm1pc3Npb25Gb3JGcmFtZShnZW9sb2NhdGlvblNlcnZpY2UtPmdlb2xvY2F0
aW9uU2VydmljZUJyaWRnZSgpLT5nZXRCcmlkZ2VJZCgpLCBmcmFtZS0+ZG9jdW1lbnQoKS0+dXJs
KCkpOworI2VuZGlmCiB9CiAKIHZvaWQgQ2hyb21lQ2xpZW50SW1wbDo6Y2FuY2VsR2VvbG9jYXRp
b25QZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKEZyYW1lKiBmcmFtZSwgR2VvbG9jYXRpb24qIGdl
b2xvY2F0aW9uKQogeworI2lmIEVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCisgICAg
Ly8gRklYTUU6IEltcGxlbWVudCBDbGllbnQtYmFzZWQgR2VvbG9jYXRpb24gUGVybWlzc2lvbnMK
KyNlbHNlCiAgICAgR2VvbG9jYXRpb25TZXJ2aWNlQ2hyb21pdW0qIGdlb2xvY2F0aW9uU2Vydmlj
ZSA9IHN0YXRpY19jYXN0PEdlb2xvY2F0aW9uU2VydmljZUNocm9taXVtKj4oZ2VvbG9jYXRpb24t
PmdldEdlb2xvY2F0aW9uU2VydmljZSgpKTsKICAgICBtX3dlYlZpZXctPmNsaWVudCgpLT5nZW9s
b2NhdGlvblNlcnZpY2UoKS0+Y2FuY2VsUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZShnZW9sb2Nh
dGlvblNlcnZpY2UtPmdlb2xvY2F0aW9uU2VydmljZUJyaWRnZSgpLT5nZXRCcmlkZ2VJZCgpLCBm
cmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCkpOworI2VuZGlmCiB9CiAKICNpZiBVU0UoQUNDRUxFUkFU
RURfQ09NUE9TSVRJTkcpCmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vc3JjL0Nocm9taXVt
QnJpZGdlLmNwcCBiL1dlYktpdC9jaHJvbWl1bS9zcmMvQ2hyb21pdW1CcmlkZ2UuY3BwCmluZGV4
IDAzYWY3YzU4MGJhOTFmZDE3NzYwYjRlMmEwNTg0ZTRhY2E3MzdhMmUuLjFjNTg4MjRhM2FmYzc2
MDcxNzExNzQwY2RlNWYwZGI5ZDRiNTBkMTQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9jaHJvbWl1bS9z
cmMvQ2hyb21pdW1CcmlkZ2UuY3BwCisrKyBiL1dlYktpdC9jaHJvbWl1bS9zcmMvQ2hyb21pdW1C
cmlkZ2UuY3BwCkBAIC04Niw3ICs4NiwxMSBAQAogI2luY2x1ZGUgIlBsYXRmb3JtQ29udGV4dFNr
aWEuaCIKICNpbmNsdWRlICJQbHVnaW5EYXRhLmgiCiAjaW5jbHVkZSAiU2hhcmVkQnVmZmVyLmgi
CisKKyNpZiAhRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKICNpbmNsdWRlICJXZWJH
ZW9sb2NhdGlvblNlcnZpY2VCcmlkZ2VJbXBsLmgiCisjZW5kaWYKKwogI2luY2x1ZGUgIldvcmtl
ci5oIgogI2luY2x1ZGUgIldvcmtlckNvbnRleHRQcm94eS5oIgogI2luY2x1ZGUgPHd0Zi9Bc3Nl
cnRpb25zLmg+CkBAIC00NjUsMTIgKzQ2OSwxNCBAQCBib29sIENocm9taXVtQnJpZGdlOjpsb2Fk
Rm9udChOU0ZvbnQqIHNyY0ZvbnQsIEFUU0ZvbnRDb250YWluZXJSZWYqIG91dCkKIH0KICNlbmRp
ZgogCisjaWYgIUVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCiAvLyBHZW9sb2NhdGlv
biAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tCiAKIEdlb2xvY2F0aW9uU2VydmljZUJyaWRnZSogQ2hyb21pdW1CcmlkZ2U6OmNy
ZWF0ZUdlb2xvY2F0aW9uU2VydmljZUJyaWRnZShHZW9sb2NhdGlvblNlcnZpY2VDaHJvbWl1bSog
Z2VvbG9jYXRpb25TZXJ2aWNlQ2hyb21pdW0pCiB7CiAgICAgcmV0dXJuIGNyZWF0ZUdlb2xvY2F0
aW9uU2VydmljZUJyaWRnZUltcGwoZ2VvbG9jYXRpb25TZXJ2aWNlQ2hyb21pdW0pOwogfQorI2Vu
ZGlmCiAKIC8vIERhdGFiYXNlcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIApkaWZmIC0tZ2l0IGEvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrLmNwcCBiL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jay5jcHAKaW5kZXggZTE0OWNmMWI3ZWI0NWFlYzg5
MDVmZGE2YzVlYzgyNTk1OGVkMzljYS4uMDdkM2Y0NDU5OGNkYTMxODNhMDAzNGQwZWQxZDZkMTI4
MjdlOWEyNCAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJHZW9sb2NhdGlvblNl
cnZpY2VNb2NrLmNwcAorKysgYi9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkdlb2xvY2F0aW9uU2Vy
dmljZU1vY2suY3BwCkBAIC00Miw2ICs0MiwzOCBAQAogCiAjaWYgRU5BQkxFKEdFT0xPQ0FUSU9O
KQogCisjaWYgRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKKy8vIEZJWE1FOiBJbXBs
ZW1lbnQgbW9jayBiaW5kaW5ncyBmb3IgY2xpZW50LWJhc2VkIGdlb2xvY2F0aW9uLiBVbHRpbWF0
ZWx5CisvLyBtb3ZlIHRvIGFub3RoZXIgY2xhc3MgYW5kIHJlbW92ZSBXZWJHZW9sb2NhdGlvblNl
cnZpY2UqLgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworY2xhc3MgV2ViR2VvbG9jYXRpb25TZXJ2
aWNlTW9ja0NsaWVudEJhc2VkSW1wbCA6IHB1YmxpYyBXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2Nr
IHsKK307CisKK1dlYkdlb2xvY2F0aW9uU2VydmljZU1vY2sqIFdlYkdlb2xvY2F0aW9uU2Vydmlj
ZU1vY2s6OmNyZWF0ZVdlYkdlb2xvY2F0aW9uU2VydmljZU1vY2soKQoreworICAgIHJldHVybiBu
ZXcgV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9ja0NsaWVudEJhc2VkSW1wbDsKK30KKwordm9pZCBX
ZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrOjpzZXRNb2NrR2VvbG9jYXRpb25QZXJtaXNzaW9uKGJv
b2wgYWxsb3dlZCkKK3sKKyAgICAvLyBGSVhNRTogSW1wbGVtZW50IG1vY2sgYmluZGluZworfQor
Cit2b2lkIFdlYkdlb2xvY2F0aW9uU2VydmljZU1vY2s6OnNldE1vY2tHZW9sb2NhdGlvblBvc2l0
aW9uKGRvdWJsZSBsYXRpdHVkZSwgZG91YmxlIGxvbmdpdHVkZSwgZG91YmxlIGFjY3VyYWN5KQor
eworICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgbW9jayBiaW5kaW5nCit9CisKK3ZvaWQgV2ViR2Vv
bG9jYXRpb25TZXJ2aWNlTW9jazo6c2V0TW9ja0dlb2xvY2F0aW9uRXJyb3IoaW50IGVycm9yQ29k
ZSwgY29uc3QgV2ViU3RyaW5nJiBtZXNzYWdlKQoreworICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQg
bW9jayBiaW5kaW5nCit9CisKK30gLy8gbmFtZXNwYWNlIFdlYktpdAorCisjZWxzZQogdXNpbmcg
V2ViQ29yZTo6Q29vcmRpbmF0ZXM7CiB1c2luZyBXZWJDb3JlOjpGcmFtZTsKIHVzaW5nIFdlYkNv
cmU6Okdlb2xvY2F0aW9uOwpAQCAtMjQxLDQgKzI3Myw1IEBAIHZvaWQgV2ViR2VvbG9jYXRpb25T
ZXJ2aWNlTW9ja0ltcGw6Om5vdGlmeVBlbmRpbmdQZXJtaXNzaW9ucygpCiAKIH0gLy8gbmFtZXNw
YWNlIFdlYktpdAogCisjZW5kaWYgLy8gRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikK
ICNlbmRpZiAvLyBFTkFCTEUoR0VPTE9DQVRJT04pCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9D
aGFuZ2VMb2cgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKaW5kZXggZTliZDMxMDdlNTE4M2EyMWE4
YTJhZjVhNzYxNWJlNjgyNjNkYzJkNy4uYWExODFjM2M2OWRlNWU0ZDllZTY4YmEwNDQ3OGRhOGY3
YWZkNTNjYyAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCisrKyBiL1dlYktpdFRv
b2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEwLTEwLTEzICBKb2huIEtub3R0ZW5i
ZWx0ICA8amtub3R0ZW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEZpcnN0IHN0ZXAgdG93YXJkcyBjbGllbnQtYmFzZWQgR2Vv
bG9jYXRpb24gaW4gQ2hyb21pdW0uIEJ1aWxkCisgICAgICAgIGZpeGVzIGZvciBDTElFTlRfQkFT
RURfR0VPTE9DQVRJT04gcHJlcHJvY2Vzc29yIGZlYXR1cmUgZGVmaW5lLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDc1ODYKKworICAgICAgICAqIER1
bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlZpZXdIb3N0LmNwcDoKKyAgICAgICAgKiBEdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9XZWJWaWV3SG9zdC5oOgorCiAyMDEwLTEwLTEyICBEaXJrIFByYW5r
ZSAgPGRwcmFua2VAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2Vp
ZGVsLgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2Vi
Vmlld0hvc3QuY3BwIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViVmll
d0hvc3QuY3BwCmluZGV4IDAzMTY3ZWY1MjRmNGZiYWY3NjFhZmY5MmNkMmQzYWQyMTI2NGMyZDUu
LjVhNjQ4NTYxYjhlN2E1MmRkZmVlOWVkZDUwNWRkZjU2MTY2NzExMTkgMTAwNjQ0Ci0tLSBhL1dl
YktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlZpZXdIb3N0LmNwcAorKysgYi9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJWaWV3SG9zdC5jcHAKQEAgLTU1
OSwxMiArNTU5LDE0IEBAIFdlYk5vdGlmaWNhdGlvblByZXNlbnRlciogV2ViVmlld0hvc3Q6Om5v
dGlmaWNhdGlvblByZXNlbnRlcigpCiAgICAgcmV0dXJuIG1fc2hlbGwtPm5vdGlmaWNhdGlvblBy
ZXNlbnRlcigpOwogfQogCisjaWYgIUVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCiBX
ZWJLaXQ6OldlYkdlb2xvY2F0aW9uU2VydmljZSogV2ViVmlld0hvc3Q6Omdlb2xvY2F0aW9uU2Vy
dmljZSgpCiB7CiAgICAgaWYgKCFtX2dlb2xvY2F0aW9uU2VydmljZU1vY2suZ2V0KCkpCiAgICAg
ICAgIG1fZ2VvbG9jYXRpb25TZXJ2aWNlTW9jay5zZXQoV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9j
azo6Y3JlYXRlV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jaygpKTsKICAgICByZXR1cm4gbV9nZW9s
b2NhdGlvblNlcnZpY2VNb2NrLmdldCgpOwogfQorI2VuZGlmCiAKIFdlYlNwZWVjaElucHV0Q29u
dHJvbGxlciogV2ViVmlld0hvc3Q6OnNwZWVjaElucHV0Q29udHJvbGxlcihXZWJLaXQ6OldlYlNw
ZWVjaElucHV0TGlzdGVuZXIqIGxpc3RlbmVyKQogewpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMv
RHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViVmlld0hvc3QuaCBiL1dlYktpdFRvb2xzL0R1bXBS
ZW5kZXJUcmVlL2Nocm9taXVtL1dlYlZpZXdIb3N0LmgKaW5kZXggZDYwZWE3NjNlNzhlYjc5MzU0
YWFjOTM1ODgzMDY4NmNmMGI5ZGE5OC4uZGI1MDUwNjU2M2EyNjI5NjZiZmFhNmY0MzBlYTVmNGY1
YjVmZTdhYiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0v
V2ViVmlld0hvc3QuaAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9X
ZWJWaWV3SG9zdC5oCkBAIC0xMjksNyArMTI5LDkgQEAgY2xhc3MgV2ViVmlld0hvc3QgOiBwdWJs
aWMgV2ViS2l0OjpXZWJWaWV3Q2xpZW50LCBwdWJsaWMgV2ViS2l0OjpXZWJGcmFtZUNsaWVudCwK
ICAgICB2aXJ0dWFsIGludCBoaXN0b3J5Rm9yd2FyZExpc3RDb3VudCgpOwogICAgIHZpcnR1YWwg
dm9pZCBwb3N0QWNjZXNzaWJpbGl0eU5vdGlmaWNhdGlvbihjb25zdCBXZWJLaXQ6OldlYkFjY2Vz
c2liaWxpdHlPYmplY3QmLCBXZWJLaXQ6OldlYkFjY2Vzc2liaWxpdHlOb3RpZmljYXRpb24pOwog
ICAgIHZpcnR1YWwgV2ViS2l0OjpXZWJOb3RpZmljYXRpb25QcmVzZW50ZXIqIG5vdGlmaWNhdGlv
blByZXNlbnRlcigpOworI2lmICFFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQogICAg
IHZpcnR1YWwgV2ViS2l0OjpXZWJHZW9sb2NhdGlvblNlcnZpY2UqIGdlb2xvY2F0aW9uU2Vydmlj
ZSgpOworI2VuZGlmCiAgICAgdmlydHVhbCBXZWJLaXQ6OldlYlNwZWVjaElucHV0Q29udHJvbGxl
ciogc3BlZWNoSW5wdXRDb250cm9sbGVyKFdlYktpdDo6V2ViU3BlZWNoSW5wdXRMaXN0ZW5lciop
OwogICAgIHZpcnR1YWwgV2ViS2l0OjpXZWJEZXZpY2VPcmllbnRhdGlvbkNsaWVudCogZGV2aWNl
T3JpZW50YXRpb25DbGllbnQoKTsKIApAQCAtMjg3LDggKzI4OSwxMCBAQCBwcml2YXRlOgogICAg
IFdlYktpdDo6V2ViUmVjdCBtX3BhaW50UmVjdDsKICAgICBib29sIG1faXNQYWludGluZzsKIAor
I2lmICFFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQogICAgIC8vIEdlb2xvY2F0aW9u
CiAgICAgT3duUHRyPFdlYktpdDo6V2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jaz4gbV9nZW9sb2Nh
dGlvblNlcnZpY2VNb2NrOworI2VuZGlmCiAKICAgICBPd25QdHI8VGVzdE5hdmlnYXRpb25Db250
cm9sbGVyKj4gbV9uYXZpZ2F0aW9uQ29udHJvbGxlcjsKIH07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>70616</attachid>
            <date>2010-10-13 09:30:36 -0700</date>
            <delta_ts>2010-10-13 11:02:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-47586-20101013173034.patch</filename>
            <type>text/plain</type>
            <size>11883</size>
            <attacher name="John Knottenbelt">jknotten</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
N2NmYTQ1YmI3YTEyNTNkZTliN2VmOGM0ODAxNDVkYzcyZTg0YWQzMi4uOTJmMzhkNTZmMDA3Y2Zl
YTQyMWVkMGUxNjY2M2IxMTQwNmViZTkxNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMC0xMC0xMyAgSm9o
biBLbm90dGVuYmVsdCAgPGprbm90dGVuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGaXJzdCBzdGVwIHRvd2FyZHMgY2xpZW50
LWJhc2VkIEdlb2xvY2F0aW9uIGluIENocm9taXVtLiBCdWlsZAorICAgICAgICBmaXhlcyBmb3Ig
Q0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OIHByZXByb2Nlc3NvciBmZWF0dXJlIGRlZmluZS4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ3NTg2CisKKyAg
ICAgICAgKiBXZWJDb3JlLmd5cC9XZWJDb3JlLmd5cDoKKyAgICAgICAgKiBwbGF0Zm9ybS9jaHJv
bWl1bS9DaHJvbWl1bUJyaWRnZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2Nocm9taXVtL0dlb2xv
Y2F0aW9uU2VydmljZUNocm9taXVtLmNwcDoKKwogMjAxMC0xMC0xMyAgU3RldmUgQmxvY2sgIDxz
dGV2ZWJsb2NrQGdvb2dsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQWxleGV5IFByb3Nr
dXJ5YWtvdi4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5neXAvV2ViQ29yZS5neXAgYi9X
ZWJDb3JlL1dlYkNvcmUuZ3lwL1dlYkNvcmUuZ3lwCmluZGV4IDJmNDU3OTlhOWQ0MmNhODE2NTQw
MDQ4ZmRmMGY4MDZmZDJlNmRmYjAuLmFiMGQzMzgzZjRlZjk1YzRjNTVkZWFkY2M3N2Y0ZmRkNmI1
MGRjYzAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5neXAvV2ViQ29yZS5neXAKKysrIGIv
V2ViQ29yZS9XZWJDb3JlLmd5cC9XZWJDb3JlLmd5cApAQCAtMTIwMiw2ICsxMjAyLDExIEBACiAg
ICAgICAgICAgICBbJ2V4Y2x1ZGUnLCAnUG9zaXhcXC5jcHAkJ10sCiAgICAgICAgICAgXSwKICAg
ICAgICAgfV0sCisgICAgICAgIFsnIkVOQUJMRV9DTElFTlRfQkFTRURfR0VPTE9DQVRJT049MSIg
aW4gZmVhdHVyZV9kZWZpbmVzJywgeworICAgICAgICAgICdzb3VyY2VzLyc6IFsKKyAgICAgICAg
ICAgIFsnZXhjbHVkZScsICcvR2VvbG9jYXRpb25TZXJ2aWNlLiokJ10sCisgICAgICAgICAgXSwK
KyAgICAgICAgfV0sCiAgICAgICBdLAogICAgIH0sCiAgICAgewpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9wbGF0Zm9ybS9jaHJvbWl1bS9DaHJvbWl1bUJyaWRnZS5oIGIvV2ViQ29yZS9wbGF0Zm9ybS9j
aHJvbWl1bS9DaHJvbWl1bUJyaWRnZS5oCmluZGV4IDFjODE5ZTViOTkzZjVjYWU4ZGU1YmZlZjVh
MTJmMTg4MGZkY2E2YjMuLjc0YmFkMDQ0ZjU5OTA4NmU4MGQyNTUxZTYxYzNhOWYwNjBlNWFkNGYg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vQ2hyb21pdW1CcmlkZ2UuaAor
KysgYi9XZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL0Nocm9taXVtQnJpZGdlLmgKQEAgLTE1NCw5
ICsxNTQsMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICAvLyBGb3JtcyAtLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQog
ICAgICAgICBzdGF0aWMgdm9pZCBub3RpZnlGb3JtU3RhdGVDaGFuZ2VkKGNvbnN0IERvY3VtZW50
Kik7CiAKKyNpZiAhRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKICAgICAgICAgLy8g
R2VvbG9jYXRpb24gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0KICAgICAgICAgc3RhdGljIEdlb2xvY2F0aW9uU2VydmljZUJyaWRnZSogY3Jl
YXRlR2VvbG9jYXRpb25TZXJ2aWNlQnJpZGdlKEdlb2xvY2F0aW9uU2VydmljZUNocm9taXVtKik7
Ci0KKyNlbmRpZgogICAgICAgICAvLyBEYXRhYmFzZXMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICAgICAgICAvLyBSZXR1cm5zIGEg
aGFuZGxlIHRvIHRoZSBEQiBmaWxlIGFuZCBvb3B0aW9uYWxseSBhIGhhbmRsZSB0byBpdHMgY29u
dGFpbmluZyBkaXJlY3RvcnkKICAgICAgICAgc3RhdGljIFBsYXRmb3JtRmlsZUhhbmRsZSBkYXRh
YmFzZU9wZW5GaWxlKGNvbnN0IFN0cmluZyYgdmZzRmxlTmFtZSwgaW50IGRlc2lyZWRGbGFncyk7
CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2Nocm9taXVtL0dlb2xvY2F0aW9uU2Vydmlj
ZUNocm9taXVtLmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vR2VvbG9jYXRpb25TZXJ2
aWNlQ2hyb21pdW0uY3BwCmluZGV4IGI2NGY1ZWI0YTdjZDdjYjU3MWUyZTBkYjlhY2JmMTVkNWM4
ZDQ3NTguLmM1ZTczYWU4YjQ1NzBmZGY4ODczMTdiYWEyNTZiNjIzN2FhNjU4NTkgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vR2VvbG9jYXRpb25TZXJ2aWNlQ2hyb21pdW0u
Y3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vY2hyb21pdW0vR2VvbG9jYXRpb25TZXJ2aWNlQ2hy
b21pdW0uY3BwCkBAIC0zMyw2ICszMywxMCBAQAogCiAjaW5jbHVkZSAiQ2hyb21pdW1CcmlkZ2Uu
aCIKIAorI2lmIEVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCisjZXJyb3IgIlRoaXMg
ZmlsZSBzaG91bGQgbm90IGJlIGNvbXBpbGVkIHdoZW4gRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9M
T0NBVElPTikiCisjZW5kaWYgLy8gRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKKwog
bmFtZXNwYWNlIFdlYkNvcmUgewogCiBHZW9sb2NhdGlvblNlcnZpY2VCcmlkZ2U6On5HZW9sb2Nh
dGlvblNlcnZpY2VCcmlkZ2UoKQpkaWZmIC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxv
ZyBiL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggMTgwZTMzMGE3ODI5YTE5NGJlZTRl
MjM3ZGZjZDcyZGM3NTdiODg3MS4uNTdhZWVmMjAyNTJiYmJhZDkzNWQ2YTc0MTE2MjI4YzkwNzc4
MDk3ZCAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZworKysgYi9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTAtMTAtMTMgIEpvaG4gS25v
dHRlbmJlbHQgIDxqa25vdHRlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRmlyc3Qgc3RlcCB0b3dhcmRzIGNsaWVudC1iYXNl
ZCBHZW9sb2NhdGlvbiBpbiBDaHJvbWl1bS4gQnVpbGQKKyAgICAgICAgZml4ZXMgZm9yIENMSUVO
VF9CQVNFRF9HRU9MT0NBVElPTiBwcmVwcm9jZXNzb3IgZmVhdHVyZSBkZWZpbmUuCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NzU4NgorCisgICAgICAg
ICogV2ViS2l0Lmd5cDoKKyAgICAgICAgKiBzcmMvQ2hyb21lQ2xpZW50SW1wbC5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OkNocm9tZUNsaWVudEltcGw6OnJlcXVlc3RHZW9sb2NhdGlvblBlcm1pc3Np
b25Gb3JGcmFtZSk6CisgICAgICAgIChXZWJLaXQ6OkNocm9tZUNsaWVudEltcGw6OmNhbmNlbEdl
b2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RGb3JGcmFtZSk6CisgICAgICAgICogc3JjL0Nocm9t
aXVtQnJpZGdlLmNwcDoKKyAgICAgICAgKiBzcmMvV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jay5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYkdlb2xvY2F0aW9uU2VydmljZU1vY2s6OmNyZWF0ZVdl
Ykdlb2xvY2F0aW9uU2VydmljZU1vY2spOgorICAgICAgICAoV2ViS2l0OjpXZWJHZW9sb2NhdGlv
blNlcnZpY2VNb2NrOjpzZXRNb2NrR2VvbG9jYXRpb25QZXJtaXNzaW9uKToKKyAgICAgICAgKFdl
YktpdDo6V2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jazo6c2V0TW9ja0dlb2xvY2F0aW9uUG9zaXRp
b24pOgorICAgICAgICAoV2ViS2l0OjpXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrOjpzZXRNb2Nr
R2VvbG9jYXRpb25FcnJvcik6CisKIDIwMTAtMTAtMTIgIEtlbm5ldGggUnVzc2VsbCAgPGtickBn
b29nbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQuIEZpeGVzIGZvciBhbGwgV2ViR0wgY29u
dGVudCBjYXVzaW5nIGFzc2VydGlvbiBmYWlsdXJlcwpkaWZmIC0tZ2l0IGEvV2ViS2l0L2Nocm9t
aXVtL1dlYktpdC5neXAgYi9XZWJLaXQvY2hyb21pdW0vV2ViS2l0Lmd5cAppbmRleCA3NDg2ODgx
Njk4MWIxYjc4NGZlNDVmNTg2NzQxYTM2NzQ1YTcyZTgyLi45YTAzYjk4YzQ1YjVjMjk4YWVlZWE1
MWE2ZDUyN2U2OTlmYTljM2FmIDEwMDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vV2ViS2l0Lmd5
cAorKysgYi9XZWJLaXQvY2hyb21pdW0vV2ViS2l0Lmd5cApAQCAtNjQ2LDYgKzY0NiwxMiBAQAog
ICAgICAgICAgICAgICAgICAgICAgICAgfV0sCiAgICAgICAgICAgICAgICAgICAgIF0sCiAgICAg
ICAgICAgICAgICAgfV0sCisgICAgICAgICAgICAgICAgWyciRU5BQkxFX0NMSUVOVF9CQVNFRF9H
RU9MT0NBVElPTj0xIiBpbiBmZWF0dXJlX2RlZmluZXMnLCB7CisgICAgICAgICAgICAgICAgICAg
ICdzb3VyY2VzLyc6IFsKKyAgICAgICAgICAgICAgICAgICAgICAgIFsnZXhjbHVkZScsICdXZWJH
ZW9sb2NhdGlvblNlcnZpY2UuKiQnXSwKKyAgICAgICAgICAgICAgICAgICAgICAgIFsnaW5jbHVk
ZScsICdXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrLionXSwKKyAgICAgICAgICAgICAgICAgICAg
XSwKKyAgICAgICAgICAgICAgICB9XQogICAgICAgICAgICAgXSwKICAgICAgICAgfSwKIApkaWZm
IC0tZ2l0IGEvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJbXBsLmNwcCBiL1dlYktp
dC9jaHJvbWl1bS9zcmMvQ2hyb21lQ2xpZW50SW1wbC5jcHAKaW5kZXggNTc0YTlmNjg2M2ZlMjg1
YjM5NDdkNDdkYzVhZDljMmYxOWViMjY2MS4uMzUwMzcxYWQ0OWMxYzdmYjJhYjkwMTZkYmJiZjZj
MDZiMGRlNzA1MSAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWVDbGllbnRJ
bXBsLmNwcAorKysgYi9XZWJLaXQvY2hyb21pdW0vc3JjL0Nocm9tZUNsaWVudEltcGwuY3BwCkBA
IC03NzEsMTUgKzc3MSwyMyBAQCBOb3RpZmljYXRpb25QcmVzZW50ZXIqIENocm9tZUNsaWVudElt
cGw6Om5vdGlmaWNhdGlvblByZXNlbnRlcigpIGNvbnN0CiAKIHZvaWQgQ2hyb21lQ2xpZW50SW1w
bDo6cmVxdWVzdEdlb2xvY2F0aW9uUGVybWlzc2lvbkZvckZyYW1lKEZyYW1lKiBmcmFtZSwgR2Vv
bG9jYXRpb24qIGdlb2xvY2F0aW9uKQogeworI2lmIEVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9D
QVRJT04pCisgICAgLy8gRklYTUU6IEltcGxlbWVudCBDbGllbnQtYmFzZWQgR2VvbG9jYXRpb24g
UGVybWlzc2lvbnMKKyNlbHNlCiAgICAgR2VvbG9jYXRpb25TZXJ2aWNlQ2hyb21pdW0qIGdlb2xv
Y2F0aW9uU2VydmljZSA9IHN0YXRpY19jYXN0PEdlb2xvY2F0aW9uU2VydmljZUNocm9taXVtKj4o
Z2VvbG9jYXRpb24tPmdldEdlb2xvY2F0aW9uU2VydmljZSgpKTsKICAgICBnZW9sb2NhdGlvblNl
cnZpY2UtPmdlb2xvY2F0aW9uU2VydmljZUJyaWRnZSgpLT5hdHRhY2hCcmlkZ2VJZk5lZWRlZCgp
OwogICAgIG1fd2ViVmlldy0+Y2xpZW50KCktPmdlb2xvY2F0aW9uU2VydmljZSgpLT5yZXF1ZXN0
UGVybWlzc2lvbkZvckZyYW1lKGdlb2xvY2F0aW9uU2VydmljZS0+Z2VvbG9jYXRpb25TZXJ2aWNl
QnJpZGdlKCktPmdldEJyaWRnZUlkKCksIGZyYW1lLT5kb2N1bWVudCgpLT51cmwoKSk7CisjZW5k
aWYKIH0KIAogdm9pZCBDaHJvbWVDbGllbnRJbXBsOjpjYW5jZWxHZW9sb2NhdGlvblBlcm1pc3Np
b25SZXF1ZXN0Rm9yRnJhbWUoRnJhbWUqIGZyYW1lLCBHZW9sb2NhdGlvbiogZ2VvbG9jYXRpb24p
CiB7CisjaWYgRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKKyAgICAvLyBGSVhNRTog
SW1wbGVtZW50IENsaWVudC1iYXNlZCBHZW9sb2NhdGlvbiBQZXJtaXNzaW9ucworI2Vsc2UKICAg
ICBHZW9sb2NhdGlvblNlcnZpY2VDaHJvbWl1bSogZ2VvbG9jYXRpb25TZXJ2aWNlID0gc3RhdGlj
X2Nhc3Q8R2VvbG9jYXRpb25TZXJ2aWNlQ2hyb21pdW0qPihnZW9sb2NhdGlvbi0+Z2V0R2VvbG9j
YXRpb25TZXJ2aWNlKCkpOwogICAgIG1fd2ViVmlldy0+Y2xpZW50KCktPmdlb2xvY2F0aW9uU2Vy
dmljZSgpLT5jYW5jZWxQZXJtaXNzaW9uUmVxdWVzdEZvckZyYW1lKGdlb2xvY2F0aW9uU2Vydmlj
ZS0+Z2VvbG9jYXRpb25TZXJ2aWNlQnJpZGdlKCktPmdldEJyaWRnZUlkKCksIGZyYW1lLT5kb2N1
bWVudCgpLT51cmwoKSk7CisjZW5kaWYKIH0KIAogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJ
VElORykKZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9zcmMvQ2hyb21pdW1CcmlkZ2UuY3Bw
IGIvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWl1bUJyaWRnZS5jcHAKaW5kZXggMDNhZjdjNTgw
YmE5MWZkMTc3NjBiNGUyYTA1ODRlNGFjYTczN2EyZS4uMWM1ODgyNGEzYWZjNzYwNzE3MTE3NDBj
ZGU1ZjBkYjlkNGI1MGQxNCAxMDA2NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWl1
bUJyaWRnZS5jcHAKKysrIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9DaHJvbWl1bUJyaWRnZS5jcHAK
QEAgLTg2LDcgKzg2LDExIEBACiAjaW5jbHVkZSAiUGxhdGZvcm1Db250ZXh0U2tpYS5oIgogI2lu
Y2x1ZGUgIlBsdWdpbkRhdGEuaCIKICNpbmNsdWRlICJTaGFyZWRCdWZmZXIuaCIKKworI2lmICFF
TkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQogI2luY2x1ZGUgIldlYkdlb2xvY2F0aW9u
U2VydmljZUJyaWRnZUltcGwuaCIKKyNlbmRpZgorCiAjaW5jbHVkZSAiV29ya2VyLmgiCiAjaW5j
bHVkZSAiV29ya2VyQ29udGV4dFByb3h5LmgiCiAjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4K
QEAgLTQ2NSwxMiArNDY5LDE0IEBAIGJvb2wgQ2hyb21pdW1CcmlkZ2U6OmxvYWRGb250KE5TRm9u
dCogc3JjRm9udCwgQVRTRm9udENvbnRhaW5lclJlZiogb3V0KQogfQogI2VuZGlmCiAKKyNpZiAh
RU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKIC8vIEdlb2xvY2F0aW9uIC0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
IAogR2VvbG9jYXRpb25TZXJ2aWNlQnJpZGdlKiBDaHJvbWl1bUJyaWRnZTo6Y3JlYXRlR2VvbG9j
YXRpb25TZXJ2aWNlQnJpZGdlKEdlb2xvY2F0aW9uU2VydmljZUNocm9taXVtKiBnZW9sb2NhdGlv
blNlcnZpY2VDaHJvbWl1bSkKIHsKICAgICByZXR1cm4gY3JlYXRlR2VvbG9jYXRpb25TZXJ2aWNl
QnJpZGdlSW1wbChnZW9sb2NhdGlvblNlcnZpY2VDaHJvbWl1bSk7CiB9CisjZW5kaWYKIAogLy8g
RGF0YWJhc2VzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLQogCmRpZmYgLS1naXQgYS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
Ykdlb2xvY2F0aW9uU2VydmljZU1vY2suY3BwIGIvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJHZW9s
b2NhdGlvblNlcnZpY2VNb2NrLmNwcAppbmRleCBlMTQ5Y2YxYjdlYjQ1YWVjODkwNWZkYTZjNWVj
ODI1OTU4ZWQzOWNhLi4wN2QzZjQ0NTk4Y2RhMzE4M2EwMDM0ZDBlZDFkNmQxMjgyN2U5YTI0IDEw
MDY0NAotLS0gYS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkdlb2xvY2F0aW9uU2VydmljZU1vY2su
Y3BwCisrKyBiL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jay5j
cHAKQEAgLTQyLDYgKzQyLDM4IEBACiAKICNpZiBFTkFCTEUoR0VPTE9DQVRJT04pCiAKKyNpZiBF
TkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQorLy8gRklYTUU6IEltcGxlbWVudCBtb2Nr
IGJpbmRpbmdzIGZvciBjbGllbnQtYmFzZWQgZ2VvbG9jYXRpb24uIFVsdGltYXRlbHkKKy8vIG1v
dmUgdG8gYW5vdGhlciBjbGFzcyBhbmQgcmVtb3ZlIFdlYkdlb2xvY2F0aW9uU2VydmljZSouCisK
K25hbWVzcGFjZSBXZWJLaXQgeworCitjbGFzcyBXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrQ2xp
ZW50QmFzZWRJbXBsIDogcHVibGljIFdlYkdlb2xvY2F0aW9uU2VydmljZU1vY2sgeworfTsKKwor
V2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jayogV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jazo6Y3Jl
YXRlV2ViR2VvbG9jYXRpb25TZXJ2aWNlTW9jaygpCit7CisgICAgcmV0dXJuIG5ldyBXZWJHZW9s
b2NhdGlvblNlcnZpY2VNb2NrQ2xpZW50QmFzZWRJbXBsOworfQorCit2b2lkIFdlYkdlb2xvY2F0
aW9uU2VydmljZU1vY2s6OnNldE1vY2tHZW9sb2NhdGlvblBlcm1pc3Npb24oYm9vbCBhbGxvd2Vk
KQoreworICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgbW9jayBiaW5kaW5nCit9CisKK3ZvaWQgV2Vi
R2VvbG9jYXRpb25TZXJ2aWNlTW9jazo6c2V0TW9ja0dlb2xvY2F0aW9uUG9zaXRpb24oZG91Ymxl
IGxhdGl0dWRlLCBkb3VibGUgbG9uZ2l0dWRlLCBkb3VibGUgYWNjdXJhY3kpCit7CisgICAgLy8g
RklYTUU6IEltcGxlbWVudCBtb2NrIGJpbmRpbmcKK30KKwordm9pZCBXZWJHZW9sb2NhdGlvblNl
cnZpY2VNb2NrOjpzZXRNb2NrR2VvbG9jYXRpb25FcnJvcihpbnQgZXJyb3JDb2RlLCBjb25zdCBX
ZWJTdHJpbmcmIG1lc3NhZ2UpCit7CisgICAgLy8gRklYTUU6IEltcGxlbWVudCBtb2NrIGJpbmRp
bmcKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0CisKKyNlbHNlCiB1c2luZyBXZWJDb3JlOjpD
b29yZGluYXRlczsKIHVzaW5nIFdlYkNvcmU6OkZyYW1lOwogdXNpbmcgV2ViQ29yZTo6R2VvbG9j
YXRpb247CkBAIC0yNDEsNCArMjczLDUgQEAgdm9pZCBXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2Nr
SW1wbDo6bm90aWZ5UGVuZGluZ1Blcm1pc3Npb25zKCkKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0
CiAKKyNlbmRpZiAvLyBFTkFCTEUoQ0xJRU5UX0JBU0VEX0dFT0xPQ0FUSU9OKQogI2VuZGlmIC8v
IEVOQUJMRShHRU9MT0NBVElPTikKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBi
L1dlYktpdFRvb2xzL0NoYW5nZUxvZwppbmRleCBlOWJkMzEwN2U1MTgzYTIxYThhMmFmNWE3NjE1
YmU2ODI2M2RjMmQ3Li5hYTE4MWMzYzY5ZGU1ZTRkOWVlNjhiYTA0NDc4ZGE4ZjdhZmQ1M2NjIDEw
MDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTAtMTAtMTMgIEpvaG4gS25vdHRlbmJlbHQgIDxqa25v
dHRlbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgRmlyc3Qgc3RlcCB0b3dhcmRzIGNsaWVudC1iYXNlZCBHZW9sb2NhdGlvbiBp
biBDaHJvbWl1bS4gQnVpbGQKKyAgICAgICAgZml4ZXMgZm9yIENMSUVOVF9CQVNFRF9HRU9MT0NB
VElPTiBwcmVwcm9jZXNzb3IgZmVhdHVyZSBkZWZpbmUuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NzU4NgorCisgICAgICAgICogRHVtcFJlbmRlclRy
ZWUvY2hyb21pdW0vV2ViVmlld0hvc3QuY3BwOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2No
cm9taXVtL1dlYlZpZXdIb3N0Lmg6CisKIDIwMTAtMTAtMTIgIERpcmsgUHJhbmtlICA8ZHByYW5r
ZUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCmRpZmYg
LS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJWaWV3SG9zdC5j
cHAgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJWaWV3SG9zdC5jcHAK
aW5kZXggMDMxNjdlZjUyNGY0ZmJhZjc2MWFmZjkyY2QyZDNhZDIxMjY0YzJkNS4uNWE2NDg1NjFi
OGU3YTUyZGRmZWU5ZWRkNTA1ZGRmNTYxNjY3MTExOSAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMv
RHVtcFJlbmRlclRyZWUvY2hyb21pdW0vV2ViVmlld0hvc3QuY3BwCisrKyBiL1dlYktpdFRvb2xz
L0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlZpZXdIb3N0LmNwcApAQCAtNTU5LDEyICs1NTks
MTQgQEAgV2ViTm90aWZpY2F0aW9uUHJlc2VudGVyKiBXZWJWaWV3SG9zdDo6bm90aWZpY2F0aW9u
UHJlc2VudGVyKCkKICAgICByZXR1cm4gbV9zaGVsbC0+bm90aWZpY2F0aW9uUHJlc2VudGVyKCk7
CiB9CiAKKyNpZiAhRU5BQkxFKENMSUVOVF9CQVNFRF9HRU9MT0NBVElPTikKIFdlYktpdDo6V2Vi
R2VvbG9jYXRpb25TZXJ2aWNlKiBXZWJWaWV3SG9zdDo6Z2VvbG9jYXRpb25TZXJ2aWNlKCkKIHsK
ICAgICBpZiAoIW1fZ2VvbG9jYXRpb25TZXJ2aWNlTW9jay5nZXQoKSkKICAgICAgICAgbV9nZW9s
b2NhdGlvblNlcnZpY2VNb2NrLnNldChXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrOjpjcmVhdGVX
ZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrKCkpOwogICAgIHJldHVybiBtX2dlb2xvY2F0aW9uU2Vy
dmljZU1vY2suZ2V0KCk7CiB9CisjZW5kaWYKIAogV2ViU3BlZWNoSW5wdXRDb250cm9sbGVyKiBX
ZWJWaWV3SG9zdDo6c3BlZWNoSW5wdXRDb250cm9sbGVyKFdlYktpdDo6V2ViU3BlZWNoSW5wdXRM
aXN0ZW5lciogbGlzdGVuZXIpCiB7CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVy
VHJlZS9jaHJvbWl1bS9XZWJWaWV3SG9zdC5oIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vV2ViVmlld0hvc3QuaAppbmRleCBkNjBlYTc2M2U3OGViNzkzNTRhYWM5MzU4ODMw
Njg2Y2YwYjlkYTk4Li5kYjUwNTA2NTYzYTI2Mjk2NmJmYWE2ZjQzMGVhNWY0ZjViNWZlN2FiIDEw
MDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9XZWJWaWV3SG9z
dC5oCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1dlYlZpZXdIb3N0
LmgKQEAgLTEyOSw3ICsxMjksOSBAQCBjbGFzcyBXZWJWaWV3SG9zdCA6IHB1YmxpYyBXZWJLaXQ6
OldlYlZpZXdDbGllbnQsIHB1YmxpYyBXZWJLaXQ6OldlYkZyYW1lQ2xpZW50LAogICAgIHZpcnR1
YWwgaW50IGhpc3RvcnlGb3J3YXJkTGlzdENvdW50KCk7CiAgICAgdmlydHVhbCB2b2lkIHBvc3RB
Y2Nlc3NpYmlsaXR5Tm90aWZpY2F0aW9uKGNvbnN0IFdlYktpdDo6V2ViQWNjZXNzaWJpbGl0eU9i
amVjdCYsIFdlYktpdDo6V2ViQWNjZXNzaWJpbGl0eU5vdGlmaWNhdGlvbik7CiAgICAgdmlydHVh
bCBXZWJLaXQ6OldlYk5vdGlmaWNhdGlvblByZXNlbnRlciogbm90aWZpY2F0aW9uUHJlc2VudGVy
KCk7CisjaWYgIUVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCiAgICAgdmlydHVhbCBX
ZWJLaXQ6OldlYkdlb2xvY2F0aW9uU2VydmljZSogZ2VvbG9jYXRpb25TZXJ2aWNlKCk7CisjZW5k
aWYKICAgICB2aXJ0dWFsIFdlYktpdDo6V2ViU3BlZWNoSW5wdXRDb250cm9sbGVyKiBzcGVlY2hJ
bnB1dENvbnRyb2xsZXIoV2ViS2l0OjpXZWJTcGVlY2hJbnB1dExpc3RlbmVyKik7CiAgICAgdmly
dHVhbCBXZWJLaXQ6OldlYkRldmljZU9yaWVudGF0aW9uQ2xpZW50KiBkZXZpY2VPcmllbnRhdGlv
bkNsaWVudCgpOwogCkBAIC0yODcsOCArMjg5LDEwIEBAIHByaXZhdGU6CiAgICAgV2ViS2l0OjpX
ZWJSZWN0IG1fcGFpbnRSZWN0OwogICAgIGJvb2wgbV9pc1BhaW50aW5nOwogCisjaWYgIUVOQUJM
RShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCiAgICAgLy8gR2VvbG9jYXRpb24KICAgICBPd25Q
dHI8V2ViS2l0OjpXZWJHZW9sb2NhdGlvblNlcnZpY2VNb2NrPiBtX2dlb2xvY2F0aW9uU2Vydmlj
ZU1vY2s7CisjZW5kaWYKIAogICAgIE93blB0cjxUZXN0TmF2aWdhdGlvbkNvbnRyb2xsZXIqPiBt
X25hdmlnYXRpb25Db250cm9sbGVyOwogfTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>