<?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>16808</bug_id>
          
          <creation_ts>2008-01-09 15:50:04 -0800</creation_ts>
          <short_desc>ASSERT(m_document-&gt;frame() == m_view-&gt;frame()) failing in CachedPage::clear when running Safari&apos;s PLT</short_desc>
          <delta_ts>2008-01-10 13:25:08 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Frames</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows XP</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>16607</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Roben (:aroben)">aroben</reporter>
          <assigned_to name="Adam Roben (:aroben)">aroben</assigned_to>
          <cc>andersca</cc>
    
    <cc>darin</cc>
    
    <cc>hyatt</cc>
    
    <cc>kmccullough</cc>
    
    <cc>mitz</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>66692</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-01-09 15:50:04 -0800</bug_when>
    <thetext>ASSERT(m_document-&gt;frame() == m_view-&gt;frame()) in CachedPage::clear fails when running Safari&apos;s PLT. I believe this is due to Windows WebKit keeping FrameViews around for longer than Mac WebKit. Windows WebKit currently creates one FrameView per Frame, while Mac WebKit creates a new FrameView for each new page load in each Frame.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66693</commentid>
    <comment_count>1</comment_count>
      <attachid>18355</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-01-09 15:52:17 -0800</bug_when>
    <thetext>Created attachment 18355
patch in progress

Here&apos;s a patch in progress. However, I&apos;m hitting the assertions in FrameView::scheduleRelayout due to FrameViews in the page cache having layout scheduled for them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66694</commentid>
    <comment_count>2</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-01-09 15:54:51 -0800</bug_when>
    <thetext>&lt;rdar://5659200&amp;5659355&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66695</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-01-09 16:01:00 -0800</bug_when>
    <thetext>See bug 13913 and bug 14794 for similar issues with the GTK port</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66700</commentid>
    <comment_count>4</comment_count>
      <attachid>18355</attachid>
    <who name="Kevin McCullough">kmccullough</who>
    <bug_when>2008-01-09 16:49:28 -0800</bug_when>
    <thetext>Comment on attachment 18355
patch in progress

Most of this patch looks good to me, although I&apos;m not sure I know enough to give it an r+.

Also you said to remind you to double check if it&apos;s ok to remove the call to resetMultipleFormSubmissionProtection()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66702</commentid>
    <comment_count>5</comment_count>
      <attachid>18355</attachid>
    <who name="Kevin McCullough">kmccullough</who>
    <bug_when>2008-01-09 17:05:59 -0800</bug_when>
    <thetext>Comment on attachment 18355
patch in progress

I hit the assert:  ASSERT(!m_frame-&gt;document() || !m_frame-&gt;document()-&gt;inPageCache());
Every time I navigate.  Are you not having this issue?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66712</commentid>
    <comment_count>6</comment_count>
      <attachid>18355</attachid>
    <who name="">mitz</who>
    <bug_when>2008-01-09 19:47:26 -0800</bug_when>
    <thetext>Comment on attachment 18355
patch in progress

 1856         frameView-&gt;attachToWindow();

I expect attachToWindow() to happen as a result of calling setWidget(). Does it not?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66739</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-01-10 07:09:23 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 18355 [edit])
&gt; Most of this patch looks good to me, although I&apos;m not sure I know enough to
&gt; give it an r+.
&gt; 
&gt; Also you said to remind you to double check if it&apos;s ok to remove the call to
&gt; resetMultipleFormSubmissionProtection()

I remember now that I removed it from transitionToCommittedFromCachedPage because the Mac doesn&apos;t call it there, either.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66741</commentid>
    <comment_count>8</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-01-10 07:09:49 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 18355 [edit])
&gt; I hit the assert:  ASSERT(!m_frame-&gt;document() ||
&gt; !m_frame-&gt;document()-&gt;inPageCache());
&gt; Every time I navigate.  Are you not having this issue?

I am having that issue, as I said when I uploaded the patch (see comment #2).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66750</commentid>
    <comment_count>9</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-01-10 08:52:18 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 18355 [edit])
&gt;  1856         frameView-&gt;attachToWindow();
&gt; 
&gt; I expect attachToWindow() to happen as a result of calling setWidget(). Does it
&gt; not?

Hm, I suppose it does: RenderPart::setWidget -&gt; RenderWidget::setWidget -&gt; ScrollView::addChild -&gt; Widget::setParent -&gt; Widget::attachToWindow. Thanks for pointing that out!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66752</commentid>
    <comment_count>10</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-01-10 08:57:15 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #6)
&gt; &gt; (From update of attachment 18355 [edit] [edit])
&gt; &gt;  1856         frameView-&gt;attachToWindow();
&gt; &gt; 
&gt; &gt; I expect attachToWindow() to happen as a result of calling setWidget(). Does it
&gt; &gt; not?
&gt; 
&gt; Hm, I suppose it does: RenderPart::setWidget -&gt; RenderWidget::setWidget -&gt;
&gt; ScrollView::addChild -&gt; Widget::setParent -&gt; Widget::attachToWindow. Thanks for
&gt; pointing that out!

Ah, but we only call attachToWindow() on the main frame, and we only call setWidget() on frames that have an ownerRenderer(), so I think both calls need to remain.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66758</commentid>
    <comment_count>11</comment_count>
    <who name="">mitz</who>
    <bug_when>2008-01-10 09:55:32 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; Ah, but we only call attachToWindow() on the main frame, and we only call
&gt; setWidget() on frames that have an ownerRenderer(), so I think both calls need
&gt; to remain.

Oh, that&apos;s right. Sorry. The reason the attachToWindow() drew my attention was that I did not see a detachFromWindow() to balance it. So now the question is, should you call detachFromWindow() on the frame&apos;s current view before calling frame-&gt;setView(0)?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66778</commentid>
    <comment_count>12</comment_count>
      <attachid>18371</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-01-10 12:45:28 -0800</bug_when>
    <thetext>Created attachment 18371
patch v2

With this patch I no longer hit assertions when browsing, running the PLT, or running the regression tests with the back/forward cache turned on.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66779</commentid>
    <comment_count>13</comment_count>
      <attachid>18371</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-01-10 12:55:01 -0800</bug_when>
    <thetext>Comment on attachment 18371
patch v2

Make setWidget explicitly remove the widget rather than patching WidgetWin&apos;s destructor.  This way you do the removal in a cross-platform way and don&apos;t have to patch the other platforms&apos; widget classes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66785</commentid>
    <comment_count>14</comment_count>
      <attachid>18373</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-01-10 13:09:39 -0800</bug_when>
    <thetext>Created attachment 18373
patch v3

Incorporates hyatt&apos;s comments (which actually were already implemented by a patch for bug 16456).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66786</commentid>
    <comment_count>15</comment_count>
      <attachid>18373</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2008-01-10 13:13:09 -0800</bug_when>
    <thetext>Comment on attachment 18373
patch v3

r=me

