<?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>56148</bug_id>
          
          <creation_ts>2011-03-10 15:42:21 -0800</creation_ts>
          <short_desc>[chromium] Graphics Context is not properly recovered if the GPU process dies.</short_desc>
          <delta_ts>2011-03-17 18:12:42 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</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>56620</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Marinichev">amarinichev</reporter>
          <assigned_to name="Alexey Marinichev">amarinichev</assigned_to>
          <cc>backer</cc>
    
    <cc>commit-queue</cc>
    
    <cc>kbr</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>365591</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-03-10 15:42:21 -0800</bug_when>
    <thetext>Because of the race in the lost context detection, recreated context will be thrown away when GPU process restarts.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>365598</commentid>
    <comment_count>1</comment_count>
      <attachid>85397</attachid>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-03-10 15:50:22 -0800</bug_when>
    <thetext>Created attachment 85397
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>365664</commentid>
    <comment_count>2</comment_count>
      <attachid>85397</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-03-10 16:54:03 -0800</bug_when>
    <thetext>Comment on attachment 85397
Patch

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

Good work fixing these deep issues; r- for a couple of relatively minor concerns.

&gt; Source/WebCore/platform/graphics/chromium/LayerRendererChromium.h:90
&gt; +    PassRefPtr&lt;LayerChromium&gt; rootLayer() { return m_rootLayer.release(); }

I&apos;ve already given you this feedback offline, but in this form this method should be named something like &quot;releaseRootLayer&quot;.

&gt; Source/WebKit/chromium/src/WebViewImpl.cpp:2436
&gt; +            getCompositorContextAttributes(), m_page-&gt;chrome(), GraphicsContext3D::RenderDirectlyToHostWindow);

Are any similar improvements needed in WebGLRenderingContext or WebGLLayer?

&gt; Source/WebKit/chromium/src/WebViewImpl.cpp:2443
&gt; +        // TODO(amarinichev): In MacOS newContext-&gt;reshape method needs to be

WebKit uses FIXME without an owner, not TODO.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>365723</commentid>
    <comment_count>3</comment_count>
      <attachid>85418</attachid>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-03-10 18:15:58 -0800</bug_when>
    <thetext>Created attachment 85418
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366304</commentid>
    <comment_count>4</comment_count>
      <attachid>85418</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-03-11 14:04:03 -0800</bug_when>
    <thetext>Comment on attachment 85418
Patch

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