I think it&apos;s worth explicitly mentioning in a comment that removeFromParent() is a no-op on Mac (next to the call site).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>66788</commentid>
    <comment_count>16</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2008-01-10 13:25:08 -0800</bug_when>
    <thetext>(In reply to comment #15)
&gt; (From update of attachment 18373 [edit])
&gt; r=me
&gt; 
&gt; I think it&apos;s worth explicitly mentioning in a comment that removeFromParent()
&gt; is a no-op on Mac (next to the call site).

Done and landed as r29369.

</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>18355</attachid>
            <date>2008-01-09 15:52:17 -0800</date>
            <delta_ts>2008-01-10 12:45:28 -0800</delta_ts>
            <desc>patch in progress</desc>
            <filename>frameview-creation.patch</filename>
            <type>text/plain</type>
            <size>5776</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
YTJlZWQ4Mi4uZTAyYmMwNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAwOC0wMS0wOSAgQWRhbSBSb2JlbiAg
PGFyb2JlbkBhcHBsZS5jb20+CisKKyAgICAgICAgRml4IDxyZGFyOi8vNTY1OTIwMCY1NjU5MzU1
PiBDcmFzaGVzIGR1ZSB0byBiYWNrL2ZvcndhcmQgY2FjaGUgaW4gcmVncmVzc2lvbiB0ZXN0cy9Q
TFQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBs
YXRmb3JtL3dpbi9XaWRnZXRXaW4uY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2lkZ2V0Ojp+V2lk
Z2V0KTogUmVtb3ZlZCB0aGUgYXNzZXJ0aW9uIHRoYXQgc2F5cyB3ZSBzaG91bGQKKyAgICAgICAg
aGF2ZSBubyBwYXJlbnQgYXQgdGhpcyBwb2ludC4gTWFjIGhhcyBubyBzdWNoIGFzc2VydGlvbi4g
V2Ugbm93IHJlbW92ZQorICAgICAgICBvdXJzZWx2ZXMgZnJvbSBvdXIgcGFyZW50IGlmIHdlIGhh
dmUgb25lLgorCiAyMDA3LTEwLTAxICBBbGxhbiBTYW5kZmVsZCBKZW5zZW4gIDxzYW5kZmVsZEBr
ZGUub3JnPgogCiAgICAgICAgIFJld29ya2VkIGJ5IEVyaWMsIFJldmlld2VkIGJ5IEh5YXR0Lgpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAgYi9XZWJDb3JlL3BhZ2UvRnJh
bWVWaWV3LmNwcAppbmRleCA1YjM2YTYyLi4xOWZlNjgxIDEwMDY0NAotLS0gYS9XZWJDb3JlL3Bh
Z2UvRnJhbWVWaWV3LmNwcAorKysgYi9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtNjk5
LDYgKzY5OSw3IEBAIHZvaWQgRnJhbWVWaWV3OjpsYXlvdXRUaW1lckZpcmVkKFRpbWVyPEZyYW1l
Vmlldz4qKQogCiB2b2lkIEZyYW1lVmlldzo6c2NoZWR1bGVSZWxheW91dCgpCiB7CisgICAgQVNT
RVJUKCFtX2ZyYW1lLT5kb2N1bWVudCgpIHx8ICFtX2ZyYW1lLT5kb2N1bWVudCgpLT5pblBhZ2VD
YWNoZSgpKTsKICAgICBBU1NFUlQobV9mcmFtZS0+dmlldygpID09IHRoaXMpOwogCiAgICAgaWYg
KGQtPmxheW91dFJvb3QpIHsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vd2luL1dpZGdl
dFdpbi5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL3dpbi9XaWRnZXRXaW4uY3BwCmluZGV4IGZjMGFk
YmEuLjgwNjg4OWQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vd2luL1dpZGdldFdpbi5j
cHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS93aW4vV2lkZ2V0V2luLmNwcApAQCAtNjQsNyArNjQs
OCBAQCBXaWRnZXQ6OldpZGdldCgpCiAKIFdpZGdldDo6fldpZGdldCgpIAogewotICAgIEFTU0VS
VCghcGFyZW50KCkpOworICAgIGlmIChwYXJlbnQoKSkKKyAgICAgICAgcGFyZW50KCktPnJlbW92
ZUNoaWxkKHRoaXMpOwogICAgIGRlbGV0ZSBkYXRhOwogfQogCmRpZmYgLS1naXQgYS9XZWJLaXQv
d2luL0NoYW5nZUxvZyBiL1dlYktpdC93aW4vQ2hhbmdlTG9nCmluZGV4IGY5ODljNjguLmJmZjUx
ZGEgMTAwNjQ0Ci0tLSBhL1dlYktpdC93aW4vQ2hhbmdlTG9nCisrKyBiL1dlYktpdC93aW4vQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMDgtMDEtMDkgIEFkYW0gUm9iZW4gIDxhcm9iZW5A
YXBwbGUuY29tPgorCisgICAgICAgIEZpeCA8cmRhcjovLzU2NTkyMDAmNTY1OTM1NT4gQ3Jhc2hl
cyBkdWUgdG8gYmFjay9mb3J3YXJkIGNhY2hlIGluIHJlZ3Jlc3Npb24gdGVzdHMvUExUCisKKyAg
ICAgICAgV2Ugd2VyZSBmYWlsaW5nIGFuIGFzc2VydGlvbiBpbiBDYWNoZWRQYWdlOjpjbGVhciBi
ZWNhdXNlIHdlIHdlcmUKKyAgICAgICAgcmV1c2luZyBGcmFtZVZpZXdzIHRvbyBsaWJlcmFsbHku
IFdlIG5vdyBjcmVhdGUgYSBuZXcgRnJhbWVWaWV3IGZvcgorICAgICAgICBlYWNoIHBhZ2UgbG9h
ZCwganVzdCBhcyBNYWMgZG9lcy4KKworICAgICAgICBUaGlzIGhhcyB0aGUgc2lkZS1lZmZlY3Qg
b2YgcGx1Z2dpbmcgc29tZSBvZiB0aGUgd29ybGQgbGVha3Mgc2VlbiBhdAorICAgICAgICB0aGUg
ZW5kIG9mIHRoZSBQTFQuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBXZWJGcmFtZS5jcHA6CisgICAgICAgIChXZWJGcmFtZTo6aW5pdFdpdGhXZWJG
cmFtZVZpZXcpOiBEb24ndCBjcmVhdGUgdGhlIEZyYW1lVmlldyByaWdodAorICAgICAgICBhd2F5
IC0tIGl0J2xsIGJlIGNyZWF0ZWQgd2hlbiB0aGUgbG9hZCBpcyBjb21taXR0ZWQuCisgICAgICAg
IChXZWJGcmFtZTo6dHJhbnNpdGlvblRvQ29tbWl0dGVkRnJvbUNhY2hlZFBhZ2UpOiBXZSBkb24n
dCBoYXZlIHRvIGRvCisgICAgICAgIGFueXRoaW5nIGhlcmUgYW55bW9yZS4gVGhlIHdvcmsgdGhh
dCB3YXMgZG9uZSBieQorICAgICAgICB0cmFuc2l0aW9udG9Db21taXR0ZWRGb3JOZXdQYWdlIGlz
IGFscmVhZHkgZG9uZSBieSBXZWJDb3JlLgorICAgICAgICAoV2ViRnJhbWU6OnRyYW5zaXRpb25U
b0NvbW1pdHRlZEZvck5ld1BhZ2UpOiBQb3J0ZWQgY29kZSBmcm9tCisgICAgICAgIC1bV2ViQ29y
ZUZyYW1lQnJpZGdlCisgICAgICAgIGNyZWF0ZUZyYW1lVmlld1dpdGhOU1ZpZXc6bWFyZ2luV2lk
dGg6bWFyZ2luSGVpZ2h0Ol0sCisgICAgICAgIC1bV2ViQ29yZUZyYW1lQnJpZGdlIGluc3RhbGxJ
bkZyYW1lOl0sIGFuZCBtb3ZlZCBjb2RlIGhlcmUgZnJvbQorICAgICAgICBXZWJGcmFtZTo6aW5p
dFdpdGhXZWJGcmFtZVZpZXcgYW5kIFdlYlZpZXc6OmluaXRXaXRoRnJhbWUuCisgICAgICAgICog
V2ViVmlldy5jcHA6CisgICAgICAgIChXZWJWaWV3Ojppbml0V2l0aEZyYW1lKTogTW92ZWQgRnJh
bWVWaWV3IGluaXRpYWxpemF0aW9uIGNvZGUgdG8KKyAgICAgICAgV2ViRnJhbWU6OnRyYW5zaXRp
b25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UuCisKIDIwMDgtMDEtMDggIFN0ZXZlIEZhbGtlbmJ1cmcg
IDxzZmFsa2VuQGFwcGxlLmNvbT4KIAogICAgICAgICBGaXggYnVpbGQuCmRpZmYgLS1naXQgYS9X
ZWJLaXQvd2luL1dlYkZyYW1lLmNwcCBiL1dlYktpdC93aW4vV2ViRnJhbWUuY3BwCmluZGV4IDlj
NjVmNTIuLmI5ZjUxMDUgMTAwNjQ0Ci0tLSBhL1dlYktpdC93aW4vV2ViRnJhbWUuY3BwCisrKyBi
L1dlYktpdC93aW4vV2ViRnJhbWUuY3BwCkBAIC0xMDY5LDEzICsxMDY5LDYgQEAgdm9pZCBXZWJG
cmFtZTo6aW5pdFdpdGhXZWJGcmFtZVZpZXcoSVdlYkZyYW1lVmlldyogLyp2aWV3Ki8sIElXZWJW
aWV3KiB3ZWJWaWV3LAogICAgIHRoaXMtPkFkZFJlZigpOyAvLyBXZSByZWxlYXNlIHRoaXMgcmVm
IGluIGZyYW1lTG9hZGVyRGVzdHJveWVkKCkKICAgICBGcmFtZSogZnJhbWUgPSBuZXcgRnJhbWUo
cGFnZSwgb3duZXJFbGVtZW50LCB0aGlzKTsKICAgICBkLT5mcmFtZSA9IGZyYW1lOwotCi0gICAg
RnJhbWVWaWV3KiBmcmFtZVZpZXcgPSBuZXcgRnJhbWVWaWV3KGZyYW1lKTsKLQotICAgIGZyYW1l
LT5zZXRWaWV3KGZyYW1lVmlldyk7Ci0gICAgZnJhbWVWaWV3LT5kZXJlZigpOyAvLyBGcmFtZVZp
ZXdzIGFyZSBjcmVhdGVkIHdpdGggYSByZWYgY291bnQgb2YgMS4gUmVsZWFzZSB0aGlzIHJlZiBz
aW5jZSB3ZSd2ZSBhc3NpZ25lZCBpdCB0byBmcmFtZS4KLQotICAgIGZyYW1lVmlldy0+c2V0Q29u
dGFpbmluZ1dpbmRvdyh2aWV3V2luZG93KTsKIH0KIAogRnJhbWUqIFdlYkZyYW1lOjppbXBsKCkK
QEAgLTE4MzgsMTYgKzE4MzEsMzYgQEAgdm9pZCBXZWJGcmFtZTo6c2F2ZVBsYXRmb3JtRGF0YVRv
Q2FjaGVkUGFnZShDYWNoZWRQYWdlKiBjYWNoZWRQYWdlKQogCiB2b2lkIFdlYkZyYW1lOjp0cmFu
c2l0aW9uVG9Db21taXR0ZWRGcm9tQ2FjaGVkUGFnZShDYWNoZWRQYWdlKikKIHsKLSAgICB0cmFu
c2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCk7CiB9CiAKIHZvaWQgV2ViRnJhbWU6OnRyYW5z
aXRpb25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UoKQogewotICAgIEFTU0VSVChjb3JlKHRoaXMpKTsK
KyAgICBGcmFtZSogZnJhbWUgPSBjb3JlKHRoaXMpOworICAgIEFTU0VSVChmcmFtZSk7CisKKyAg
ICBmcmFtZS0+c2V0VmlldygwKTsKKworICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbmV3IEZy
YW1lVmlldyhmcmFtZSk7CisKKyAgICBmcmFtZS0+c2V0VmlldyhmcmFtZVZpZXcpOworICAgIGZy
YW1lVmlldy0+ZGVyZWYoKTsgLy8gRnJhbWVWaWV3cyBhcmUgY3JlYXRlZCB3aXRoIGEgcmVmIGNv
dW50IG9mIDEuIFJlbGVhc2UgdGhpcyByZWYgc2luY2Ugd2UndmUgYXNzaWduZWQgaXQgdG8gZnJh
bWUuCisKKyAgICBIV05EIHZpZXdXaW5kb3c7CisgICAgaWYgKFNVQ0NFRURFRChkLT53ZWJWaWV3
LT52aWV3V2luZG93KHJlaW50ZXJwcmV0X2Nhc3Q8T0xFX0hBTkRMRSo+KCZ2aWV3V2luZG93KSkp
KQorICAgICAgICBmcmFtZVZpZXctPnNldENvbnRhaW5pbmdXaW5kb3codmlld1dpbmRvdyk7CisK
KyAgICBQYWdlKiBwYWdlID0gZnJhbWUtPnBhZ2UoKTsKKyAgICBBU1NFUlQocGFnZSk7CisKKyAg
ICBpZiAoZnJhbWUgPT0gcGFnZS0+bWFpbkZyYW1lKCkpIHsKKyAgICAgICAgZnJhbWVWaWV3LT5h
dHRhY2hUb1dpbmRvdygpOworICAgICAgICBSRUNUIGZyYW1lOworICAgICAgICBkLT53ZWJWaWV3
LT5mcmFtZVJlY3QoJmZyYW1lKTsKKyAgICAgICAgZnJhbWVWaWV3LT5yZXNpemUoZnJhbWUucmln
aHQgLSBmcmFtZS5sZWZ0LCBmcmFtZS5ib3R0b20gLSBmcmFtZS50b3ApOworICAgIH0KIAotICAg
IC8vIE9uIHRoZSBtYWMsIHRoaXMgaXMgZG9uZSBpbiBGcmFtZTo6c2V0VmlldywgYnV0IHNpbmNl
IHdlIGRvbid0IGhhdmUgc2VwYXJhdGUKLSAgICAvLyBmcmFtZSB2aWV3cywgd2UnbGwganVzdCBk
byBpdCBoZXJlIGluc3RlYWQuCi0gICAgY29yZSh0aGlzKS0+bG9hZGVyKCktPnJlc2V0TXVsdGlw
bGVGb3JtU3VibWlzc2lvblByb3RlY3Rpb24oKTsKKyAgICBpZiAoZnJhbWUtPm93bmVyUmVuZGVy
ZXIoKSkKKyAgICAgICAgZnJhbWUtPm93bmVyUmVuZGVyZXIoKS0+c2V0V2lkZ2V0KGZyYW1lVmll
dyk7CiB9CiAKIHZvaWQgV2ViRnJhbWU6OnVwZGF0ZUdsb2JhbEhpc3RvcnlGb3JTdGFuZGFyZExv
YWQoY29uc3QgS1VSTCYgdXJsKQpkaWZmIC0tZ2l0IGEvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcCBi
L1dlYktpdC93aW4vV2ViVmlldy5jcHAKaW5kZXggYjFiN2FiOC4uYWYxMGVlOSAxMDA2NDQKLS0t
IGEvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcAorKysgYi9XZWJLaXQvd2luL1dlYlZpZXcuY3BwCkBA
IC0yMDU2LDggKzIwNTYsNiBAQCBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFdlYlZpZXc6Omlu
aXRXaXRoRnJhbWUoCiAgICAgd2ViRnJhbWUtPmluaXRXaXRoV2ViRnJhbWVWaWV3KDAgLypGSVhN
RSovLCB0aGlzLCBtX3BhZ2UsIDApOwogICAgIG1fbWFpbkZyYW1lID0gd2ViRnJhbWU7CiAgICAg
d2ViRnJhbWUtPlJlbGVhc2UoKTsgLy8gVGhlIFdlYkZyYW1lIGlzIG93bmVkIGJ5IHRoZSBGcmFt
ZSwgc28gcmVsZWFzZSBvdXIgcmVmZXJlbmNlIHRvIGl0LgotICAgIG1fcGFnZS0+bWFpbkZyYW1l
KCktPnZpZXcoKS0+YXR0YWNoVG9XaW5kb3coKTsKLSAgICBtX3BhZ2UtPm1haW5GcmFtZSgpLT52
aWV3KCktPnJlc2l6ZShmcmFtZS5yaWdodCAtIGZyYW1lLmxlZnQsIGZyYW1lLmJvdHRvbSAtIGZy
YW1lLnRvcCk7CiAKICAgICBtX3BhZ2UtPm1haW5GcmFtZSgpLT50cmVlKCktPnNldE5hbWUoU3Ry
aW5nKGZyYW1lTmFtZSwgU3lzU3RyaW5nTGVuKGZyYW1lTmFtZSkpKTsKICAgICBtX3BhZ2UtPm1h
aW5GcmFtZSgpLT5pbml0KCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>18371</attachid>
            <date>2008-01-10 12:45:28 -0800</date>
            <delta_ts>2008-01-10 13:09:39 -0800</delta_ts>
            <desc>patch v2</desc>
            <filename>0001-Fix-many-bugs-by-giving-Windows-one-FrameView-per-pa.patch</filename>
            <type>text/plain</type>
            <size>11722</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">RnJvbSBiYjA1MDMyZTI0YTM5NTUxYmI3ODRiZDM0OTg3M2ZlMWY2NWY4YTc3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGFtIFJvYmVuIDxhcm9iZW5AYXBwbGUuY29tPgpEYXRlOiBU
aHUsIDEwIEphbiAyMDA4IDE1OjQyOjQ0IC0wNTAwClN1YmplY3Q6IFtQRlJdIEZpeCBtYW55IGJ1
Z3MgYnkgZ2l2aW5nIFdpbmRvd3Mgb25lIEZyYW1lVmlldyBwZXIgcGFnZSBsb2FkCgpXZWJDb3Jl
OgoKICAgICAgICBGaXhlcyB0byBhbGxvdyBtdWx0aXBsZSBGcmFtZVZpZXdzIG9uIFdpbmRvd3MK
CiAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgogICAgICAgICogcGFnZS9GcmFt
ZVZpZXcuY3BwOgogICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXc6OkZyYW1lVmlldyk6IEFkZGVk
IGEgbmV3IGNvbnN0cnVjdG9yIHRoYXQgdGFrZXMgYW4KICAgICAgICBJbnRTaXplIHRvIHNwZWNp
ZnkgdGhlIEZyYW1lVmlldydzIGluaXRpYWwgc2l6ZS4KICAgICAgICAoV2ViQ29yZTo6RnJhbWVW
aWV3OjpzY2hlZHVsZVJlbGF5b3V0KTogQWRkZWQgYW4gYXNzZXJ0aW9uIHRoYXQgb3VyCiAgICAg
ICAgRG9jdW1lbnQgaXMgbm90IGluIHRoZSBwYWdlIGNhY2hlLgogICAgICAgICogcGFnZS9GcmFt
ZVZpZXcuaDoKICAgICAgICAqIHBsYXRmb3JtL3dpbi9XaWRnZXRXaW4uY3BwOgogICAgICAgIChX
ZWJDb3JlOjpXaWRnZXQ6On5XaWRnZXQpOiBXZSBtaWdodCBzdGlsbCBoYXZlIGEgcGFyZW50IGhl
cmUgaWYKICAgICAgICBSZW5kZXJQYXJ0OjpzZXRXaWRnZXQgaXMgY2FsbGVkIGV4cGxpY2l0bHku
IEluIHRoYXQgY2FzZSwgZGV0YWNoIGZyb20KICAgICAgICBvdXIgcGFyZW50IGJlZm9yZSBiZWlu
ZyBkZWxldGVkLgoKV2ViS2l0L3dpbjoKCiAgICAgICAgRml4IG1hbnkgYnVncyBieSBnaXZpbmcg
V2luZG93cyBvbmUgRnJhbWVWaWV3IHBlciBwYWdlIGxvYWQKCiAgICAgICAgQnVncyBpbmNsdWRl
OgogICAgICAgICAgICA8cmRhcjovLzU2NTkyMDA+CiAgICAgICAgICAgICAgICBXaW5kb3dzIGJh
Y2svZm9yd2FyZCBjYWNoZSBjYXVzZXMgY3Jhc2hlcyBpbiB0aGUgbGF5b3V0IHRlc3RzCiAgICAg
ICAgICAgIDxyZGFyOi8vNTY1OTM1NT4KICAgICAgICAgICAgPGh0dHA6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTE2ODA4MD4KICAgICAgICAgICAgICAgIFJFR1JFU1NJT046IFBM
VCBicm9rZW4gb24gV2luZG93cyBkdWUgdG8gYmFjay9mb3J3YXJkIGNhY2hlCiAgICAgICAgICAg
IDxyZGFyOi8vNTY2MzY1ND4KICAgICAgICAgICAgPGh0dHA6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE2NjA3PgogICAgICAgICAgICAgICAgUmFuZG9tIGNyYXNoZXMgaW4gRnJh
bWVWaWV3OjpzY2hlZHVsZVJlbGF5b3V0IHdoaWxlIHN1cmZpbmcKICAgICAgICAgICAgICAgIFRo
aW5rZ2VlawoKICAgICAgICBPbiBXaW5kb3dzIHVudGlsIG5vdyB3ZSd2ZSBvbmx5IGhhZCBvbmUg
RnJhbWVWaWV3IHBlciBGcmFtZS4gT25jZSB0aGUKICAgICAgICBiYWNrL2ZvcndhcmQgY2FjaGUg
d2FzIHR1cm5lZCBvbiB0aGlzIHN0YXJ0ZWQgY2F1c2luZyBhc3NlcnRpb25zIHRvCiAgICAgICAg
ZmFpbCBhbmQgY3Jhc2hlcyB0byBvY2N1ciBkdWUgdG8gYSBzaW5nbGUgRnJhbWVWaWV3IGJlaW5n
IGJvdGggaW4gdGhlCiAgICAgICAgYmFjay9mb3J3YXJkIGNhY2hlIChwb3NzaWJseSBtdWx0aXBs
ZSB0aW1lcyEpIGFuZCB1c2VkIGJ5IGEgbGl2ZQogICAgICAgIGRvY3VtZW50LiBXZSBub3cgY3Jl
YXRlIGEgbmV3IEZyYW1lVmlldyBmb3IgZWFjaCBwYWdlIGxvYWQsIGp1c3QgYXMKICAgICAgICBN
YWMgZG9lcy4KCiAgICAgICAgVGhpcyBoYXMgdGhlIHNpZGUtZWZmZWN0IG9mIHBsdWdnaW5nIHNv
bWUgb2YgdGhlIHdvcmxkIGxlYWtzIHNlZW4gYXQKICAgICAgICB0aGUgZW5kIG9mIHRoZSBQTFQu
CgogICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKICAgICAgICAqIFdlYkZyYW1l
LmNwcDoKICAgICAgICAoV2ViRnJhbWU6OmluaXRXaXRoV2ViRnJhbWVWaWV3KTogRG9uJ3QgY3Jl
YXRlIHRoZSBGcmFtZVZpZXcgcmlnaHQKICAgICAgICBhd2F5IC0tIGl0J2xsIGJlIGNyZWF0ZWQg
d2hlbiB0aGUgbG9hZCBpcyBjb21taXR0ZWQuCiAgICAgICAgKFdlYkZyYW1lOjp0cmFuc2l0aW9u
VG9Db21taXR0ZWRGcm9tQ2FjaGVkUGFnZSk6IE1hdGNoIHRoZSBNYWMgYnkgbm8KICAgICAgICBs
b25nZXIgY2FsbGluZyByZXNldE11bHRpcGxlRm9ybVN1Ym1pc3Npb25Qcm90ZWN0aW9uIGhlcmUu
CiAgICAgICAgKFdlYkZyYW1lOjp0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKTogUG9y
dGVkIGNvZGUgZnJvbQogICAgICAgIC1bV2ViQ29yZUZyYW1lQnJpZGdlCiAgICAgICAgY3JlYXRl
RnJhbWVWaWV3V2l0aE5TVmlldzptYXJnaW5XaWR0aDptYXJnaW5IZWlnaHQ6XSwKICAgICAgICAt
W1dlYkNvcmVGcmFtZUJyaWRnZSBpbnN0YWxsSW5GcmFtZTpdLCBhbmQgbW92ZWQgY29kZSBoZXJl
IGZyb20KICAgICAgICBXZWJGcmFtZTo6aW5pdFdpdGhXZWJGcmFtZVZpZXcgYW5kIFdlYlZpZXc6
OmluaXRXaXRoRnJhbWUuIFdlYkNvcmUKICAgICAgICB0YWtlcyBjYXJlIG9mIHJlc2V0TXVsdGlw
bGVGb3JtU3VibWlzc2lvblByb3RlY3Rpb24sIGp1c3QgbGlrZSBpdCBkb2VzCiAgICAgICAgb24g
dGhlIE1hYy4KICAgICAgICAqIFdlYlZpZXcuY3BwOgogICAgICAgIChXZWJWaWV3Ojppbml0V2l0
aEZyYW1lKTogTW92ZWQgRnJhbWVWaWV3IGluaXRpYWxpemF0aW9uIGNvZGUgdG8KICAgICAgICBX
ZWJGcmFtZTo6dHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZS4KLS0tCiBXZWJDb3JlL0No
YW5nZUxvZyAgICAgICAgICAgICAgICAgIHwgICAyOCArKysrKysrKysrKysrKysrKysrKysrCiBX
ZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcCAgICAgICAgIHwgICAxMyArKysrKysrKysrCiBXZWJD
b3JlL3BhZ2UvRnJhbWVWaWV3LmggICAgICAgICAgIHwgICAgNyArKysrKwogV2ViQ29yZS9wbGF0
Zm9ybS93aW4vV2lkZ2V0V2luLmNwcCB8ICAgIDMgKy0KIFdlYktpdC93aW4vQ2hhbmdlTG9nICAg
ICAgICAgICAgICAgfCAgIDQzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCiBX
ZWJLaXQvd2luL1dlYkZyYW1lLmNwcCAgICAgICAgICAgIHwgICA0NCArKysrKysrKysrKysrKysr
KysrKysrKysrKy0tLS0tLS0tLQogV2ViS2l0L3dpbi9XZWJWaWV3LmNwcCAgICAgICAgICAgICB8
ICAgIDIgLQogNyBmaWxlcyBjaGFuZ2VkLCAxMjUgaW5zZXJ0aW9ucygrKSwgMTUgZGVsZXRpb25z
KC0pCgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwpp
bmRleCBhMmVlZDgyLi5lMzZkNDNiIDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysg
Yi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDA4LTAxLTEwICBBZGFtIFJv
YmVuICA8YXJvYmVuQGFwcGxlLmNvbT4KKworICAgICAgICBGaXhlcyB0byBhbGxvdyBtdWx0aXBs
ZSBGcmFtZVZpZXdzIG9uIFdpbmRvd3MKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkZyYW1lVmlldzo6RnJhbWVWaWV3KTogQWRkZWQgYSBuZXcgY29uc3RydWN0b3IgdGhhdCB0YWtl
cyBhbgorICAgICAgICBJbnRTaXplIHRvIHNwZWNpZnkgdGhlIEZyYW1lVmlldydzIGluaXRpYWwg
c2l6ZS4KKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmlldzo6c2NoZWR1bGVSZWxheW91dCk6IEFk
ZGVkIGFuIGFzc2VydGlvbiB0aGF0IG91cgorICAgICAgICBEb2N1bWVudCBpcyBub3QgaW4gdGhl
IHBhZ2UgY2FjaGUuCisgICAgICAgICogcGFnZS9GcmFtZVZpZXcuaDoKKyAgICAgICAgKiBwbGF0
Zm9ybS93aW4vV2lkZ2V0V2luLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldpZGdldDo6fldpZGdl
dCk6IFdlIG1pZ2h0IHN0aWxsIGhhdmUgYSBwYXJlbnQgaGVyZSBpZgorICAgICAgICBSZW5kZXJQ
YXJ0OjpzZXRXaWRnZXQgaXMgY2FsbGVkIGV4cGxpY2l0bHkuIEluIHRoYXQgY2FzZSwgZGV0YWNo
IGZyb20KKyAgICAgICAgb3VyIHBhcmVudCBiZWZvcmUgYmVpbmcgZGVsZXRlZC4KKworMjAwOC0w
MS0wOSAgQWRhbSBSb2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+CisKKyAgICAgICAgRml4IDxyZGFy
Oi8vNTY1OTIwMCY1NjU5MzU1PiBDcmFzaGVzIGR1ZSB0byBiYWNrL2ZvcndhcmQgY2FjaGUgaW4g
cmVncmVzc2lvbiB0ZXN0cy9QTFQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIHBsYXRmb3JtL3dpbi9XaWRnZXRXaW4uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6V2lkZ2V0Ojp+V2lkZ2V0KTogUmVtb3ZlZCB0aGUgYXNzZXJ0aW9uIHRoYXQgc2F5cyB3
ZSBzaG91bGQKKyAgICAgICAgaGF2ZSBubyBwYXJlbnQgYXQgdGhpcyBwb2ludC4gTWFjIGhhcyBu
byBzdWNoIGFzc2VydGlvbi4gV2Ugbm93IHJlbW92ZQorICAgICAgICBvdXJzZWx2ZXMgZnJvbSBv
dXIgcGFyZW50IGlmIHdlIGhhdmUgb25lLgorCiAyMDA3LTEwLTAxICBBbGxhbiBTYW5kZmVsZCBK
ZW5zZW4gIDxzYW5kZmVsZEBrZGUub3JnPgogCiAgICAgICAgIFJld29ya2VkIGJ5IEVyaWMsIFJl
dmlld2VkIGJ5IEh5YXR0LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAg
Yi9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAppbmRleCA1YjM2YTYyLi44ZGVhN2Y2IDEwMDY0
NAotLS0gYS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAorKysgYi9XZWJDb3JlL3BhZ2UvRnJh
bWVWaWV3LmNwcApAQCAtMTQ0LDYgKzE0NCwxOCBAQCBGcmFtZVZpZXc6OkZyYW1lVmlldyhGcmFt
ZSogZnJhbWUpCiAgICAgc2hvdygpOwogfQogCisjaWYgIVBMQVRGT1JNKE1BQykKK0ZyYW1lVmll
dzo6RnJhbWVWaWV3KEZyYW1lKiBmcmFtZSwgY29uc3QgSW50U2l6ZSYgaW5pdGlhbFNpemUpCisg
ICAgOiBtX3JlZkNvdW50KDEpCisgICAgLCBtX2ZyYW1lKGZyYW1lKQorICAgICwgZChuZXcgRnJh
bWVWaWV3UHJpdmF0ZSh0aGlzKSkKK3sKKyAgICBpbml0KCk7CisgICAgV2lkZ2V0OjpzZXRGcmFt
ZUdlb21ldHJ5KEludFJlY3QoeCgpLCB5KCksIGluaXRpYWxTaXplLndpZHRoKCksIGluaXRpYWxT
aXplLmhlaWdodCgpKSk7CisgICAgc2hvdygpOworfQorI2VuZGlmCisKIEZyYW1lVmlldzo6fkZy
YW1lVmlldygpCiB7CiAgICAgaWYgKGQtPnBvc3RMYXlvdXRUYXNrc1RpbWVyLmlzQWN0aXZlKCkp
IHsKQEAgLTY5OSw2ICs3MTEsNyBAQCB2b2lkIEZyYW1lVmlldzo6bGF5b3V0VGltZXJGaXJlZChU
aW1lcjxGcmFtZVZpZXc+KikKIAogdm9pZCBGcmFtZVZpZXc6OnNjaGVkdWxlUmVsYXlvdXQoKQog
eworICAgIEFTU0VSVCghbV9mcmFtZS0+ZG9jdW1lbnQoKSB8fCAhbV9mcmFtZS0+ZG9jdW1lbnQo
KS0+aW5QYWdlQ2FjaGUoKSk7CiAgICAgQVNTRVJUKG1fZnJhbWUtPnZpZXcoKSA9PSB0aGlzKTsK
IAogICAgIGlmIChkLT5sYXlvdXRSb290KSB7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvRnJh
bWVWaWV3LmggYi9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmgKaW5kZXggZGRjMzI4Yi4uNzU3N2Ix
MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCisrKyBiL1dlYkNvcmUvcGFn
ZS9GcmFtZVZpZXcuaApAQCAtNTAsNiArNTAsMTMgQEAgdGVtcGxhdGUgPHR5cGVuYW1lIFQ+IGNs
YXNzIFRpbWVyOwogY2xhc3MgRnJhbWVWaWV3IDogcHVibGljIFNjcm9sbFZpZXcgewogcHVibGlj
OgogICAgIEZyYW1lVmlldyhGcmFtZSopOworCisgICAgLy8gT24gdGhlIE1hYywgRnJhbWVWaWV3
cyBhbHdheXMgZ2V0IHRoZWlyIHNpemUgZnJvbSB0aGUgdW5kZXJseWluZyBOU1ZpZXcsCisgICAg
Ly8gc28gcGFzc2luZyBpbiBhIHNpemUgaXMgbm9uc2Vuc2ljYWwuCisjaWYgIVBMQVRGT1JNKE1B
QykKKyAgICBGcmFtZVZpZXcoRnJhbWUqLCBjb25zdCBJbnRTaXplJiBpbml0aWFsU2l6ZSk7Cisj
ZW5kaWYKKwogICAgIHZpcnR1YWwgfkZyYW1lVmlldygpOwogCiAgICAgRnJhbWUqIGZyYW1lKCkg
Y29uc3QgeyByZXR1cm4gbV9mcmFtZS5nZXQoKTsgfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0
Zm9ybS93aW4vV2lkZ2V0V2luLmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vd2luL1dpZGdldFdpbi5j
cHAKaW5kZXggZmMwYWRiYS4uODA2ODg5ZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS93
aW4vV2lkZ2V0V2luLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL3dpbi9XaWRnZXRXaW4uY3Bw
CkBAIC02NCw3ICs2NCw4IEBAIFdpZGdldDo6V2lkZ2V0KCkKIAogV2lkZ2V0Ojp+V2lkZ2V0KCkg
CiB7Ci0gICAgQVNTRVJUKCFwYXJlbnQoKSk7CisgICAgaWYgKHBhcmVudCgpKQorICAgICAgICBw
YXJlbnQoKS0+cmVtb3ZlQ2hpbGQodGhpcyk7CiAgICAgZGVsZXRlIGRhdGE7CiB9CiAKZGlmZiAt
LWdpdCBhL1dlYktpdC93aW4vQ2hhbmdlTG9nIGIvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKaW5kZXgg
Zjk4OWM2OC4uYjZjYTdkNCAxMDA2NDQKLS0tIGEvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKKysrIGIv
V2ViS2l0L3dpbi9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NiBAQAorMjAwOC0wMS0xMCAgQWRhbSBS
b2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+CisKKyAgICAgICAgRml4IG1hbnkgYnVncyBieSBnaXZp
bmcgV2luZG93cyBvbmUgRnJhbWVWaWV3IHBlciBwYWdlIGxvYWQKKyAgICAgICAgCisgICAgICAg
IEJ1Z3MgaW5jbHVkZToKKyAgICAgICAgICAgIDxyZGFyOi8vNTY1OTIwMD4KKyAgICAgICAgICAg
ICAgICBXaW5kb3dzIGJhY2svZm9yd2FyZCBjYWNoZSBjYXVzZXMgY3Jhc2hlcyBpbiB0aGUgbGF5
b3V0IHRlc3RzCisgICAgICAgICAgICA8cmRhcjovLzU2NTkzNTU+CisgICAgICAgICAgICA8aHR0
cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY4MDgwPgorICAgICAgICAgICAg
ICAgIFJFR1JFU1NJT046IFBMVCBicm9rZW4gb24gV2luZG93cyBkdWUgdG8gYmFjay9mb3J3YXJk
IGNhY2hlCisgICAgICAgICAgICA8cmRhcjovLzU2NjM2NTQ+CisgICAgICAgICAgICA8aHR0cDov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY2MDc+CisgICAgICAgICAgICAgICAg
UmFuZG9tIGNyYXNoZXMgaW4gRnJhbWVWaWV3OjpzY2hlZHVsZVJlbGF5b3V0IHdoaWxlIHN1cmZp
bmcKKyAgICAgICAgICAgICAgICBUaGlua2dlZWsKKworICAgICAgICBPbiBXaW5kb3dzIHVudGls
IG5vdyB3ZSd2ZSBvbmx5IGhhZCBvbmUgRnJhbWVWaWV3IHBlciBGcmFtZS4gT25jZSB0aGUKKyAg
ICAgICAgYmFjay9mb3J3YXJkIGNhY2hlIHdhcyB0dXJuZWQgb24gdGhpcyBzdGFydGVkIGNhdXNp
bmcgYXNzZXJ0aW9ucyB0bworICAgICAgICBmYWlsIGFuZCBjcmFzaGVzIHRvIG9jY3VyIGR1ZSB0
byBhIHNpbmdsZSBGcmFtZVZpZXcgYmVpbmcgYm90aCBpbiB0aGUKKyAgICAgICAgYmFjay9mb3J3
YXJkIGNhY2hlIChwb3NzaWJseSBtdWx0aXBsZSB0aW1lcyEpIGFuZCB1c2VkIGJ5IGEgbGl2ZQor
ICAgICAgICBkb2N1bWVudC4gV2Ugbm93IGNyZWF0ZSBhIG5ldyBGcmFtZVZpZXcgZm9yIGVhY2gg
cGFnZSBsb2FkLCBqdXN0IGFzCisgICAgICAgIE1hYyBkb2VzLgorCisgICAgICAgIFRoaXMgaGFz
IHRoZSBzaWRlLWVmZmVjdCBvZiBwbHVnZ2luZyBzb21lIG9mIHRoZSB3b3JsZCBsZWFrcyBzZWVu
IGF0CisgICAgICAgIHRoZSBlbmQgb2YgdGhlIFBMVC4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYkZyYW1lLmNwcDoKKyAgICAgICAgKFdlYkZy
YW1lOjppbml0V2l0aFdlYkZyYW1lVmlldyk6IERvbid0IGNyZWF0ZSB0aGUgRnJhbWVWaWV3IHJp
Z2h0CisgICAgICAgIGF3YXkgLS0gaXQnbGwgYmUgY3JlYXRlZCB3aGVuIHRoZSBsb2FkIGlzIGNv
bW1pdHRlZC4KKyAgICAgICAgKFdlYkZyYW1lOjp0cmFuc2l0aW9uVG9Db21taXR0ZWRGcm9tQ2Fj
aGVkUGFnZSk6IE1hdGNoIHRoZSBNYWMgYnkgbm8KKyAgICAgICAgbG9uZ2VyIGNhbGxpbmcgcmVz
ZXRNdWx0aXBsZUZvcm1TdWJtaXNzaW9uUHJvdGVjdGlvbiBoZXJlLgorICAgICAgICAoV2ViRnJh
bWU6OnRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UpOiBQb3J0ZWQgY29kZSBmcm9tCisg
ICAgICAgIC1bV2ViQ29yZUZyYW1lQnJpZGdlCisgICAgICAgIGNyZWF0ZUZyYW1lVmlld1dpdGhO
U1ZpZXc6bWFyZ2luV2lkdGg6bWFyZ2luSGVpZ2h0Ol0sCisgICAgICAgIC1bV2ViQ29yZUZyYW1l
QnJpZGdlIGluc3RhbGxJbkZyYW1lOl0sIGFuZCBtb3ZlZCBjb2RlIGhlcmUgZnJvbQorICAgICAg
ICBXZWJGcmFtZTo6aW5pdFdpdGhXZWJGcmFtZVZpZXcgYW5kIFdlYlZpZXc6OmluaXRXaXRoRnJh
bWUuIFdlYkNvcmUKKyAgICAgICAgdGFrZXMgY2FyZSBvZiByZXNldE11bHRpcGxlRm9ybVN1Ym1p
c3Npb25Qcm90ZWN0aW9uLCBqdXN0IGxpa2UgaXQgZG9lcworICAgICAgICBvbiB0aGUgTWFjLgor
ICAgICAgICAqIFdlYlZpZXcuY3BwOgorICAgICAgICAoV2ViVmlldzo6aW5pdFdpdGhGcmFtZSk6
IE1vdmVkIEZyYW1lVmlldyBpbml0aWFsaXphdGlvbiBjb2RlIHRvCisgICAgICAgIFdlYkZyYW1l
Ojp0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlLgorCiAyMDA4LTAxLTA4ICBTdGV2ZSBG
YWxrZW5idXJnICA8c2ZhbGtlbkBhcHBsZS5jb20+CiAKICAgICAgICAgRml4IGJ1aWxkLgpkaWZm
IC0tZ2l0IGEvV2ViS2l0L3dpbi9XZWJGcmFtZS5jcHAgYi9XZWJLaXQvd2luL1dlYkZyYW1lLmNw
cAppbmRleCA5YzY1ZjUyLi42MTE5MjE1IDEwMDY0NAotLS0gYS9XZWJLaXQvd2luL1dlYkZyYW1l
LmNwcAorKysgYi9XZWJLaXQvd2luL1dlYkZyYW1lLmNwcApAQCAtMTA2OSwxMyArMTA2OSw2IEBA
IHZvaWQgV2ViRnJhbWU6OmluaXRXaXRoV2ViRnJhbWVWaWV3KElXZWJGcmFtZVZpZXcqIC8qdmll
dyovLCBJV2ViVmlldyogd2ViVmlldywKICAgICB0aGlzLT5BZGRSZWYoKTsgLy8gV2UgcmVsZWFz
ZSB0aGlzIHJlZiBpbiBmcmFtZUxvYWRlckRlc3Ryb3llZCgpCiAgICAgRnJhbWUqIGZyYW1lID0g
bmV3IEZyYW1lKHBhZ2UsIG93bmVyRWxlbWVudCwgdGhpcyk7CiAgICAgZC0+ZnJhbWUgPSBmcmFt
ZTsKLQotICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbmV3IEZyYW1lVmlldyhmcmFtZSk7Ci0K
LSAgICBmcmFtZS0+c2V0VmlldyhmcmFtZVZpZXcpOwotICAgIGZyYW1lVmlldy0+ZGVyZWYoKTsg
Ly8gRnJhbWVWaWV3cyBhcmUgY3JlYXRlZCB3aXRoIGEgcmVmIGNvdW50IG9mIDEuIFJlbGVhc2Ug
dGhpcyByZWYgc2luY2Ugd2UndmUgYXNzaWduZWQgaXQgdG8gZnJhbWUuCi0KLSAgICBmcmFtZVZp
ZXctPnNldENvbnRhaW5pbmdXaW5kb3codmlld1dpbmRvdyk7CiB9CiAKIEZyYW1lKiBXZWJGcmFt
ZTo6aW1wbCgpCkBAIC0xODM4LDE2ICsxODMxLDQzIEBAIHZvaWQgV2ViRnJhbWU6OnNhdmVQbGF0
Zm9ybURhdGFUb0NhY2hlZFBhZ2UoQ2FjaGVkUGFnZSogY2FjaGVkUGFnZSkKIAogdm9pZCBXZWJG
cmFtZTo6dHJhbnNpdGlvblRvQ29tbWl0dGVkRnJvbUNhY2hlZFBhZ2UoQ2FjaGVkUGFnZSopCiB7
Ci0gICAgdHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSgpOwogfQogCiB2b2lkIFdlYkZy
YW1lOjp0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkKIHsKLSAgICBBU1NFUlQoY29y
ZSh0aGlzKSk7CisgICAgRnJhbWUqIGZyYW1lID0gY29yZSh0aGlzKTsKKyAgICBBU1NFUlQoZnJh
bWUpOworCisgICAgUGFnZSogcGFnZSA9IGZyYW1lLT5wYWdlKCk7CisgICAgQVNTRVJUKHBhZ2Up
OworCisgICAgYm9vbCBpc01haW5GcmFtZSA9IGZyYW1lID09IHBhZ2UtPm1haW5GcmFtZSgpOwor
CisgICAgaWYgKGlzTWFpbkZyYW1lICYmIGZyYW1lLT52aWV3KCkpCisgICAgICAgIGZyYW1lLT52
aWV3KCktPmRldGFjaEZyb21XaW5kb3coKTsKKworICAgIGZyYW1lLT5zZXRWaWV3KDApOworCisg
ICAgRnJhbWVWaWV3KiBmcmFtZVZpZXc7CisgICAgaWYgKGlzTWFpbkZyYW1lKSB7CisgICAgICAg
IFJFQ1QgcmVjdDsKKyAgICAgICAgZC0+d2ViVmlldy0+ZnJhbWVSZWN0KCZyZWN0KTsKKyAgICAg
ICAgZnJhbWVWaWV3ID0gbmV3IEZyYW1lVmlldyhmcmFtZSwgSW50UmVjdChyZWN0KS5zaXplKCkp
OworICAgIH0gZWxzZQorICAgICAgICBmcmFtZVZpZXcgPSBuZXcgRnJhbWVWaWV3KGZyYW1lKTsK
KworICAgIGZyYW1lLT5zZXRWaWV3KGZyYW1lVmlldyk7CisgICAgZnJhbWVWaWV3LT5kZXJlZigp
OyAvLyBGcmFtZVZpZXdzIGFyZSBjcmVhdGVkIHdpdGggYSByZWYgY291bnQgb2YgMS4gUmVsZWFz
ZSB0aGlzIHJlZiBzaW5jZSB3ZSd2ZSBhc3NpZ25lZCBpdCB0byBmcmFtZS4KKworICAgIEhXTkQg
dmlld1dpbmRvdzsKKyAgICBpZiAoU1VDQ0VFREVEKGQtPndlYlZpZXctPnZpZXdXaW5kb3cocmVp
bnRlcnByZXRfY2FzdDxPTEVfSEFORExFKj4oJnZpZXdXaW5kb3cpKSkpCisgICAgICAgIGZyYW1l
Vmlldy0+c2V0Q29udGFpbmluZ1dpbmRvdyh2aWV3V2luZG93KTsKKworICAgIGlmIChpc01haW5G
cmFtZSkKKyAgICAgICAgZnJhbWVWaWV3LT5hdHRhY2hUb1dpbmRvdygpOwogCi0gICAgLy8gT24g
dGhlIG1hYywgdGhpcyBpcyBkb25lIGluIEZyYW1lOjpzZXRWaWV3LCBidXQgc2luY2Ugd2UgZG9u
J3QgaGF2ZSBzZXBhcmF0ZQotICAgIC8vIGZyYW1lIHZpZXdzLCB3ZSdsbCBqdXN0IGRvIGl0IGhl
cmUgaW5zdGVhZC4KLSAgICBjb3JlKHRoaXMpLT5sb2FkZXIoKS0+cmVzZXRNdWx0aXBsZUZvcm1T
dWJtaXNzaW9uUHJvdGVjdGlvbigpOworICAgIGlmIChmcmFtZS0+b3duZXJSZW5kZXJlcigpKQor
ICAgICAgICBmcmFtZS0+b3duZXJSZW5kZXJlcigpLT5zZXRXaWRnZXQoZnJhbWVWaWV3KTsKIH0K
IAogdm9pZCBXZWJGcmFtZTo6dXBkYXRlR2xvYmFsSGlzdG9yeUZvclN0YW5kYXJkTG9hZChjb25z
dCBLVVJMJiB1cmwpCmRpZmYgLS1naXQgYS9XZWJLaXQvd2luL1dlYlZpZXcuY3BwIGIvV2ViS2l0
L3dpbi9XZWJWaWV3LmNwcAppbmRleCBiMWI3YWI4Li5hZjEwZWU5IDEwMDY0NAotLS0gYS9XZWJL
aXQvd2luL1dlYlZpZXcuY3BwCisrKyBiL1dlYktpdC93aW4vV2ViVmlldy5jcHAKQEAgLTIwNTYs
OCArMjA1Niw2IEBAIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgV2ViVmlldzo6aW5pdFdpdGhG
cmFtZSgKICAgICB3ZWJGcmFtZS0+aW5pdFdpdGhXZWJGcmFtZVZpZXcoMCAvKkZJWE1FKi8sIHRo
aXMsIG1fcGFnZSwgMCk7CiAgICAgbV9tYWluRnJhbWUgPSB3ZWJGcmFtZTsKICAgICB3ZWJGcmFt
ZS0+UmVsZWFzZSgpOyAvLyBUaGUgV2ViRnJhbWUgaXMgb3duZWQgYnkgdGhlIEZyYW1lLCBzbyBy
ZWxlYXNlIG91ciByZWZlcmVuY2UgdG8gaXQuCi0gICAgbV9wYWdlLT5tYWluRnJhbWUoKS0+dmll
dygpLT5hdHRhY2hUb1dpbmRvdygpOwotICAgIG1fcGFnZS0+bWFpbkZyYW1lKCktPnZpZXcoKS0+
cmVzaXplKGZyYW1lLnJpZ2h0IC0gZnJhbWUubGVmdCwgZnJhbWUuYm90dG9tIC0gZnJhbWUudG9w
KTsKIAogICAgIG1fcGFnZS0+bWFpbkZyYW1lKCktPnRyZWUoKS0+c2V0TmFtZShTdHJpbmcoZnJh
bWVOYW1lLCBTeXNTdHJpbmdMZW4oZnJhbWVOYW1lKSkpOwogICAgIG1fcGFnZS0+bWFpbkZyYW1l
KCktPmluaXQoKTsKLS0gCjEuNS4zLjQuMTM0Mi5nOGI2YTEKCg==
</data>
<flag name="review"
          id="8023"
          type_id="1"
          status="+"
          setter="hyatt"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>18373</attachid>
            <date>2008-01-10 13:09:39 -0800</date>
            <delta_ts>2008-01-10 13:13:09 -0800</delta_ts>
            <desc>patch v3</desc>
            <filename>0001-Fix-many-bugs-by-giving-Windows-one-FrameView-per-pa.patch</filename>
            <type>text/plain</type>
            <size>12595</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">RnJvbSA2YjIyMWQ0MTAxNmRmNTc4ODhhMTMxYmUxOWM4MTZiNGEzZDBiYWEwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGFtIFJvYmVuIDxhcm9iZW5AYXBwbGUuY29tPgpEYXRlOiBU
aHUsIDEwIEphbiAyMDA4IDE2OjA1OjI5IC0wNTAwClN1YmplY3Q6IFtQRlJdIEZpeCBtYW55IGJ1
Z3MgYnkgZ2l2aW5nIFdpbmRvd3Mgb25lIEZyYW1lVmlldyBwZXIgcGFnZSBsb2FkCgpXZWJDb3Jl
OgoKICAgICAgICBGaXhlcyB0byBhbGxvdyBtdWx0aXBsZSBGcmFtZVZpZXdzIG9uIFdpbmRvd3MK
CiAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgogICAgICAgICogcGFnZS9GcmFt
ZVZpZXcuY3BwOgogICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXc6OkZyYW1lVmlldyk6IEFkZGVk
IGEgbmV3IGNvbnN0cnVjdG9yIHRoYXQgdGFrZXMgYW4KICAgICAgICBJbnRTaXplIHRvIHNwZWNp
ZnkgdGhlIEZyYW1lVmlldydzIGluaXRpYWwgc2l6ZS4KICAgICAgICAoV2ViQ29yZTo6RnJhbWVW
aWV3OjpzY2hlZHVsZVJlbGF5b3V0KTogQWRkZWQgYW4gYXNzZXJ0aW9uIHRoYXQgb3VyCiAgICAg
ICAgRG9jdW1lbnQgaXMgbm90IGluIHRoZSBwYWdlIGNhY2hlLgogICAgICAgICogcGFnZS9GcmFt
ZVZpZXcuaDoKICAgICAgICAqIHBsYXRmb3JtL2d0ay9XaWRnZXRHdGsuY3BwOgogICAgICAgIChX
ZWJDb3JlOjpXaWRnZXQ6On5XaWRnZXQpOiBBZGQgYSB3YXJtLCBmdXp6eSBBU1NFUlQuCiAgICAg
ICAgKiBwbGF0Zm9ybS9xdC9XaWRnZXRRdC5jcHA6CiAgICAgICAgKFdlYkNvcmU6OldpZGdldDo6
fldpZGdldCk6IERpdHRvLgogICAgICAgICogcmVuZGVyaW5nL1JlbmRlcldpZGdldC5jcHA6CiAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlcldpZGdldDo6c2V0V2lkZ2V0KTogTWFrZSBzdXJlIHRvIHJl
bW92ZSBhbnkgZXhpc3RpbmcKICAgICAgICBXaWRnZXQgZnJvbSB0aGUgV2lkZ2V0IGhpZXJhcmNo
eSBiZWZvcmUgZGVsZXRpbmcgaXQuIE9uZSBpbnN0YW5jZQogICAgICAgIHdoZXJlIHRoaXMgaXMg
bmVlZGVkIGlzIHdoZW4gc2V0V2lkZ2V0IGlzIGNhbGxlZCBkdXJpbmcgRnJhbWVWaWV3CiAgICAg
ICAgY3JlYXRpb24gb24gV2luZG93cy4KCldlYktpdC93aW46CgogICAgICAgIEZpeCBtYW55IGJ1
Z3MgYnkgZ2l2aW5nIFdpbmRvd3Mgb25lIEZyYW1lVmlldyBwZXIgcGFnZSBsb2FkCgogICAgICAg
IEJ1Z3MgaW5jbHVkZToKICAgICAgICAgICAgPHJkYXI6Ly81NjU5MjAwPgogICAgICAgICAgICAg
ICAgV2luZG93cyBiYWNrL2ZvcndhcmQgY2FjaGUgY2F1c2VzIGNyYXNoZXMgaW4gdGhlIGxheW91
dCB0ZXN0cwogICAgICAgICAgICA8cmRhcjovLzU2NTkzNTU+CiAgICAgICAgICAgIDxodHRwOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjgwODA+CiAgICAgICAgICAgICAgICBS
RUdSRVNTSU9OOiBQTFQgYnJva2VuIG9uIFdpbmRvd3MgZHVlIHRvIGJhY2svZm9yd2FyZCBjYWNo
ZQogICAgICAgICAgICA8cmRhcjovLzU2NjM2NTQ+CiAgICAgICAgICAgIDxodHRwOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjYwNz4KICAgICAgICAgICAgICAgIFJhbmRvbSBj
cmFzaGVzIGluIEZyYW1lVmlldzo6c2NoZWR1bGVSZWxheW91dCB3aGlsZSBzdXJmaW5nCiAgICAg
ICAgICAgICAgICBUaGlua2dlZWsKCiAgICAgICAgT24gV2luZG93cyB1bnRpbCBub3cgd2UndmUg
b25seSBoYWQgb25lIEZyYW1lVmlldyBwZXIgRnJhbWUuIE9uY2UgdGhlCiAgICAgICAgYmFjay9m
b3J3YXJkIGNhY2hlIHdhcyB0dXJuZWQgb24gdGhpcyBzdGFydGVkIGNhdXNpbmcgYXNzZXJ0aW9u
cyB0bwogICAgICAgIGZhaWwgYW5kIGNyYXNoZXMgdG8gb2NjdXIgZHVlIHRvIGEgc2luZ2xlIEZy
YW1lVmlldyBiZWluZyBib3RoIGluIHRoZQogICAgICAgIGJhY2svZm9yd2FyZCBjYWNoZSAocG9z
c2libHkgbXVsdGlwbGUgdGltZXMhKSBhbmQgdXNlZCBieSBhIGxpdmUKICAgICAgICBkb2N1bWVu
dC4gV2Ugbm93IGNyZWF0ZSBhIG5ldyBGcmFtZVZpZXcgZm9yIGVhY2ggcGFnZSBsb2FkLCBqdXN0
IGFzCiAgICAgICAgTWFjIGRvZXMuCgogICAgICAgIFRoaXMgaGFzIHRoZSBzaWRlLWVmZmVjdCBv
ZiBwbHVnZ2luZyBzb21lIG9mIHRoZSB3b3JsZCBsZWFrcyBzZWVuIGF0CiAgICAgICAgdGhlIGVu
ZCBvZiB0aGUgUExULgoKICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiAgICAg
ICAgKiBXZWJGcmFtZS5jcHA6CiAgICAgICAgKFdlYkZyYW1lOjppbml0V2l0aFdlYkZyYW1lVmll
dyk6IERvbid0IGNyZWF0ZSB0aGUgRnJhbWVWaWV3IHJpZ2h0CiAgICAgICAgYXdheSAtLSBpdCds
bCBiZSBjcmVhdGVkIHdoZW4gdGhlIGxvYWQgaXMgY29tbWl0dGVkLgogICAgICAgIChXZWJGcmFt
ZTo6dHJhbnNpdGlvblRvQ29tbWl0dGVkRnJvbUNhY2hlZFBhZ2UpOiBNYXRjaCB0aGUgTWFjIGJ5
IG5vCiAgICAgICAgbG9uZ2VyIGNhbGxpbmcgcmVzZXRNdWx0aXBsZUZvcm1TdWJtaXNzaW9uUHJv
dGVjdGlvbiBoZXJlLgogICAgICAgIChXZWJGcmFtZTo6dHJhbnNpdGlvblRvQ29tbWl0dGVkRm9y
TmV3UGFnZSk6IFBvcnRlZCBjb2RlIGZyb20KICAgICAgICAtW1dlYkNvcmVGcmFtZUJyaWRnZQog
ICAgICAgIGNyZWF0ZUZyYW1lVmlld1dpdGhOU1ZpZXc6bWFyZ2luV2lkdGg6bWFyZ2luSGVpZ2h0
Ol0sCiAgICAgICAgLVtXZWJDb3JlRnJhbWVCcmlkZ2UgaW5zdGFsbEluRnJhbWU6XSwgYW5kIG1v
dmVkIGNvZGUgaGVyZSBmcm9tCiAgICAgICAgV2ViRnJhbWU6OmluaXRXaXRoV2ViRnJhbWVWaWV3
IGFuZCBXZWJWaWV3Ojppbml0V2l0aEZyYW1lLiBXZWJDb3JlCiAgICAgICAgdGFrZXMgY2FyZSBv
ZiByZXNldE11bHRpcGxlRm9ybVN1Ym1pc3Npb25Qcm90ZWN0aW9uLCBqdXN0IGxpa2UgaXQgZG9l
cwogICAgICAgIG9uIHRoZSBNYWMuCiAgICAgICAgKiBXZWJWaWV3LmNwcDoKICAgICAgICAoV2Vi
Vmlldzo6aW5pdFdpdGhGcmFtZSk6IE1vdmVkIEZyYW1lVmlldyBpbml0aWFsaXphdGlvbiBjb2Rl
IHRvCiAgICAgICAgV2ViRnJhbWU6OnRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UuCi0t
LQogV2ViQ29yZS9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICB8ICAgMjIgKysrKysrKysrKysr
KysrKysrCiBXZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcCAgICAgICAgIHwgICAxMyArKysrKysr
KysrCiBXZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmggICAgICAgICAgIHwgICAgNyArKysrKwogV2Vi
Q29yZS9wbGF0Zm9ybS9ndGsvV2lkZ2V0R3RrLmNwcCB8ICAgIDEgKwogV2ViQ29yZS9wbGF0Zm9y
bS9xdC9XaWRnZXRRdC5jcHAgICB8ICAgIDEgKwogV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyV2lk
Z2V0LmNwcCB8ICAgIDEgKwogV2ViS2l0L3dpbi9DaGFuZ2VMb2cgICAgICAgICAgICAgICB8ICAg
NDMgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIFdlYktpdC93aW4vV2ViRnJh
bWUuY3BwICAgICAgICAgICAgfCAgIDQ0ICsrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0t
LS0tCiBXZWJLaXQvd2luL1dlYlZpZXcuY3BwICAgICAgICAgICAgIHwgICAgMiAtCiA5IGZpbGVz
IGNoYW5nZWQsIDEyMCBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg
YS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGEyZWVkODIuLjZh
ZDYzMDEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjUgQEAKKzIwMDgtMDEtMTAgIEFkYW0gUm9iZW4gIDxhcm9iZW5AYXBw
bGUuY29tPgorCisgICAgICAgIEZpeGVzIHRvIGFsbG93IG11bHRpcGxlIEZyYW1lVmlld3Mgb24g
V2luZG93cworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogcGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RnJhbWVWaWV3OjpGcmFt
ZVZpZXcpOiBBZGRlZCBhIG5ldyBjb25zdHJ1Y3RvciB0aGF0IHRha2VzIGFuCisgICAgICAgIElu
dFNpemUgdG8gc3BlY2lmeSB0aGUgRnJhbWVWaWV3J3MgaW5pdGlhbCBzaXplLgorICAgICAgICAo
V2ViQ29yZTo6RnJhbWVWaWV3OjpzY2hlZHVsZVJlbGF5b3V0KTogQWRkZWQgYW4gYXNzZXJ0aW9u
IHRoYXQgb3VyCisgICAgICAgIERvY3VtZW50IGlzIG5vdCBpbiB0aGUgcGFnZSBjYWNoZS4KKyAg
ICAgICAgKiBwYWdlL0ZyYW1lVmlldy5oOgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9XaWRnZXRH
dGsuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V2lkZ2V0Ojp+V2lkZ2V0KTogQWRkIGEgd2FybSwg
ZnV6enkgQVNTRVJULgorICAgICAgICAqIHBsYXRmb3JtL3F0L1dpZGdldFF0LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OldpZGdldDo6fldpZGdldCk6IERpdHRvLgorICAgICAgICAqIHJlbmRlcmlu
Zy9SZW5kZXJXaWRnZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyV2lkZ2V0OjpzZXRX
aWRnZXQpOiBNYWtlIHN1cmUgdG8gcmVtb3ZlIGFueSBleGlzdGluZworICAgICAgICBXaWRnZXQg
ZnJvbSB0aGUgV2lkZ2V0IGhpZXJhcmNoeSBiZWZvcmUgZGVsZXRpbmcgaXQuIE9uZSBpbnN0YW5j
ZQorICAgICAgICB3aGVyZSB0aGlzIGlzIG5lZWRlZCBpcyB3aGVuIHNldFdpZGdldCBpcyBjYWxs
ZWQgZHVyaW5nIEZyYW1lVmlldworICAgICAgICBjcmVhdGlvbiBvbiBXaW5kb3dzLgorCiAyMDA3
LTEwLTAxICBBbGxhbiBTYW5kZmVsZCBKZW5zZW4gIDxzYW5kZmVsZEBrZGUub3JnPgogCiAgICAg
ICAgIFJld29ya2VkIGJ5IEVyaWMsIFJldmlld2VkIGJ5IEh5YXR0LgpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9wYWdlL0ZyYW1lVmlldy5jcHAgYi9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAppbmRl
eCA1YjM2YTYyLi44ZGVhN2Y2IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNw
cAorKysgYi9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtMTQ0LDYgKzE0NCwxOCBAQCBG
cmFtZVZpZXc6OkZyYW1lVmlldyhGcmFtZSogZnJhbWUpCiAgICAgc2hvdygpOwogfQogCisjaWYg
IVBMQVRGT1JNKE1BQykKK0ZyYW1lVmlldzo6RnJhbWVWaWV3KEZyYW1lKiBmcmFtZSwgY29uc3Qg
SW50U2l6ZSYgaW5pdGlhbFNpemUpCisgICAgOiBtX3JlZkNvdW50KDEpCisgICAgLCBtX2ZyYW1l
KGZyYW1lKQorICAgICwgZChuZXcgRnJhbWVWaWV3UHJpdmF0ZSh0aGlzKSkKK3sKKyAgICBpbml0
KCk7CisgICAgV2lkZ2V0OjpzZXRGcmFtZUdlb21ldHJ5KEludFJlY3QoeCgpLCB5KCksIGluaXRp
YWxTaXplLndpZHRoKCksIGluaXRpYWxTaXplLmhlaWdodCgpKSk7CisgICAgc2hvdygpOworfQor
I2VuZGlmCisKIEZyYW1lVmlldzo6fkZyYW1lVmlldygpCiB7CiAgICAgaWYgKGQtPnBvc3RMYXlv
dXRUYXNrc1RpbWVyLmlzQWN0aXZlKCkpIHsKQEAgLTY5OSw2ICs3MTEsNyBAQCB2b2lkIEZyYW1l
Vmlldzo6bGF5b3V0VGltZXJGaXJlZChUaW1lcjxGcmFtZVZpZXc+KikKIAogdm9pZCBGcmFtZVZp
ZXc6OnNjaGVkdWxlUmVsYXlvdXQoKQogeworICAgIEFTU0VSVCghbV9mcmFtZS0+ZG9jdW1lbnQo
KSB8fCAhbV9mcmFtZS0+ZG9jdW1lbnQoKS0+aW5QYWdlQ2FjaGUoKSk7CiAgICAgQVNTRVJUKG1f
ZnJhbWUtPnZpZXcoKSA9PSB0aGlzKTsKIAogICAgIGlmIChkLT5sYXlvdXRSb290KSB7CmRpZmYg
LS1naXQgYS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmggYi9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3
LmgKaW5kZXggZGRjMzI4Yi4uNzU3N2IxMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL0ZyYW1l
Vmlldy5oCisrKyBiL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaApAQCAtNTAsNiArNTAsMTMgQEAg
dGVtcGxhdGUgPHR5cGVuYW1lIFQ+IGNsYXNzIFRpbWVyOwogY2xhc3MgRnJhbWVWaWV3IDogcHVi
bGljIFNjcm9sbFZpZXcgewogcHVibGljOgogICAgIEZyYW1lVmlldyhGcmFtZSopOworCisgICAg
Ly8gT24gdGhlIE1hYywgRnJhbWVWaWV3cyBhbHdheXMgZ2V0IHRoZWlyIHNpemUgZnJvbSB0aGUg
dW5kZXJseWluZyBOU1ZpZXcsCisgICAgLy8gc28gcGFzc2luZyBpbiBhIHNpemUgaXMgbm9uc2Vu
c2ljYWwuCisjaWYgIVBMQVRGT1JNKE1BQykKKyAgICBGcmFtZVZpZXcoRnJhbWUqLCBjb25zdCBJ
bnRTaXplJiBpbml0aWFsU2l6ZSk7CisjZW5kaWYKKwogICAgIHZpcnR1YWwgfkZyYW1lVmlldygp
OwogCiAgICAgRnJhbWUqIGZyYW1lKCkgY29uc3QgeyByZXR1cm4gbV9mcmFtZS5nZXQoKTsgfQpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvV2lkZ2V0R3RrLmNwcCBiL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL1dpZGdldEd0ay5jcHAKaW5kZXggYWIyMTk4MS4uYjQ1YTBmYyAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvV2lkZ2V0R3RrLmNwcAorKysgYi9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9XaWRnZXRHdGsuY3BwCkBAIC03OSw2ICs3OSw3IEBAIHZvaWQgV2lkZ2V0Ojpz
ZXRHdGtXaWRnZXQoR3RrV2lkZ2V0KiB3aWRnZXQpCiAKIFdpZGdldDo6fldpZGdldCgpCiB7Cisg
ICAgQVNTRVJUKCFwYXJlbnQoKSk7CiAgICAgZGVsZXRlIGRhdGE7CiB9CiAKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvcGxhdGZvcm0vcXQvV2lkZ2V0UXQuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9xdC9X
aWRnZXRRdC5jcHAKaW5kZXggYWUyN2U1Yi4uMGVjYjJmNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9w
bGF0Zm9ybS9xdC9XaWRnZXRRdC5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9xdC9XaWRnZXRR
dC5jcHAKQEAgLTc5LDYgKzc5LDcgQEAgV2lkZ2V0OjpXaWRnZXQoKQogCiBXaWRnZXQ6On5XaWRn
ZXQoKQogeworICAgIFFfQVNTRVJUKCFwYXJlbnQoKSk7CiAgICAgZGVsZXRlIGRhdGE7CiAgICAg
ZGF0YSA9IDA7CiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJXaWRnZXQu
Y3BwIGIvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyV2lkZ2V0LmNwcAppbmRleCBlYWQwNWMwLi40
NzlkZWM4IDEwMDY0NAotLS0gYS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJXaWRnZXQuY3BwCisr
KyBiL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlcldpZGdldC5jcHAKQEAgLTEyNSw2ICsxMjUsNyBA
QCB2b2lkIFJlbmRlcldpZGdldDo6c2V0V2lkZ2V0KFdpZGdldCogd2lkZ2V0KQogewogICAgIGlm
ICh3aWRnZXQgIT0gbV93aWRnZXQpIHsKICAgICAgICAgaWYgKG1fd2lkZ2V0KSB7CisgICAgICAg
ICAgICBtX3dpZGdldC0+cmVtb3ZlRnJvbVBhcmVudCgpOwogICAgICAgICAgICAgd2lkZ2V0UmVu
ZGVyZXJNYXAoKS5yZW1vdmUobV93aWRnZXQpOwogICAgICAgICAgICAgZGVsZXRlV2lkZ2V0KCk7
CiAgICAgICAgIH0KZGlmZiAtLWdpdCBhL1dlYktpdC93aW4vQ2hhbmdlTG9nIGIvV2ViS2l0L3dp
bi9DaGFuZ2VMb2cKaW5kZXggZjk4OWM2OC4uYjZjYTdkNCAxMDA2NDQKLS0tIGEvV2ViS2l0L3dp
bi9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0NiBAQAor
MjAwOC0wMS0xMCAgQWRhbSBSb2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+CisKKyAgICAgICAgRml4
IG1hbnkgYnVncyBieSBnaXZpbmcgV2luZG93cyBvbmUgRnJhbWVWaWV3IHBlciBwYWdlIGxvYWQK
KyAgICAgICAgCisgICAgICAgIEJ1Z3MgaW5jbHVkZToKKyAgICAgICAgICAgIDxyZGFyOi8vNTY1
OTIwMD4KKyAgICAgICAgICAgICAgICBXaW5kb3dzIGJhY2svZm9yd2FyZCBjYWNoZSBjYXVzZXMg
Y3Jhc2hlcyBpbiB0aGUgbGF5b3V0IHRlc3RzCisgICAgICAgICAgICA8cmRhcjovLzU2NTkzNTU+
CisgICAgICAgICAgICA8aHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY4
MDgwPgorICAgICAgICAgICAgICAgIFJFR1JFU1NJT046IFBMVCBicm9rZW4gb24gV2luZG93cyBk
dWUgdG8gYmFjay9mb3J3YXJkIGNhY2hlCisgICAgICAgICAgICA8cmRhcjovLzU2NjM2NTQ+Cisg
ICAgICAgICAgICA8aHR0cDovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY2MDc+
CisgICAgICAgICAgICAgICAgUmFuZG9tIGNyYXNoZXMgaW4gRnJhbWVWaWV3OjpzY2hlZHVsZVJl
bGF5b3V0IHdoaWxlIHN1cmZpbmcKKyAgICAgICAgICAgICAgICBUaGlua2dlZWsKKworICAgICAg
ICBPbiBXaW5kb3dzIHVudGlsIG5vdyB3ZSd2ZSBvbmx5IGhhZCBvbmUgRnJhbWVWaWV3IHBlciBG
cmFtZS4gT25jZSB0aGUKKyAgICAgICAgYmFjay9mb3J3YXJkIGNhY2hlIHdhcyB0dXJuZWQgb24g
dGhpcyBzdGFydGVkIGNhdXNpbmcgYXNzZXJ0aW9ucyB0bworICAgICAgICBmYWlsIGFuZCBjcmFz
aGVzIHRvIG9jY3VyIGR1ZSB0byBhIHNpbmdsZSBGcmFtZVZpZXcgYmVpbmcgYm90aCBpbiB0aGUK
KyAgICAgICAgYmFjay9mb3J3YXJkIGNhY2hlIChwb3NzaWJseSBtdWx0aXBsZSB0aW1lcyEpIGFu
ZCB1c2VkIGJ5IGEgbGl2ZQorICAgICAgICBkb2N1bWVudC4gV2Ugbm93IGNyZWF0ZSBhIG5ldyBG
cmFtZVZpZXcgZm9yIGVhY2ggcGFnZSBsb2FkLCBqdXN0IGFzCisgICAgICAgIE1hYyBkb2VzLgor
CisgICAgICAgIFRoaXMgaGFzIHRoZSBzaWRlLWVmZmVjdCBvZiBwbHVnZ2luZyBzb21lIG9mIHRo
ZSB3b3JsZCBsZWFrcyBzZWVuIGF0CisgICAgICAgIHRoZSBlbmQgb2YgdGhlIFBMVC4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYkZyYW1lLmNw
cDoKKyAgICAgICAgKFdlYkZyYW1lOjppbml0V2l0aFdlYkZyYW1lVmlldyk6IERvbid0IGNyZWF0
ZSB0aGUgRnJhbWVWaWV3IHJpZ2h0CisgICAgICAgIGF3YXkgLS0gaXQnbGwgYmUgY3JlYXRlZCB3
aGVuIHRoZSBsb2FkIGlzIGNvbW1pdHRlZC4KKyAgICAgICAgKFdlYkZyYW1lOjp0cmFuc2l0aW9u
VG9Db21taXR0ZWRGcm9tQ2FjaGVkUGFnZSk6IE1hdGNoIHRoZSBNYWMgYnkgbm8KKyAgICAgICAg
bG9uZ2VyIGNhbGxpbmcgcmVzZXRNdWx0aXBsZUZvcm1TdWJtaXNzaW9uUHJvdGVjdGlvbiBoZXJl
LgorICAgICAgICAoV2ViRnJhbWU6OnRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UpOiBQ
b3J0ZWQgY29kZSBmcm9tCisgICAgICAgIC1bV2ViQ29yZUZyYW1lQnJpZGdlCisgICAgICAgIGNy
ZWF0ZUZyYW1lVmlld1dpdGhOU1ZpZXc6bWFyZ2luV2lkdGg6bWFyZ2luSGVpZ2h0Ol0sCisgICAg
ICAgIC1bV2ViQ29yZUZyYW1lQnJpZGdlIGluc3RhbGxJbkZyYW1lOl0sIGFuZCBtb3ZlZCBjb2Rl
IGhlcmUgZnJvbQorICAgICAgICBXZWJGcmFtZTo6aW5pdFdpdGhXZWJGcmFtZVZpZXcgYW5kIFdl
YlZpZXc6OmluaXRXaXRoRnJhbWUuIFdlYkNvcmUKKyAgICAgICAgdGFrZXMgY2FyZSBvZiByZXNl
dE11bHRpcGxlRm9ybVN1Ym1pc3Npb25Qcm90ZWN0aW9uLCBqdXN0IGxpa2UgaXQgZG9lcworICAg
ICAgICBvbiB0aGUgTWFjLgorICAgICAgICAqIFdlYlZpZXcuY3BwOgorICAgICAgICAoV2ViVmll
dzo6aW5pdFdpdGhGcmFtZSk6IE1vdmVkIEZyYW1lVmlldyBpbml0aWFsaXphdGlvbiBjb2RlIHRv
CisgICAgICAgIFdlYkZyYW1lOjp0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlLgorCiAy
MDA4LTAxLTA4ICBTdGV2ZSBGYWxrZW5idXJnICA8c2ZhbGtlbkBhcHBsZS5jb20+CiAKICAgICAg
ICAgRml4IGJ1aWxkLgpkaWZmIC0tZ2l0IGEvV2ViS2l0L3dpbi9XZWJGcmFtZS5jcHAgYi9XZWJL
aXQvd2luL1dlYkZyYW1lLmNwcAppbmRleCA5YzY1ZjUyLi42MTE5MjE1IDEwMDY0NAotLS0gYS9X
ZWJLaXQvd2luL1dlYkZyYW1lLmNwcAorKysgYi9XZWJLaXQvd2luL1dlYkZyYW1lLmNwcApAQCAt
MTA2OSwxMyArMTA2OSw2IEBAIHZvaWQgV2ViRnJhbWU6OmluaXRXaXRoV2ViRnJhbWVWaWV3KElX
ZWJGcmFtZVZpZXcqIC8qdmlldyovLCBJV2ViVmlldyogd2ViVmlldywKICAgICB0aGlzLT5BZGRS
ZWYoKTsgLy8gV2UgcmVsZWFzZSB0aGlzIHJlZiBpbiBmcmFtZUxvYWRlckRlc3Ryb3llZCgpCiAg
ICAgRnJhbWUqIGZyYW1lID0gbmV3IEZyYW1lKHBhZ2UsIG93bmVyRWxlbWVudCwgdGhpcyk7CiAg
ICAgZC0+ZnJhbWUgPSBmcmFtZTsKLQotICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gbmV3IEZy
YW1lVmlldyhmcmFtZSk7Ci0KLSAgICBmcmFtZS0+c2V0VmlldyhmcmFtZVZpZXcpOwotICAgIGZy
YW1lVmlldy0+ZGVyZWYoKTsgLy8gRnJhbWVWaWV3cyBhcmUgY3JlYXRlZCB3aXRoIGEgcmVmIGNv
dW50IG9mIDEuIFJlbGVhc2UgdGhpcyByZWYgc2luY2Ugd2UndmUgYXNzaWduZWQgaXQgdG8gZnJh
bWUuCi0KLSAgICBmcmFtZVZpZXctPnNldENvbnRhaW5pbmdXaW5kb3codmlld1dpbmRvdyk7CiB9
CiAKIEZyYW1lKiBXZWJGcmFtZTo6aW1wbCgpCkBAIC0xODM4LDE2ICsxODMxLDQzIEBAIHZvaWQg
V2ViRnJhbWU6OnNhdmVQbGF0Zm9ybURhdGFUb0NhY2hlZFBhZ2UoQ2FjaGVkUGFnZSogY2FjaGVk
UGFnZSkKIAogdm9pZCBXZWJGcmFtZTo6dHJhbnNpdGlvblRvQ29tbWl0dGVkRnJvbUNhY2hlZFBh
Z2UoQ2FjaGVkUGFnZSopCiB7Ci0gICAgdHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSgp
OwogfQogCiB2b2lkIFdlYkZyYW1lOjp0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKCkK
IHsKLSAgICBBU1NFUlQoY29yZSh0aGlzKSk7CisgICAgRnJhbWUqIGZyYW1lID0gY29yZSh0aGlz
KTsKKyAgICBBU1NFUlQoZnJhbWUpOworCisgICAgUGFnZSogcGFnZSA9IGZyYW1lLT5wYWdlKCk7
CisgICAgQVNTRVJUKHBhZ2UpOworCisgICAgYm9vbCBpc01haW5GcmFtZSA9IGZyYW1lID09IHBh
Z2UtPm1haW5GcmFtZSgpOworCisgICAgaWYgKGlzTWFpbkZyYW1lICYmIGZyYW1lLT52aWV3KCkp
CisgICAgICAgIGZyYW1lLT52aWV3KCktPmRldGFjaEZyb21XaW5kb3coKTsKKworICAgIGZyYW1l
LT5zZXRWaWV3KDApOworCisgICAgRnJhbWVWaWV3KiBmcmFtZVZpZXc7CisgICAgaWYgKGlzTWFp
bkZyYW1lKSB7CisgICAgICAgIFJFQ1QgcmVjdDsKKyAgICAgICAgZC0+d2ViVmlldy0+ZnJhbWVS
ZWN0KCZyZWN0KTsKKyAgICAgICAgZnJhbWVWaWV3ID0gbmV3IEZyYW1lVmlldyhmcmFtZSwgSW50
UmVjdChyZWN0KS5zaXplKCkpOworICAgIH0gZWxzZQorICAgICAgICBmcmFtZVZpZXcgPSBuZXcg
RnJhbWVWaWV3KGZyYW1lKTsKKworICAgIGZyYW1lLT5zZXRWaWV3KGZyYW1lVmlldyk7CisgICAg
ZnJhbWVWaWV3LT5kZXJlZigpOyAvLyBGcmFtZVZpZXdzIGFyZSBjcmVhdGVkIHdpdGggYSByZWYg
Y291bnQgb2YgMS4gUmVsZWFzZSB0aGlzIHJlZiBzaW5jZSB3ZSd2ZSBhc3NpZ25lZCBpdCB0byBm
cmFtZS4KKworICAgIEhXTkQgdmlld1dpbmRvdzsKKyAgICBpZiAoU1VDQ0VFREVEKGQtPndlYlZp
ZXctPnZpZXdXaW5kb3cocmVpbnRlcnByZXRfY2FzdDxPTEVfSEFORExFKj4oJnZpZXdXaW5kb3cp
KSkpCisgICAgICAgIGZyYW1lVmlldy0+c2V0Q29udGFpbmluZ1dpbmRvdyh2aWV3V2luZG93KTsK
KworICAgIGlmIChpc01haW5GcmFtZSkKKyAgICAgICAgZnJhbWVWaWV3LT5hdHRhY2hUb1dpbmRv
dygpOwogCi0gICAgLy8gT24gdGhlIG1hYywgdGhpcyBpcyBkb25lIGluIEZyYW1lOjpzZXRWaWV3
LCBidXQgc2luY2Ugd2UgZG9uJ3QgaGF2ZSBzZXBhcmF0ZQotICAgIC8vIGZyYW1lIHZpZXdzLCB3
ZSdsbCBqdXN0IGRvIGl0IGhlcmUgaW5zdGVhZC4KLSAgICBjb3JlKHRoaXMpLT5sb2FkZXIoKS0+
cmVzZXRNdWx0aXBsZUZvcm1TdWJtaXNzaW9uUHJvdGVjdGlvbigpOworICAgIGlmIChmcmFtZS0+
b3duZXJSZW5kZXJlcigpKQorICAgICAgICBmcmFtZS0+b3duZXJSZW5kZXJlcigpLT5zZXRXaWRn
ZXQoZnJhbWVWaWV3KTsKIH0KIAogdm9pZCBXZWJGcmFtZTo6dXBkYXRlR2xvYmFsSGlzdG9yeUZv
clN0YW5kYXJkTG9hZChjb25zdCBLVVJMJiB1cmwpCmRpZmYgLS1naXQgYS9XZWJLaXQvd2luL1dl
YlZpZXcuY3BwIGIvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcAppbmRleCBiMWI3YWI4Li5hZjEwZWU5
IDEwMDY0NAotLS0gYS9XZWJLaXQvd2luL1dlYlZpZXcuY3BwCisrKyBiL1dlYktpdC93aW4vV2Vi
Vmlldy5jcHAKQEAgLTIwNTYsOCArMjA1Niw2IEBAIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUg
V2ViVmlldzo6aW5pdFdpdGhGcmFtZSgKICAgICB3ZWJGcmFtZS0+aW5pdFdpdGhXZWJGcmFtZVZp
ZXcoMCAvKkZJWE1FKi8sIHRoaXMsIG1fcGFnZSwgMCk7CiAgICAgbV9tYWluRnJhbWUgPSB3ZWJG
cmFtZTsKICAgICB3ZWJGcmFtZS0+UmVsZWFzZSgpOyAvLyBUaGUgV2ViRnJhbWUgaXMgb3duZWQg
YnkgdGhlIEZyYW1lLCBzbyByZWxlYXNlIG91ciByZWZlcmVuY2UgdG8gaXQuCi0gICAgbV9wYWdl
LT5tYWluRnJhbWUoKS0+dmlldygpLT5hdHRhY2hUb1dpbmRvdygpOwotICAgIG1fcGFnZS0+bWFp
bkZyYW1lKCktPnZpZXcoKS0+cmVzaXplKGZyYW1lLnJpZ2h0IC0gZnJhbWUubGVmdCwgZnJhbWUu
Ym90dG9tIC0gZnJhbWUudG9wKTsKIAogICAgIG1fcGFnZS0+bWFpbkZyYW1lKCktPnRyZWUoKS0+
c2V0TmFtZShTdHJpbmcoZnJhbWVOYW1lLCBTeXNTdHJpbmdMZW4oZnJhbWVOYW1lKSkpOwogICAg
IG1fcGFnZS0+bWFpbkZyYW1lKCktPmluaXQoKTsKLS0gCjEuNS4zLjQuMTM0Mi5nOGI2YTEKCg==
</data>
<flag name="review"
          id="8025"
          type_id="1"
          status="+"
          setter="hyatt"
    />
          </attachment>
      

    </bug>

</bugzilla>