&gt; Source/WebKit/chromium/src/WebViewImpl.cpp:1087
&gt; +    if (m_recreatingGraphicsContext) {
&gt; +        reallocateRenderer();
&gt; +        m_recreatingGraphicsContext = false;
&gt; +        return;

It looks like we are going to lose the first composite operation right after recovery of the graphics context. Is this the case? Do we need another call to setRootLayerNeedsDisplay() or similar before returning here? And is it possible that doing so will avoid the need for the reshape hack in reallocateRenderer()?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366381</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-03-11 15:42:33 -0800</bug_when>
    <thetext>reallocateRenderer invalidates the root layer which will trigger repaint.  I don&apos;t think we&apos;re losing anything here.  Perhaps I should add a comment about that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366394</commentid>
    <comment_count>6</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-03-11 16:02:12 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; reallocateRenderer invalidates the root layer which will trigger repaint.  I don&apos;t think we&apos;re losing anything here.  Perhaps I should add a comment about that.

I think that would be helpful if you wouldn&apos;t mind uploading another patch for it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366395</commentid>
    <comment_count>7</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-03-11 16:02:25 -0800</bug_when>
    <thetext>(The patch looks good otherwise and I&apos;m happy to r+ it.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366403</commentid>
    <comment_count>8</comment_count>
      <attachid>85552</attachid>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-03-11 16:22:39 -0800</bug_when>
    <thetext>Created attachment 85552
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366408</commentid>
    <comment_count>9</comment_count>
      <attachid>85552</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-03-11 16:26:47 -0800</bug_when>
    <thetext>Comment on attachment 85552
Patch

Looks good to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366409</commentid>
    <comment_count>10</comment_count>
      <attachid>85552</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-11 16:28:30 -0800</bug_when>
    <thetext>Comment on attachment 85552
Patch

Rejecting attachment 85552 from commit-queue.

Failed to run &quot;[&apos;./Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=cr-jail-8&apos;, &apos;apply-...&quot; exit_code: 2

Last 500 characters of output:
src/WebViewImpl.cpp
Hunk #1 succeeded at 1082 (offset 1 line).
Hunk #2 succeeded at 1099 (offset 1 line).
Hunk #3 succeeded at 2414 (offset 14 lines).
Hunk #4 FAILED at 2448.
1 out of 4 hunks FAILED -- saving rejects to file Source/WebKit/chromium/src/WebViewImpl.cpp.rej
patching file Source/WebKit/chromium/src/WebViewImpl.h
Hunk #1 succeeded at 532 (offset 1 line).

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, u&apos;--reviewer&apos;, u&apos;Kenneth Russell&apos;, u&apos;--...&quot; exit_code: 1

Full output: http://queues.webkit.org/results/8141474</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366433</commentid>
    <comment_count>11</comment_count>
      <attachid>85557</attachid>
    <who name="Alexey Marinichev">amarinichev</who>
    <bug_when>2011-03-11 17:05:41 -0800</bug_when>
    <thetext>Created attachment 85557
Rebased to top of tree.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366478</commentid>
    <comment_count>12</comment_count>
      <attachid>85557</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-03-11 19:03:04 -0800</bug_when>
    <thetext>Comment on attachment 85557
Rebased to top of tree.

Let&apos;s try again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366495</commentid>
    <comment_count>13</comment_count>
      <attachid>85557</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-11 20:25:37 -0800</bug_when>
    <thetext>Comment on attachment 85557
Rebased to top of tree.

Rejecting attachment 85557 from commit-queue.

Failed to run &quot;[&apos;./Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;--bot-id=cr-jail-7&apos;, &apos;build-...&quot; exit_code: 2

Last 500 characters of output:
......................................
tables/mozilla_expected_failures/other ..
transforms ....
transforms/2d ............
transforms/3d/general .....
transforms/3d/hit-testing ....
transforms/3d/point-mapping ........
transitions .................
transitions/interrupted-accelerated-transition.html -&gt; failed

Exiting early after 1 failures. 21675 tests run.
516.00s total testing time

21674 test cases (99%) succeeded
1 test case (&lt;1%) had incorrect layout
13 test cases (&lt;1%) had stderr output

Full output: http://queues.webkit.org/results/8141544</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>366520</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-11 22:08:19 -0800</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 85557:

transitions/interrupted-accelerated-transition.html bug 56242 (authors: simon.fraser@apple.com and tonyg@chromium.org)
The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367120</commentid>
    <comment_count>15</comment_count>
      <attachid>85557</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-03-14 12:20:40 -0700</bug_when>
    <thetext>Comment on attachment 85557
Rebased to top of tree.

I think that failure is unrelated to this patch. cq+&apos;ing again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367519</commentid>
    <comment_count>16</comment_count>
      <attachid>85557</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-14 22:56:47 -0700</bug_when>
    <thetext>Comment on attachment 85557
Rebased to top of tree.

Clearing flags on attachment: 85557

Committed r81113: &lt;http://trac.webkit.org/changeset/81113&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>367520</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-03-14 22:56:52 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>85397</attachid>
            <date>2011-03-10 15:50:22 -0800</date>
            <delta_ts>2011-03-10 18:15:56 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-56148-20110310155021.patch</filename>
            <type>text/plain</type>
            <size>6916</size>
            <attacher name="Alexey Marinichev">amarinichev</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA2OTUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAzMGIxZGNkZGNkZTM4OGFl
MWNhOWNhM2I5YjM2NmYwMjczNWY3YjYxLi45Y2ZlNjBhYWQ1MmQ5ZmI5YTUzNWQ0MzRmMDAyMmFi
MTZmZWJkYWZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTEtMDMtMTAgIEFsZXhl
eSBNYXJpbmljaGV2ICA8YW1hcmluaWNoZXZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEdyYXBoaWNzIENvbnRleHQgaXMgbm90
IHByb3Blcmx5IHJlY292ZXJlZCBpZiB0aGUgR1BVIHByb2Nlc3MgZGllcy4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU2MTQ4CisKKyAgICAgICAgU3Bs
aXQgY29udGV4dCByZWNyZWF0aW9uIGludG8gdHdvIHN0ZXBzLgorCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmg6CisgICAgICAgIChX
ZWJDb3JlOjpMYXllclJlbmRlcmVyQ2hyb21pdW06OnJvb3RMYXllcik6CisKIDIwMTEtMDMtMDkg
IEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIE5vdCByZXZpZXdl
ZC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVt
L0xheWVyUmVuZGVyZXJDaHJvbWl1bS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmgKaW5kZXggN2U4ODUwYWZkNTVhYTZi
OWZjNWM2ZWM4ODUwNDdiMWU5ZmFiOGE1ZS4uMTllODU1NjY4Njc3ZTM4MGI4YmI0OTJhMWM5Zjgx
MzI0NWRhMGVkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmgKQEAgLTg3LDcg
Kzg3LDcgQEAgcHVibGljOgogICAgIEludFNpemUgdmlzaWJsZVJlY3RTaXplKCkgY29uc3QgeyBy
ZXR1cm4gbV92aXNpYmxlUmVjdC5zaXplKCk7IH0KIAogICAgIHZvaWQgc2V0Um9vdExheWVyKFBh
c3NSZWZQdHI8TGF5ZXJDaHJvbWl1bT4gbGF5ZXIpOwotICAgIExheWVyQ2hyb21pdW0qIHJvb3RM
YXllcigpIHsgcmV0dXJuIG1fcm9vdExheWVyLmdldCgpOyB9CisgICAgUGFzc1JlZlB0cjxMYXll
ckNocm9taXVtPiByb290TGF5ZXIoKSB7IHJldHVybiBtX3Jvb3RMYXllci5yZWxlYXNlKCk7IH0K
ICAgICB2b2lkIHRyYW5zZmVyUm9vdExheWVyKExheWVyUmVuZGVyZXJDaHJvbWl1bSogb3RoZXIp
IHsgb3RoZXItPm1fcm9vdExheWVyID0gbV9yb290TGF5ZXIucmVsZWFzZSgpOyB9CiAKICAgICBi
b29sIGhhcmR3YXJlQ29tcG9zaXRpbmcoKSBjb25zdCB7IHJldHVybiBtX2hhcmR3YXJlQ29tcG9z
aXRpbmc7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggMGNiYTQxOTYyNWRiY2EzMTlh
MTdkMjhlNTNlNmRhZjBkZDM3OWU2Ny4uN2I1MzFhZDdiZDk2NmFlOTgzMGIxNzVmZTcyYjUxZjhh
NmI2MTk5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysr
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAx
MS0wMy0xMCAgQWxleGV5IE1hcmluaWNoZXYgIDxhbWFyaW5pY2hldkBjaHJvbWl1bS5vcmc+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgR3JhcGhpY3Mg
Q29udGV4dCBpcyBub3QgcHJvcGVybHkgcmVjb3ZlcmVkIGlmIHRoZSBHUFUgcHJvY2VzcyBkaWVz
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTYxNDgK
KworICAgICAgICBTcGxpdCBjb250ZXh0IHJlY3JlYXRpb24gaW50byB0d28gc3RlcHMuCisKKyAg
ICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1w
bDo6Y29tcG9zaXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6OmRvQ29tcG9zaXRl
KToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6OnJlYWxsb2NhdGVSZW5kZXJlcik6Cisg
ICAgICAgICogc3JjL1dlYlZpZXdJbXBsLmg6CisKIDIwMTEtMDMtMDggIEhhbnMgV2VubmJvcmcg
IDxoYW5zQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBKZXJlbXkgT3Jsb3cu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKaW5kZXggNmFlNGYz
NTg4NzY2MDhkODRiYzNlODMzODU5Zjk1ZDAzMmIzZTBlNi4uZWQ1NDlmYjA2MTlmMDlmMjg2Mjhi
OGY5OGFlMmVkMjI5Y2M0ZTZhYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViVmlld0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZp
ZXdJbXBsLmNwcApAQCAtMTA4MSw2ICsxMDgxLDExIEBAIHZvaWQgV2ViVmlld0ltcGw6OnRoZW1l
Q2hhbmdlZCgpCiB2b2lkIFdlYlZpZXdJbXBsOjpjb21wb3NpdGUoYm9vbCBmaW5pc2gpCiB7CiAj
aWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQorICAgIGlmIChtX3RyYW5zZmVycmluZ1Jv
b3RMYXllcikgeworICAgICAgICByZWFsbG9jYXRlUmVuZGVyZXIoKTsKKyAgICAgICAgbV90cmFu
c2ZlcnJpbmdSb290TGF5ZXIuY2xlYXIoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KICAgICBk
b0NvbXBvc2l0ZSgpOwogCiAgICAgLy8gRmluaXNoIGlmIHJlcXVlc3RlZC4KQEAgLTEwOTEsOCAr
MTA5NiwxNiBAQCB2b2lkIFdlYlZpZXdJbXBsOjpjb21wb3NpdGUoYm9vbCBmaW5pc2gpCiAgICAg
bV9sYXllclJlbmRlcmVyLT5wcmVzZW50KCk7CiAKICAgICBHcmFwaGljc0NvbnRleHQzRCogY29u
dGV4dCA9IG1fbGF5ZXJSZW5kZXJlci0+Y29udGV4dCgpOwotICAgIGlmIChjb250ZXh0LT5nZXRF
eHRlbnNpb25zKCktPmdldEdyYXBoaWNzUmVzZXRTdGF0dXNBUkIoKSAhPSBHcmFwaGljc0NvbnRl
eHQzRDo6Tk9fRVJST1IpCi0gICAgICAgIHJlYWxsb2NhdGVSZW5kZXJlcigpOworICAgIGlmIChj
b250ZXh0LT5nZXRFeHRlbnNpb25zKCktPmdldEdyYXBoaWNzUmVzZXRTdGF0dXNBUkIoKSAhPSBH
cmFwaGljc0NvbnRleHQzRDo6Tk9fRVJST1IpIHsKKyAgICAgICAgLy8gVHJ5aW5nIHRvIHJlY292
ZXIgdGhlIGNvbnRleHQgcmlnaHQgaGVyZSB3aWxsIG5vdCB3b3JrIGlmIEdQVSBwcm9jZXNzCisg
ICAgICAgIC8vIGRpZWQuIFRoaXMgaXMgYmVjYXVzZSBHcHVDaGFubmVsSG9zdDo6T25FcnJvck1l
c3NhZ2Ugd2lsbCBvbmx5IGJlCisgICAgICAgIC8vIGNhbGxlZCBhdCB0aGUgbmV4dCBpdGVyYXRp
b24gb2YgdGhlIG1lc3NhZ2UgbG9vcCwgcmV2ZXJ0aW5nIG91cgorICAgICAgICAvLyByZWNvdmVy
eSBhdHRlbXB0cyBoZXJlLiBJbnN0ZWFkLCB3ZSBkZXRhY2ggdGhlIHJvb3QgbGF5ZXIgZnJvbSB0
aGUKKyAgICAgICAgLy8gcmVuZGVyZXIsIHJlY3JlYXRlIHRoZSByZW5kZXJlciBhdCB0aGUgbmV4
dCBtZXNzYWdlIGxvb3AgaXRlcmF0aW9uCisgICAgICAgIC8vIGFuZCByZXF1ZXN0IGEgcmVwYWlu
dCB5ZXQgYWdhaW4uCisgICAgICAgIG1fdHJhbnNmZXJyaW5nUm9vdExheWVyID0gbV9sYXllclJl
bmRlcmVyLT5yb290TGF5ZXIoKTsKKyAgICAgICAgc2V0Um9vdExheWVyTmVlZHNEaXNwbGF5KCk7
CisgICAgfQogI2VuZGlmCiB9CiAKQEAgLTIzODUsNiArMjM5OCwxMiBAQCBwcml2YXRlOgogCiB2
b2lkIFdlYlZpZXdJbXBsOjpkb0NvbXBvc2l0ZSgpCiB7CisgICAgQVNTRVJUKG1fbGF5ZXJSZW5k
ZXJlcik7CisgICAgaWYgKCFtX2xheWVyUmVuZGVyZXIpIHsKKyAgICAgICAgc2V0SXNBY2NlbGVy
YXRlZENvbXBvc2l0aW5nQWN0aXZlKGZhbHNlKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwog
ICAgIEFTU0VSVChpc0FjY2VsZXJhdGVkQ29tcG9zaXRpbmdBY3RpdmUoKSk7CiAgICAgaWYgKCFw
YWdlKCkpCiAgICAgICAgIHJldHVybjsKQEAgLTI0MTMsMTggKzI0MzIsMjYgQEAgdm9pZCBXZWJW
aWV3SW1wbDo6ZG9Db21wb3NpdGUoKQogCiB2b2lkIFdlYlZpZXdJbXBsOjpyZWFsbG9jYXRlUmVu
ZGVyZXIoKQogewotICAgIEdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0ID0gbV9sYXllclJlbmRl
cmVyLT5jb250ZXh0KCk7Ci0gICAgUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiBuZXdDb250ZXh0
ID0gR3JhcGhpY3NDb250ZXh0M0Q6OmNyZWF0ZShjb250ZXh0LT5nZXRDb250ZXh0QXR0cmlidXRl
cygpLCBtX3BhZ2UtPmNocm9tZSgpLCBHcmFwaGljc0NvbnRleHQzRDo6UmVuZGVyRGlyZWN0bHlU
b0hvc3RXaW5kb3cpOworICAgIFJlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gbmV3Q29udGV4dCA9
IEdyYXBoaWNzQ29udGV4dDNEOjpjcmVhdGUoCisgICAgICAgICAgICBnZXRDb21wb3NpdG9yQ29u
dGV4dEF0dHJpYnV0ZXMoKSwgbV9wYWdlLT5jaHJvbWUoKSwgR3JhcGhpY3NDb250ZXh0M0Q6OlJl
bmRlckRpcmVjdGx5VG9Ib3N0V2luZG93KTsKICAgICAvLyBHcmFwaGljc0NvbnRleHQzRDo6Y3Jl
YXRlIG1pZ2h0IGZhaWwgYW5kIHJldHVybiAwLCBpbiB0aGF0IGNhc2UgTGF5ZXJSZW5kZXJlckNo
cm9taXVtOjpjcmVhdGUgd2lsbCBhbHNvIHJldHVybiAwLgogICAgIFJlZlB0cjxMYXllclJlbmRl
cmVyQ2hyb21pdW0+IGxheWVyUmVuZGVyZXIgPSBMYXllclJlbmRlcmVyQ2hyb21pdW06OmNyZWF0
ZShuZXdDb250ZXh0KTsKIAogICAgIC8vIFJlYXR0YWNoIHRoZSByb290IGxheWVyLiAgQ2hpbGQg
bGF5ZXJzIHdpbGwgZ2V0IHJlYXR0YWNoZWQgYXMgYSBzaWRlIGVmZmVjdCBvZiB1cGRhdGVMYXll
cnNSZWN1cnNpdmUuCi0gICAgaWYgKGxheWVyUmVuZGVyZXIpCi0gICAgICAgIG1fbGF5ZXJSZW5k
ZXJlci0+dHJhbnNmZXJSb290TGF5ZXIobGF5ZXJSZW5kZXJlci5nZXQoKSk7Ci0gICAgbV9sYXll
clJlbmRlcmVyID0gbGF5ZXJSZW5kZXJlcjsKLQotICAgIC8vIEVuYWJsZSBvciBkaXNhYmxlIGFj
Y2VsZXJhdGVkIGNvbXBvc2l0aW5nIGFuZCByZXF1ZXN0IGEgcmVmcmVzaC4KLSAgICBzZXRSb290
R3JhcGhpY3NMYXllcihtX2xheWVyUmVuZGVyZXIgPyBtX2xheWVyUmVuZGVyZXItPnJvb3RMYXll
cigpIDogMCk7CisgICAgaWYgKGxheWVyUmVuZGVyZXIpIHsKKyAgICAgICAgbV9sYXllclJlbmRl
cmVyID0gbGF5ZXJSZW5kZXJlcjsKKyAgICAgICAgLy8gVE9ETyhhbWFyaW5pY2hldik6IEluIE1h
Y09TIG5ld0NvbnRleHQtPnJlc2hhcGUgbWV0aG9kIG5lZWRzIHRvIGJlCisgICAgICAgIC8vIGNh
bGxlZCB0byBhbGxvY2F0ZSBJT1N1cmZhY2VzLiBBbGwgY2FsbHMgdG8gY3JlYXRlIGEgY29udGV4
dAorICAgICAgICAvLyBmb2xsb3dlZCBieSByZXNoYXBlIHNob3VsZCByZWFsbHkgYmUgZXh0cmFj
dGVkIGludG8gb25lIGZ1bmN0aW9uOyBpdAorICAgICAgICAvLyBpcyBub3QgaW1tZWRpYXRlbHkg
b2J2aW91cyB0aGF0IEdyYXBoaWNzQ29udGV4dDNEIG9iamVjdCB3aWxsIG5vdAorICAgICAgICAv
LyBmdW5jdGlvbiBwcm9wZXJseSB1bnRpbCBpdHMgcmVzaGFwZSBtZXRob2QgaXMgY2FsbGVkLgor
ICAgICAgICBuZXdDb250ZXh0LT5yZXNoYXBlKHN0ZDo6bWF4KDEsIG1fc2l6ZS53aWR0aCksIHN0
ZDo6bWF4KDEsIG1fc2l6ZS5oZWlnaHQpKTsKKyAgICAgICAgc2V0Um9vdEdyYXBoaWNzTGF5ZXIo
bV90cmFuc2ZlcnJpbmdSb290TGF5ZXIuZ2V0KCkpOworICAgICAgICAvLyBGb3JjZXMgVmlld0hv
c3RNc2dfRGlkQWN0aXZhdGVBY2NlbGVyYXRlZENvbXBvc2l0aW5nIHRvIGJlIHNlbnQgc28KKyAg
ICAgICAgLy8gdGhhdCB0aGUgYnJvd3NlciBwcm9jZXNzIGNhbiByZWFjcXVpcmUgc3VyZmFjZXMu
CisgICAgICAgIG1fY2xpZW50LT5kaWRBY3RpdmF0ZUFjY2VsZXJhdGVkQ29tcG9zaXRpbmcodHJ1
ZSk7CisgICAgfSBlbHNlCisgICAgICAgIHNldFJvb3RHcmFwaGljc0xheWVyKDApOwogfQogI2Vu
ZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBs
LmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5oCmluZGV4IDIxNjM3
MjUxYzE3YWM4MDljMDcxNTcwYTVhNTg0M2U3NWJjNjczNTYuLjVlMjMxNmFiYzYyNmQzMWUxOWEw
ODY1Y2Y0MDMwNzIwNjc3ZjM1MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlZpZXdJbXBsLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmll
d0ltcGwuaApAQCAtNTMxLDYgKzUzMSw4IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFdlYkNvcmU6
OkxheWVyUmVuZGVyZXJDaHJvbWl1bT4gbV9sYXllclJlbmRlcmVyOwogICAgIGJvb2wgbV9pc0Fj
Y2VsZXJhdGVkQ29tcG9zaXRpbmdBY3RpdmU7CiAgICAgYm9vbCBtX2NvbXBvc2l0b3JDcmVhdGlv
bkZhaWxlZDsKKyAgICAvLyBJZiBzZXQsIHRoZSBncmFwaGljcyBjb250ZXh0IGlzIGJlaW5nIHJl
c3RvcmVkLgorICAgIFJlZlB0cjxXZWJDb3JlOjpQbGF0Zm9ybUxheWVyPiBtX3RyYW5zZmVycmlu
Z1Jvb3RMYXllcjsKICNlbmRpZgogICAgIHN0YXRpYyBjb25zdCBXZWJJbnB1dEV2ZW50KiBtX2N1
cnJlbnRJbnB1dEV2ZW50OwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>85418</attachid>
            <date>2011-03-10 18:15:58 -0800</date>
            <delta_ts>2011-03-11 16:22:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-56148-20110310181557.patch</filename>
            <type>text/plain</type>
            <size>5292</size>
            <attacher name="Alexey Marinichev">amarinichev</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA2OTUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
MGNiYTQxOTYyNWRiY2EzMTlhMTdkMjhlNTNlNmRhZjBkZDM3OWU2Ny4uN2I1MzFhZDdiZDk2NmFl
OTgzMGIxNzVmZTcyYjUxZjhhNmI2MTk5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxOCBAQAorMjAxMS0wMy0xMCAgQWxleGV5IE1hcmluaWNoZXYgIDxhbWFyaW5pY2hl
dkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgR3JhcGhpY3MgQ29udGV4dCBpcyBub3QgcHJvcGVybHkgcmVjb3ZlcmVkIGlmIHRo
ZSBHUFUgcHJvY2VzcyBkaWVzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NTYxNDgKKworICAgICAgICBTcGxpdCBjb250ZXh0IHJlY3JlYXRpb24gaW50
byB0d28gc3RlcHMuCisKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXZWJWaWV3SW1wbDo6Y29tcG9zaXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVmll
d0ltcGw6OmRvQ29tcG9zaXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6OnJlYWxs
b2NhdGVSZW5kZXJlcik6CisgICAgICAgICogc3JjL1dlYlZpZXdJbXBsLmg6CisKIDIwMTEtMDMt
MDggIEhhbnMgV2VubmJvcmcgIDxoYW5zQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBKZXJlbXkgT3Jsb3cuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJWaWV3SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1w
bC5jcHAKaW5kZXggNmFlNGYzNTg4NzY2MDhkODRiYzNlODMzODU5Zjk1ZDAzMmIzZTBlNi4uNjQ3
Yzk0YTg0ZmUwZDI1Y2Q0ODAwMjM3ZDA0NWIxN2RjMWI4ZTY0OSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcApAQCAtMTA4MSw2ICsxMDgxLDExIEBAIHZvaWQg
V2ViVmlld0ltcGw6OnRoZW1lQ2hhbmdlZCgpCiB2b2lkIFdlYlZpZXdJbXBsOjpjb21wb3NpdGUo
Ym9vbCBmaW5pc2gpCiB7CiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQorICAgIGlm
IChtX3JlY3JlYXRpbmdHcmFwaGljc0NvbnRleHQpIHsKKyAgICAgICAgcmVhbGxvY2F0ZVJlbmRl
cmVyKCk7CisgICAgICAgIG1fcmVjcmVhdGluZ0dyYXBoaWNzQ29udGV4dCA9IGZhbHNlOworICAg
ICAgICByZXR1cm47CisgICAgfQogICAgIGRvQ29tcG9zaXRlKCk7CiAKICAgICAvLyBGaW5pc2gg
aWYgcmVxdWVzdGVkLgpAQCAtMTA5MSw4ICsxMDk2LDE2IEBAIHZvaWQgV2ViVmlld0ltcGw6OmNv
bXBvc2l0ZShib29sIGZpbmlzaCkKICAgICBtX2xheWVyUmVuZGVyZXItPnByZXNlbnQoKTsKIAog
ICAgIEdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0ID0gbV9sYXllclJlbmRlcmVyLT5jb250ZXh0
KCk7Ci0gICAgaWYgKGNvbnRleHQtPmdldEV4dGVuc2lvbnMoKS0+Z2V0R3JhcGhpY3NSZXNldFN0
YXR1c0FSQigpICE9IEdyYXBoaWNzQ29udGV4dDNEOjpOT19FUlJPUikKLSAgICAgICAgcmVhbGxv
Y2F0ZVJlbmRlcmVyKCk7CisgICAgaWYgKGNvbnRleHQtPmdldEV4dGVuc2lvbnMoKS0+Z2V0R3Jh
cGhpY3NSZXNldFN0YXR1c0FSQigpICE9IEdyYXBoaWNzQ29udGV4dDNEOjpOT19FUlJPUikgewor
ICAgICAgICAvLyBUcnlpbmcgdG8gcmVjb3ZlciB0aGUgY29udGV4dCByaWdodCBoZXJlIHdpbGwg
bm90IHdvcmsgaWYgR1BVIHByb2Nlc3MKKyAgICAgICAgLy8gZGllZC4gVGhpcyBpcyBiZWNhdXNl
IEdwdUNoYW5uZWxIb3N0OjpPbkVycm9yTWVzc2FnZSB3aWxsIG9ubHkgYmUKKyAgICAgICAgLy8g
Y2FsbGVkIGF0IHRoZSBuZXh0IGl0ZXJhdGlvbiBvZiB0aGUgbWVzc2FnZSBsb29wLCByZXZlcnRp
bmcgb3VyCisgICAgICAgIC8vIHJlY292ZXJ5IGF0dGVtcHRzIGhlcmUuIEluc3RlYWQsIHdlIGRl
dGFjaCB0aGUgcm9vdCBsYXllciBmcm9tIHRoZQorICAgICAgICAvLyByZW5kZXJlciwgcmVjcmVh
dGUgdGhlIHJlbmRlcmVyIGF0IHRoZSBuZXh0IG1lc3NhZ2UgbG9vcCBpdGVyYXRpb24KKyAgICAg
ICAgLy8gYW5kIHJlcXVlc3QgYSByZXBhaW50IHlldCBhZ2Fpbi4KKyAgICAgICAgbV9yZWNyZWF0
aW5nR3JhcGhpY3NDb250ZXh0ID0gdHJ1ZTsKKyAgICAgICAgc2V0Um9vdExheWVyTmVlZHNEaXNw
bGF5KCk7CisgICAgfQogI2VuZGlmCiB9CiAKQEAgLTIzODUsNiArMjM5OCwxMiBAQCBwcml2YXRl
OgogCiB2b2lkIFdlYlZpZXdJbXBsOjpkb0NvbXBvc2l0ZSgpCiB7CisgICAgQVNTRVJUKG1fbGF5
ZXJSZW5kZXJlcik7CisgICAgaWYgKCFtX2xheWVyUmVuZGVyZXIpIHsKKyAgICAgICAgc2V0SXNB
Y2NlbGVyYXRlZENvbXBvc2l0aW5nQWN0aXZlKGZhbHNlKTsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKwogICAgIEFTU0VSVChpc0FjY2VsZXJhdGVkQ29tcG9zaXRpbmdBY3RpdmUoKSk7CiAgICAg
aWYgKCFwYWdlKCkpCiAgICAgICAgIHJldHVybjsKQEAgLTI0MTMsMTggKzI0MzIsMjcgQEAgdm9p
ZCBXZWJWaWV3SW1wbDo6ZG9Db21wb3NpdGUoKQogCiB2b2lkIFdlYlZpZXdJbXBsOjpyZWFsbG9j
YXRlUmVuZGVyZXIoKQogewotICAgIEdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0ID0gbV9sYXll
clJlbmRlcmVyLT5jb250ZXh0KCk7Ci0gICAgUmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiBuZXdD
b250ZXh0ID0gR3JhcGhpY3NDb250ZXh0M0Q6OmNyZWF0ZShjb250ZXh0LT5nZXRDb250ZXh0QXR0
cmlidXRlcygpLCBtX3BhZ2UtPmNocm9tZSgpLCBHcmFwaGljc0NvbnRleHQzRDo6UmVuZGVyRGly
ZWN0bHlUb0hvc3RXaW5kb3cpOworICAgIFJlZlB0cjxHcmFwaGljc0NvbnRleHQzRD4gbmV3Q29u
dGV4dCA9IEdyYXBoaWNzQ29udGV4dDNEOjpjcmVhdGUoCisgICAgICAgICAgICBnZXRDb21wb3Np
dG9yQ29udGV4dEF0dHJpYnV0ZXMoKSwgbV9wYWdlLT5jaHJvbWUoKSwgR3JhcGhpY3NDb250ZXh0
M0Q6OlJlbmRlckRpcmVjdGx5VG9Ib3N0V2luZG93KTsKICAgICAvLyBHcmFwaGljc0NvbnRleHQz
RDo6Y3JlYXRlIG1pZ2h0IGZhaWwgYW5kIHJldHVybiAwLCBpbiB0aGF0IGNhc2UgTGF5ZXJSZW5k
ZXJlckNocm9taXVtOjpjcmVhdGUgd2lsbCBhbHNvIHJldHVybiAwLgogICAgIFJlZlB0cjxMYXll
clJlbmRlcmVyQ2hyb21pdW0+IGxheWVyUmVuZGVyZXIgPSBMYXllclJlbmRlcmVyQ2hyb21pdW06
OmNyZWF0ZShuZXdDb250ZXh0KTsKIAogICAgIC8vIFJlYXR0YWNoIHRoZSByb290IGxheWVyLiAg
Q2hpbGQgbGF5ZXJzIHdpbGwgZ2V0IHJlYXR0YWNoZWQgYXMgYSBzaWRlIGVmZmVjdCBvZiB1cGRh
dGVMYXllcnNSZWN1cnNpdmUuCi0gICAgaWYgKGxheWVyUmVuZGVyZXIpCisgICAgaWYgKGxheWVy
UmVuZGVyZXIpIHsKICAgICAgICAgbV9sYXllclJlbmRlcmVyLT50cmFuc2ZlclJvb3RMYXllcihs
YXllclJlbmRlcmVyLmdldCgpKTsKLSAgICBtX2xheWVyUmVuZGVyZXIgPSBsYXllclJlbmRlcmVy
OwotCi0gICAgLy8gRW5hYmxlIG9yIGRpc2FibGUgYWNjZWxlcmF0ZWQgY29tcG9zaXRpbmcgYW5k
IHJlcXVlc3QgYSByZWZyZXNoLgotICAgIHNldFJvb3RHcmFwaGljc0xheWVyKG1fbGF5ZXJSZW5k
ZXJlciA/IG1fbGF5ZXJSZW5kZXJlci0+cm9vdExheWVyKCkgOiAwKTsKKyAgICAgICAgbV9sYXll
clJlbmRlcmVyID0gbGF5ZXJSZW5kZXJlcjsKKyAgICAgICAgLy8gRklYTUU6IEluIE1hY09TIG5l
d0NvbnRleHQtPnJlc2hhcGUgbWV0aG9kIG5lZWRzIHRvIGJlIGNhbGxlZCB0bworICAgICAgICAv
LyBhbGxvY2F0ZSBJT1N1cmZhY2VzLiBBbGwgY2FsbHMgdG8gY3JlYXRlIGEgY29udGV4dCBmb2xs
b3dlZCBieQorICAgICAgICAvLyByZXNoYXBlIHNob3VsZCByZWFsbHkgYmUgZXh0cmFjdGVkIGlu
dG8gb25lIGZ1bmN0aW9uOyBpdCBpcyBub3QKKyAgICAgICAgLy8gaW1tZWRpYXRlbHkgb2J2aW91
cyB0aGF0IEdyYXBoaWNzQ29udGV4dDNEIG9iamVjdCB3aWxsIG5vdAorICAgICAgICAvLyBmdW5j
dGlvbiBwcm9wZXJseSB1bnRpbCBpdHMgcmVzaGFwZSBtZXRob2QgaXMgY2FsbGVkLgorICAgICAg
ICBuZXdDb250ZXh0LT5yZXNoYXBlKHN0ZDo6bWF4KDEsIG1fc2l6ZS53aWR0aCksIHN0ZDo6bWF4
KDEsIG1fc2l6ZS5oZWlnaHQpKTsKKyAgICAgICAgc2V0Um9vdEdyYXBoaWNzTGF5ZXIobV9sYXll
clJlbmRlcmVyLT5yb290TGF5ZXIoKSk7CisgICAgICAgIC8vIEZvcmNlcyBWaWV3SG9zdE1zZ19E
aWRBY3RpdmF0ZUFjY2VsZXJhdGVkQ29tcG9zaXRpbmcgdG8gYmUgc2VudCBzbworICAgICAgICAv
LyB0aGF0IHRoZSBicm93c2VyIHByb2Nlc3MgY2FuIHJlYWNxdWlyZSBzdXJmYWNlcy4KKyAgICAg
ICAgbV9jbGllbnQtPmRpZEFjdGl2YXRlQWNjZWxlcmF0ZWRDb21wb3NpdGluZyh0cnVlKTsKKyAg
ICB9IGVsc2UKKyAgICAgICAgc2V0Um9vdEdyYXBoaWNzTGF5ZXIoMCk7CiB9CiAjZW5kaWYKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuaCBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmgKaW5kZXggMjE2MzcyNTFjMTdh
YzgwOWMwNzE1NzBhNWE1ODQzZTc1YmM2NzM1Ni4uZWFjZmRiNjVlNGNmYmVkZjdlNDM4NzcxMGUx
Yjk4YmIxN2M1YjZmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
Vmlld0ltcGwuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5o
CkBAIC01MzEsNiArNTMxLDggQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8V2ViQ29yZTo6TGF5ZXJS
ZW5kZXJlckNocm9taXVtPiBtX2xheWVyUmVuZGVyZXI7CiAgICAgYm9vbCBtX2lzQWNjZWxlcmF0
ZWRDb21wb3NpdGluZ0FjdGl2ZTsKICAgICBib29sIG1fY29tcG9zaXRvckNyZWF0aW9uRmFpbGVk
OworICAgIC8vIElmIHRydWUsIHRoZSBncmFwaGljcyBjb250ZXh0IGlzIGJlaW5nIHJlc3RvcmVk
LgorICAgIGJvb2wgbV9yZWNyZWF0aW5nR3JhcGhpY3NDb250ZXh0OwogI2VuZGlmCiAgICAgc3Rh
dGljIGNvbnN0IFdlYklucHV0RXZlbnQqIG1fY3VycmVudElucHV0RXZlbnQ7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>85552</attachid>
            <date>2011-03-11 16:22:39 -0800</date>
            <delta_ts>2011-03-11 17:05:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-56148-20110311162238.patch</filename>
            <type>text/plain</type>
            <size>5413</size>
            <attacher name="Alexey Marinichev">amarinichev</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA2OTUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
MGNiYTQxOTYyNWRiY2EzMTlhMTdkMjhlNTNlNmRhZjBkZDM3OWU2Ny4uN2I1MzFhZDdiZDk2NmFl
OTgzMGIxNzVmZTcyYjUxZjhhNmI2MTk5YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxOCBAQAorMjAxMS0wMy0xMCAgQWxleGV5IE1hcmluaWNoZXYgIDxhbWFyaW5pY2hl
dkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgR3JhcGhpY3MgQ29udGV4dCBpcyBub3QgcHJvcGVybHkgcmVjb3ZlcmVkIGlmIHRo
ZSBHUFUgcHJvY2VzcyBkaWVzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NTYxNDgKKworICAgICAgICBTcGxpdCBjb250ZXh0IHJlY3JlYXRpb24gaW50
byB0d28gc3RlcHMuCisKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXZWJWaWV3SW1wbDo6Y29tcG9zaXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVmll
d0ltcGw6OmRvQ29tcG9zaXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6OnJlYWxs
b2NhdGVSZW5kZXJlcik6CisgICAgICAgICogc3JjL1dlYlZpZXdJbXBsLmg6CisKIDIwMTEtMDMt
MDggIEhhbnMgV2VubmJvcmcgIDxoYW5zQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBKZXJlbXkgT3Jsb3cuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJWaWV3SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1w
bC5jcHAKaW5kZXggNmFlNGYzNTg4NzY2MDhkODRiYzNlODMzODU5Zjk1ZDAzMmIzZTBlNi4uMDg2
OTY0ZTIwN2ZkODUyMzNmNDgwN2EyZGU3NjEzZTZkMWMxMjE1NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcApAQCAtMTA4MSw2ICsxMDgxLDEzIEBAIHZvaWQg
V2ViVmlld0ltcGw6OnRoZW1lQ2hhbmdlZCgpCiB2b2lkIFdlYlZpZXdJbXBsOjpjb21wb3NpdGUo
Ym9vbCBmaW5pc2gpCiB7CiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQorICAgIGlm
IChtX3JlY3JlYXRpbmdHcmFwaGljc0NvbnRleHQpIHsKKyAgICAgICAgLy8gcmVhbGxvY2F0ZVJl
bmRlcmVyIHdpbGwgcmVxdWVzdCBhIHJlcGFpbnQgd2hldGhlciBvciBub3QgaXQgc3VjY2VlZGVk
CisgICAgICAgIC8vIGluIGNyZWF0aW5nIGEgbmV3IGNvbnRleHQuCisgICAgICAgIHJlYWxsb2Nh
dGVSZW5kZXJlcigpOworICAgICAgICBtX3JlY3JlYXRpbmdHcmFwaGljc0NvbnRleHQgPSBmYWxz
ZTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KICAgICBkb0NvbXBvc2l0ZSgpOwogCiAgICAgLy8g
RmluaXNoIGlmIHJlcXVlc3RlZC4KQEAgLTEwOTEsOCArMTA5OCwxNiBAQCB2b2lkIFdlYlZpZXdJ
bXBsOjpjb21wb3NpdGUoYm9vbCBmaW5pc2gpCiAgICAgbV9sYXllclJlbmRlcmVyLT5wcmVzZW50
KCk7CiAKICAgICBHcmFwaGljc0NvbnRleHQzRCogY29udGV4dCA9IG1fbGF5ZXJSZW5kZXJlci0+
Y29udGV4dCgpOwotICAgIGlmIChjb250ZXh0LT5nZXRFeHRlbnNpb25zKCktPmdldEdyYXBoaWNz
UmVzZXRTdGF0dXNBUkIoKSAhPSBHcmFwaGljc0NvbnRleHQzRDo6Tk9fRVJST1IpCi0gICAgICAg
IHJlYWxsb2NhdGVSZW5kZXJlcigpOworICAgIGlmIChjb250ZXh0LT5nZXRFeHRlbnNpb25zKCkt
PmdldEdyYXBoaWNzUmVzZXRTdGF0dXNBUkIoKSAhPSBHcmFwaGljc0NvbnRleHQzRDo6Tk9fRVJS
T1IpIHsKKyAgICAgICAgLy8gVHJ5aW5nIHRvIHJlY292ZXIgdGhlIGNvbnRleHQgcmlnaHQgaGVy
ZSB3aWxsIG5vdCB3b3JrIGlmIEdQVSBwcm9jZXNzCisgICAgICAgIC8vIGRpZWQuIFRoaXMgaXMg
YmVjYXVzZSBHcHVDaGFubmVsSG9zdDo6T25FcnJvck1lc3NhZ2Ugd2lsbCBvbmx5IGJlCisgICAg
ICAgIC8vIGNhbGxlZCBhdCB0aGUgbmV4dCBpdGVyYXRpb24gb2YgdGhlIG1lc3NhZ2UgbG9vcCwg
cmV2ZXJ0aW5nIG91cgorICAgICAgICAvLyByZWNvdmVyeSBhdHRlbXB0cyBoZXJlLiBJbnN0ZWFk
LCB3ZSBkZXRhY2ggdGhlIHJvb3QgbGF5ZXIgZnJvbSB0aGUKKyAgICAgICAgLy8gcmVuZGVyZXIs
IHJlY3JlYXRlIHRoZSByZW5kZXJlciBhdCB0aGUgbmV4dCBtZXNzYWdlIGxvb3AgaXRlcmF0aW9u
CisgICAgICAgIC8vIGFuZCByZXF1ZXN0IGEgcmVwYWludCB5ZXQgYWdhaW4uCisgICAgICAgIG1f
cmVjcmVhdGluZ0dyYXBoaWNzQ29udGV4dCA9IHRydWU7CisgICAgICAgIHNldFJvb3RMYXllck5l
ZWRzRGlzcGxheSgpOworICAgIH0KICNlbmRpZgogfQogCkBAIC0yMzg1LDYgKzI0MDAsMTIgQEAg
cHJpdmF0ZToKIAogdm9pZCBXZWJWaWV3SW1wbDo6ZG9Db21wb3NpdGUoKQogeworICAgIEFTU0VS
VChtX2xheWVyUmVuZGVyZXIpOworICAgIGlmICghbV9sYXllclJlbmRlcmVyKSB7CisgICAgICAg
IHNldElzQWNjZWxlcmF0ZWRDb21wb3NpdGluZ0FjdGl2ZShmYWxzZSk7CisgICAgICAgIHJldHVy
bjsKKyAgICB9CisKICAgICBBU1NFUlQoaXNBY2NlbGVyYXRlZENvbXBvc2l0aW5nQWN0aXZlKCkp
OwogICAgIGlmICghcGFnZSgpKQogICAgICAgICByZXR1cm47CkBAIC0yNDEzLDE4ICsyNDM0LDI3
IEBAIHZvaWQgV2ViVmlld0ltcGw6OmRvQ29tcG9zaXRlKCkKIAogdm9pZCBXZWJWaWV3SW1wbDo6
cmVhbGxvY2F0ZVJlbmRlcmVyKCkKIHsKLSAgICBHcmFwaGljc0NvbnRleHQzRCogY29udGV4dCA9
IG1fbGF5ZXJSZW5kZXJlci0+Y29udGV4dCgpOwotICAgIFJlZlB0cjxHcmFwaGljc0NvbnRleHQz
RD4gbmV3Q29udGV4dCA9IEdyYXBoaWNzQ29udGV4dDNEOjpjcmVhdGUoY29udGV4dC0+Z2V0Q29u
dGV4dEF0dHJpYnV0ZXMoKSwgbV9wYWdlLT5jaHJvbWUoKSwgR3JhcGhpY3NDb250ZXh0M0Q6OlJl
bmRlckRpcmVjdGx5VG9Ib3N0V2luZG93KTsKKyAgICBSZWZQdHI8R3JhcGhpY3NDb250ZXh0M0Q+
IG5ld0NvbnRleHQgPSBHcmFwaGljc0NvbnRleHQzRDo6Y3JlYXRlKAorICAgICAgICAgICAgZ2V0
Q29tcG9zaXRvckNvbnRleHRBdHRyaWJ1dGVzKCksIG1fcGFnZS0+Y2hyb21lKCksIEdyYXBoaWNz
Q29udGV4dDNEOjpSZW5kZXJEaXJlY3RseVRvSG9zdFdpbmRvdyk7CiAgICAgLy8gR3JhcGhpY3ND
b250ZXh0M0Q6OmNyZWF0ZSBtaWdodCBmYWlsIGFuZCByZXR1cm4gMCwgaW4gdGhhdCBjYXNlIExh
eWVyUmVuZGVyZXJDaHJvbWl1bTo6Y3JlYXRlIHdpbGwgYWxzbyByZXR1cm4gMC4KICAgICBSZWZQ
dHI8TGF5ZXJSZW5kZXJlckNocm9taXVtPiBsYXllclJlbmRlcmVyID0gTGF5ZXJSZW5kZXJlckNo
cm9taXVtOjpjcmVhdGUobmV3Q29udGV4dCk7CiAKICAgICAvLyBSZWF0dGFjaCB0aGUgcm9vdCBs
YXllci4gIENoaWxkIGxheWVycyB3aWxsIGdldCByZWF0dGFjaGVkIGFzIGEgc2lkZSBlZmZlY3Qg
b2YgdXBkYXRlTGF5ZXJzUmVjdXJzaXZlLgotICAgIGlmIChsYXllclJlbmRlcmVyKQorICAgIGlm
IChsYXllclJlbmRlcmVyKSB7CiAgICAgICAgIG1fbGF5ZXJSZW5kZXJlci0+dHJhbnNmZXJSb290
TGF5ZXIobGF5ZXJSZW5kZXJlci5nZXQoKSk7Ci0gICAgbV9sYXllclJlbmRlcmVyID0gbGF5ZXJS
ZW5kZXJlcjsKLQotICAgIC8vIEVuYWJsZSBvciBkaXNhYmxlIGFjY2VsZXJhdGVkIGNvbXBvc2l0
aW5nIGFuZCByZXF1ZXN0IGEgcmVmcmVzaC4KLSAgICBzZXRSb290R3JhcGhpY3NMYXllcihtX2xh
eWVyUmVuZGVyZXIgPyBtX2xheWVyUmVuZGVyZXItPnJvb3RMYXllcigpIDogMCk7CisgICAgICAg
IG1fbGF5ZXJSZW5kZXJlciA9IGxheWVyUmVuZGVyZXI7CisgICAgICAgIC8vIEZJWE1FOiBJbiBN
YWNPUyBuZXdDb250ZXh0LT5yZXNoYXBlIG1ldGhvZCBuZWVkcyB0byBiZSBjYWxsZWQgdG8KKyAg
ICAgICAgLy8gYWxsb2NhdGUgSU9TdXJmYWNlcy4gQWxsIGNhbGxzIHRvIGNyZWF0ZSBhIGNvbnRl
eHQgZm9sbG93ZWQgYnkKKyAgICAgICAgLy8gcmVzaGFwZSBzaG91bGQgcmVhbGx5IGJlIGV4dHJh
Y3RlZCBpbnRvIG9uZSBmdW5jdGlvbjsgaXQgaXMgbm90CisgICAgICAgIC8vIGltbWVkaWF0ZWx5
IG9idmlvdXMgdGhhdCBHcmFwaGljc0NvbnRleHQzRCBvYmplY3Qgd2lsbCBub3QKKyAgICAgICAg
Ly8gZnVuY3Rpb24gcHJvcGVybHkgdW50aWwgaXRzIHJlc2hhcGUgbWV0aG9kIGlzIGNhbGxlZC4K
KyAgICAgICAgbmV3Q29udGV4dC0+cmVzaGFwZShzdGQ6Om1heCgxLCBtX3NpemUud2lkdGgpLCBz
dGQ6Om1heCgxLCBtX3NpemUuaGVpZ2h0KSk7CisgICAgICAgIHNldFJvb3RHcmFwaGljc0xheWVy
KG1fbGF5ZXJSZW5kZXJlci0+cm9vdExheWVyKCkpOworICAgICAgICAvLyBGb3JjZXMgVmlld0hv
c3RNc2dfRGlkQWN0aXZhdGVBY2NlbGVyYXRlZENvbXBvc2l0aW5nIHRvIGJlIHNlbnQgc28KKyAg
ICAgICAgLy8gdGhhdCB0aGUgYnJvd3NlciBwcm9jZXNzIGNhbiByZWFjcXVpcmUgc3VyZmFjZXMu
CisgICAgICAgIG1fY2xpZW50LT5kaWRBY3RpdmF0ZUFjY2VsZXJhdGVkQ29tcG9zaXRpbmcodHJ1
ZSk7CisgICAgfSBlbHNlCisgICAgICAgIHNldFJvb3RHcmFwaGljc0xheWVyKDApOwogfQogI2Vu
ZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBs
LmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5oCmluZGV4IDIxNjM3
MjUxYzE3YWM4MDljMDcxNTcwYTVhNTg0M2U3NWJjNjczNTYuLmVhY2ZkYjY1ZTRjZmJlZGY3ZTQz
ODc3MTBlMWI5OGJiMTdjNWI2ZmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlZpZXdJbXBsLmgKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmll
d0ltcGwuaApAQCAtNTMxLDYgKzUzMSw4IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFdlYkNvcmU6
OkxheWVyUmVuZGVyZXJDaHJvbWl1bT4gbV9sYXllclJlbmRlcmVyOwogICAgIGJvb2wgbV9pc0Fj
Y2VsZXJhdGVkQ29tcG9zaXRpbmdBY3RpdmU7CiAgICAgYm9vbCBtX2NvbXBvc2l0b3JDcmVhdGlv
bkZhaWxlZDsKKyAgICAvLyBJZiB0cnVlLCB0aGUgZ3JhcGhpY3MgY29udGV4dCBpcyBiZWluZyBy
ZXN0b3JlZC4KKyAgICBib29sIG1fcmVjcmVhdGluZ0dyYXBoaWNzQ29udGV4dDsKICNlbmRpZgog
ICAgIHN0YXRpYyBjb25zdCBXZWJJbnB1dEV2ZW50KiBtX2N1cnJlbnRJbnB1dEV2ZW50OwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>85557</attachid>
            <date>2011-03-11 17:05:41 -0800</date>
            <delta_ts>2011-03-14 22:56:47 -0700</delta_ts>
            <desc>Rebased to top of tree.</desc>
            <filename>bug-56148-20110311170540.patch</filename>
            <type>text/plain</type>
            <size>5556</size>
            <attacher name="Alexey Marinichev">amarinichev</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA5MDMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXgg
MTQ5OWVkZGFmYTg4YjhlMDFlZTE4NzM5ZWQzZGMyMDM0NjIyNjQ4MS4uYzY5NmYxMmEzMTYzYWI0
OTU2YWRhMDc4MGRiMGNlYTQwNTNmM2M4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwxOCBAQAorMjAxMS0wMy0xMSAgQWxleGV5IE1hcmluaWNoZXYgIDxhbWFyaW5pY2hl
dkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgR3JhcGhpY3MgQ29udGV4dCBpcyBub3QgcHJvcGVybHkgcmVjb3ZlcmVkIGlmIHRo
ZSBHUFUgcHJvY2VzcyBkaWVzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NTYxNDgKKworICAgICAgICBTcGxpdCBjb250ZXh0IHJlY3JlYXRpb24gaW50
byB0d28gc3RlcHMuCisKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXZWJWaWV3SW1wbDo6Y29tcG9zaXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVmll
d0ltcGw6OmRvQ29tcG9zaXRlKToKKyAgICAgICAgKFdlYktpdDo6V2ViVmlld0ltcGw6OnJlYWxs
b2NhdGVSZW5kZXJlcik6CisgICAgICAgICogc3JjL1dlYlZpZXdJbXBsLmg6CisKIDIwMTEtMDMt
MTEgIEFkcmllbm5lIFdhbGtlciAgPGVubmVAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBLZW5uZXRoIFJ1c3NlbGwuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3NyYy9XZWJWaWV3SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3
SW1wbC5jcHAKaW5kZXggYWZlZDNhZGQxYWE2ZjA1ZGY4ODFjY2RiMTlhYzRiYjRiM2RlY2FkMC4u
MTMwY2Y0MGNmY2ZkYWRiMGUzYzk1NzliOWNhNmRhZWE0ODMxYzNiNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcApAQCAtMTA4Miw2ICsxMDgyLDEzIEBAIHZv
aWQgV2ViVmlld0ltcGw6OnRoZW1lQ2hhbmdlZCgpCiB2b2lkIFdlYlZpZXdJbXBsOjpjb21wb3Np
dGUoYm9vbCBmaW5pc2gpCiB7CiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQorICAg
IGlmIChtX3JlY3JlYXRpbmdHcmFwaGljc0NvbnRleHQpIHsKKyAgICAgICAgLy8gcmVhbGxvY2F0
ZVJlbmRlcmVyIHdpbGwgcmVxdWVzdCBhIHJlcGFpbnQgd2hldGhlciBvciBub3QgaXQgc3VjY2Vl
ZGVkCisgICAgICAgIC8vIGluIGNyZWF0aW5nIGEgbmV3IGNvbnRleHQuCisgICAgICAgIHJlYWxs
b2NhdGVSZW5kZXJlcigpOworICAgICAgICBtX3JlY3JlYXRpbmdHcmFwaGljc0NvbnRleHQgPSBm
YWxzZTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KICAgICBkb0NvbXBvc2l0ZSgpOwogCiAgICAg
Ly8gRmluaXNoIGlmIHJlcXVlc3RlZC4KQEAgLTEwOTIsOCArMTA5OSwxNiBAQCB2b2lkIFdlYlZp
ZXdJbXBsOjpjb21wb3NpdGUoYm9vbCBmaW5pc2gpCiAgICAgbV9sYXllclJlbmRlcmVyLT5wcmVz
ZW50KCk7CiAKICAgICBHcmFwaGljc0NvbnRleHQzRCogY29udGV4dCA9IG1fbGF5ZXJSZW5kZXJl
ci0+Y29udGV4dCgpOwotICAgIGlmIChjb250ZXh0LT5nZXRFeHRlbnNpb25zKCktPmdldEdyYXBo
aWNzUmVzZXRTdGF0dXNBUkIoKSAhPSBHcmFwaGljc0NvbnRleHQzRDo6Tk9fRVJST1IpCi0gICAg
ICAgIHJlYWxsb2NhdGVSZW5kZXJlcigpOworICAgIGlmIChjb250ZXh0LT5nZXRFeHRlbnNpb25z
KCktPmdldEdyYXBoaWNzUmVzZXRTdGF0dXNBUkIoKSAhPSBHcmFwaGljc0NvbnRleHQzRDo6Tk9f
RVJST1IpIHsKKyAgICAgICAgLy8gVHJ5aW5nIHRvIHJlY292ZXIgdGhlIGNvbnRleHQgcmlnaHQg
aGVyZSB3aWxsIG5vdCB3b3JrIGlmIEdQVSBwcm9jZXNzCisgICAgICAgIC8vIGRpZWQuIFRoaXMg
aXMgYmVjYXVzZSBHcHVDaGFubmVsSG9zdDo6T25FcnJvck1lc3NhZ2Ugd2lsbCBvbmx5IGJlCisg
ICAgICAgIC8vIGNhbGxlZCBhdCB0aGUgbmV4dCBpdGVyYXRpb24gb2YgdGhlIG1lc3NhZ2UgbG9v
cCwgcmV2ZXJ0aW5nIG91cgorICAgICAgICAvLyByZWNvdmVyeSBhdHRlbXB0cyBoZXJlLiBJbnN0
ZWFkLCB3ZSBkZXRhY2ggdGhlIHJvb3QgbGF5ZXIgZnJvbSB0aGUKKyAgICAgICAgLy8gcmVuZGVy
ZXIsIHJlY3JlYXRlIHRoZSByZW5kZXJlciBhdCB0aGUgbmV4dCBtZXNzYWdlIGxvb3AgaXRlcmF0
aW9uCisgICAgICAgIC8vIGFuZCByZXF1ZXN0IGEgcmVwYWludCB5ZXQgYWdhaW4uCisgICAgICAg
IG1fcmVjcmVhdGluZ0dyYXBoaWNzQ29udGV4dCA9IHRydWU7CisgICAgICAgIHNldFJvb3RMYXll
ck5lZWRzRGlzcGxheSgpOworICAgIH0KICNlbmRpZgogfQogCkBAIC0yMzk5LDYgKzI0MTQsMTIg
QEAgdm9pZCBXZWJWaWV3SW1wbDo6c2V0SXNBY2NlbGVyYXRlZENvbXBvc2l0aW5nQWN0aXZlKGJv
b2wgYWN0aXZlKQogCiB2b2lkIFdlYlZpZXdJbXBsOjpkb0NvbXBvc2l0ZSgpCiB7CisgICAgQVNT
RVJUKG1fbGF5ZXJSZW5kZXJlcik7CisgICAgaWYgKCFtX2xheWVyUmVuZGVyZXIpIHsKKyAgICAg
ICAgc2V0SXNBY2NlbGVyYXRlZENvbXBvc2l0aW5nQWN0aXZlKGZhbHNlKTsKKyAgICAgICAgcmV0
dXJuOworICAgIH0KKwogICAgIEFTU0VSVChpc0FjY2VsZXJhdGVkQ29tcG9zaXRpbmdBY3RpdmUo
KSk7CiAgICAgaWYgKCFwYWdlKCkpCiAgICAgICAgIHJldHVybjsKQEAgLTI0MTQsMTggKzI0MzUs
MjcgQEAgdm9pZCBXZWJWaWV3SW1wbDo6ZG9Db21wb3NpdGUoKQogCiB2b2lkIFdlYlZpZXdJbXBs
OjpyZWFsbG9jYXRlUmVuZGVyZXIoKQogewotICAgIEdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0
ID0gbV9sYXllclJlbmRlcmVyLT5jb250ZXh0KCk7Ci0gICAgUmVmUHRyPEdyYXBoaWNzQ29udGV4
dDNEPiBuZXdDb250ZXh0ID0gR3JhcGhpY3NDb250ZXh0M0Q6OmNyZWF0ZShjb250ZXh0LT5nZXRD
b250ZXh0QXR0cmlidXRlcygpLCBtX3BhZ2UtPmNocm9tZSgpLCBHcmFwaGljc0NvbnRleHQzRDo6
UmVuZGVyRGlyZWN0bHlUb0hvc3RXaW5kb3cpOworICAgIFJlZlB0cjxHcmFwaGljc0NvbnRleHQz
RD4gbmV3Q29udGV4dCA9IEdyYXBoaWNzQ29udGV4dDNEOjpjcmVhdGUoCisgICAgICAgICAgICBn
ZXRDb21wb3NpdG9yQ29udGV4dEF0dHJpYnV0ZXMoKSwgbV9wYWdlLT5jaHJvbWUoKSwgR3JhcGhp
Y3NDb250ZXh0M0Q6OlJlbmRlckRpcmVjdGx5VG9Ib3N0V2luZG93KTsKICAgICAvLyBHcmFwaGlj
c0NvbnRleHQzRDo6Y3JlYXRlIG1pZ2h0IGZhaWwgYW5kIHJldHVybiAwLCBpbiB0aGF0IGNhc2Ug
TGF5ZXJSZW5kZXJlckNocm9taXVtOjpjcmVhdGUgd2lsbCBhbHNvIHJldHVybiAwLgogICAgIFJl
ZlB0cjxMYXllclJlbmRlcmVyQ2hyb21pdW0+IGxheWVyUmVuZGVyZXIgPSBMYXllclJlbmRlcmVy
Q2hyb21pdW06OmNyZWF0ZShuZXdDb250ZXh0LCBXZWJWaWV3SW1wbENvbnRlbnRQYWludGVyOjpj
cmVhdGUodGhpcyksIFdlYlZpZXdJbXBsU2Nyb2xsYmFyUGFpbnRlcjo6Y3JlYXRlKHRoaXMpKTsK
IAogICAgIC8vIFJlYXR0YWNoIHRoZSByb290IGxheWVyLiAgQ2hpbGQgbGF5ZXJzIHdpbGwgZ2V0
IHJlYXR0YWNoZWQgYXMgYSBzaWRlIGVmZmVjdCBvZiB1cGRhdGVMYXllcnNSZWN1cnNpdmUuCi0g
ICAgaWYgKGxheWVyUmVuZGVyZXIpCisgICAgaWYgKGxheWVyUmVuZGVyZXIpIHsKICAgICAgICAg
bV9sYXllclJlbmRlcmVyLT50cmFuc2ZlclJvb3RMYXllcihsYXllclJlbmRlcmVyLmdldCgpKTsK
LSAgICBtX2xheWVyUmVuZGVyZXIgPSBsYXllclJlbmRlcmVyOwotCi0gICAgLy8gRW5hYmxlIG9y
IGRpc2FibGUgYWNjZWxlcmF0ZWQgY29tcG9zaXRpbmcgYW5kIHJlcXVlc3QgYSByZWZyZXNoLgot
ICAgIHNldFJvb3RHcmFwaGljc0xheWVyKG1fbGF5ZXJSZW5kZXJlciA/IG1fbGF5ZXJSZW5kZXJl
ci0+cm9vdExheWVyKCkgOiAwKTsKKyAgICAgICAgbV9sYXllclJlbmRlcmVyID0gbGF5ZXJSZW5k
ZXJlcjsKKyAgICAgICAgLy8gRklYTUU6IEluIE1hY09TIG5ld0NvbnRleHQtPnJlc2hhcGUgbWV0
aG9kIG5lZWRzIHRvIGJlIGNhbGxlZCB0bworICAgICAgICAvLyBhbGxvY2F0ZSBJT1N1cmZhY2Vz
LiBBbGwgY2FsbHMgdG8gY3JlYXRlIGEgY29udGV4dCBmb2xsb3dlZCBieQorICAgICAgICAvLyBy
ZXNoYXBlIHNob3VsZCByZWFsbHkgYmUgZXh0cmFjdGVkIGludG8gb25lIGZ1bmN0aW9uOyBpdCBp
cyBub3QKKyAgICAgICAgLy8gaW1tZWRpYXRlbHkgb2J2aW91cyB0aGF0IEdyYXBoaWNzQ29udGV4
dDNEIG9iamVjdCB3aWxsIG5vdAorICAgICAgICAvLyBmdW5jdGlvbiBwcm9wZXJseSB1bnRpbCBp
dHMgcmVzaGFwZSBtZXRob2QgaXMgY2FsbGVkLgorICAgICAgICBuZXdDb250ZXh0LT5yZXNoYXBl
KHN0ZDo6bWF4KDEsIG1fc2l6ZS53aWR0aCksIHN0ZDo6bWF4KDEsIG1fc2l6ZS5oZWlnaHQpKTsK
KyAgICAgICAgc2V0Um9vdEdyYXBoaWNzTGF5ZXIobV9sYXllclJlbmRlcmVyLT5yb290TGF5ZXIo
KSk7CisgICAgICAgIC8vIEZvcmNlcyBWaWV3SG9zdE1zZ19EaWRBY3RpdmF0ZUFjY2VsZXJhdGVk
Q29tcG9zaXRpbmcgdG8gYmUgc2VudCBzbworICAgICAgICAvLyB0aGF0IHRoZSBicm93c2VyIHBy
b2Nlc3MgY2FuIHJlYWNxdWlyZSBzdXJmYWNlcy4KKyAgICAgICAgbV9jbGllbnQtPmRpZEFjdGl2
YXRlQWNjZWxlcmF0ZWRDb21wb3NpdGluZyh0cnVlKTsKKyAgICB9IGVsc2UKKyAgICAgICAgc2V0
Um9vdEdyYXBoaWNzTGF5ZXIoMCk7CiB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlZpZXdJbXBsLmgKaW5kZXggODM1Yzk4NTliODZiM2JlYjM5N2M3ZjIzMWZhNjk4NjQ1
ZTM1MGRlZi4uZDFiOGYxNjUyZjUxYzJlNzQ3ZjViZTFjMDZkYmZiMGU1OTAzMzM4YSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5oCkBAIC01MzIsNiArNTMyLDggQEAg
cHJpdmF0ZToKICAgICBSZWZQdHI8V2ViQ29yZTo6TGF5ZXJSZW5kZXJlckNocm9taXVtPiBtX2xh
eWVyUmVuZGVyZXI7CiAgICAgYm9vbCBtX2lzQWNjZWxlcmF0ZWRDb21wb3NpdGluZ0FjdGl2ZTsK
ICAgICBib29sIG1fY29tcG9zaXRvckNyZWF0aW9uRmFpbGVkOworICAgIC8vIElmIHRydWUsIHRo
ZSBncmFwaGljcyBjb250ZXh0IGlzIGJlaW5nIHJlc3RvcmVkLgorICAgIGJvb2wgbV9yZWNyZWF0
aW5nR3JhcGhpY3NDb250ZXh0OwogI2VuZGlmCiAgICAgc3RhdGljIGNvbnN0IFdlYklucHV0RXZl
bnQqIG1fY3VycmVudElucHV0RXZlbnQ7CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>