<?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>6821</bug_id>
          
          <creation_ts>2006-01-25 22:06:39 -0800</creation_ts>
          <short_desc>Fix for 5983 will not always update hover correctly.</short_desc>
          <delta_ts>2019-02-06 09:03:39 -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>DOM</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Maciej Stachowiak">mjs</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>hyatt</cc>
    
    <cc>mitz</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>29978</commentid>
    <comment_count>0</comment_count>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2006-01-25 22:06:39 -0800</bug_when>
    <thetext>The fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=5983 sometimes won&apos;t update properly update hover when the current hover node is removed. In particular, if you remove a node in the normal flow such that a sibling is now positioned under the mouse, the sibling won&apos;t properly get hover. Instead of doing the weird walk up the render tree, it might be better to just setHover(0) and set a 0-delay timer to fire a mouse event at the current mouse position.

Another possibility that would catch all kinds of dhtml-driven hover changes would be to send a fake mouse event at the current mouse position every time we update rendering or lay out or whatever. But this runs the risk of hurting DHTML performance, according to hyatt. We&apos;d need some way to measure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>29979</commentid>
    <comment_count>1</comment_count>
      <attachid>5970</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2006-01-25 22:08:13 -0800</bug_when>
    <thetext>Created attachment 5970
a test case where hover does not update properly

Here&apos;s an example where mouseover does not update properly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>29983</commentid>
    <comment_count>2</comment_count>
      <attachid>5971</attachid>
    <who name="Maciej Stachowiak">mjs</who>
    <bug_when>2006-01-25 22:55:28 -0800</bug_when>
    <thetext>Created attachment 5971
trickier hover test where an ancesor&apos;s hover should invalidate too

Mitz pointed out on IRC that hover state for an ancestor node may need to be explicitly invalidated as well, if the removal of a node cause its ancestor to move out from under the mouse as well. Here&apos;s a test case that demonstrates this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>29988</commentid>
    <comment_count>3</comment_count>
    <who name="">mitz</who>
    <bug_when>2006-01-25 23:26:04 -0800</bug_when>
    <thetext>The trickier test is broken even in TOT (OK stays yellow even after you move the mouse) due to another issue with the fix for bug 5983, namely that it doesn&apos;t account for text nodes (which aren&apos;t hovered even when they are the document&apos;s hovered node).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30282</commentid>
    <comment_count>4</comment_count>
    <who name="">mitz</who>
    <bug_when>2006-01-27 01:29:55 -0800</bug_when>
    <thetext>See also bug 6431</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30633</commentid>
    <comment_count>5</comment_count>
      <attachid>6106</attachid>
    <who name="">mitz</who>
    <bug_when>2006-01-30 10:03:16 -0800</bug_when>
    <thetext>Created attachment 6106
Step 0

Not a fix yet, just moving the code into DocumentImpl, simplifying it (Hyatt said on IRC that using hoverAncestor is unnecessary here) and fixing one aspect of the trickier test, namely the problem with text nodes (so now when you move the mouse, the yellow background changes back to white). I think the next step is to get hoveredNodeDetached() to raise a flag somewhere to eventually cause hover state update.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30647</commentid>
    <comment_count>6</comment_count>
      <attachid>6113</attachid>
    <who name="">mitz</who>
    <bug_when>2006-01-30 12:04:44 -0800</bug_when>
    <thetext>Created attachment 6113
Set a timer to update hover state

I suspect that I&apos;m doing too little when the timer fires, but I&apos;m sure that&apos;s not the only problem with this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30707</commentid>
    <comment_count>7</comment_count>
      <attachid>6113</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-01-30 21:58:32 -0800</bug_when>
    <thetext>Comment on attachment 6113
Set a timer to update hover state

I think Dave said he wanted to review this one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30921</commentid>
    <comment_count>8</comment_count>
      <attachid>6113</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2006-01-31 23:48:28 -0800</bug_when>
    <thetext>Comment on attachment 6113
Set a timer to update hover state

(1) You need to cancel the timer if the FrameView goes away.

(2) You need to cancel the timer if a mouse move comes in before the timer fires.

(3) Doesn&apos;t :active have all of the same issues as :hover?  It seems like the exact same bugs apply to :active.

This does seem like the right approach.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30978</commentid>
    <comment_count>9</comment_count>
    <who name="Trey Matteson">trey</who>
    <bug_when>2006-02-01 09:32:14 -0800</bug_when>
    <thetext>I bet you also need to cancel the timer if the app loses active status or the window loses focus.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30997</commentid>
    <comment_count>10</comment_count>
    <who name="">mitz</who>
    <bug_when>2006-02-01 13:50:48 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; I bet you also need to cancel the timer if the app loses active status or the
&gt; window loses focus.

In WebKit, hover state isn&apos;t reset when either of these happen, so even in the unlikely event that a deactivate event comes between setting the 0-delay timer and the timer firing, I don&apos;t think it&apos;s going to cause any problem.

The other thing I looked at is what happens if the window/app is inactive to begin with when hoveredNodeDetached gets called. Firefox&apos;s inactive app behavior is the same as Safari&apos;s inactive window/app behavior, which is to freeze the mouse where it was. Setting the timer when inactive (and acting upon it when it fires) is just what&apos;s needed to match Firefox&apos;s behavior for this bug&apos;s testcases too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>30998</commentid>
    <comment_count>11</comment_count>
      <attachid>6197</attachid>
    <who name="">mitz</who>
    <bug_when>2006-02-01 14:03:48 -0800</bug_when>
    <thetext>Created attachment 6197
Updated patch

(In reply to comment #8)
&gt; (1) You need to cancel the timer if the FrameView goes away.

Done. How come the relayout timer doesn&apos;t need to be canceled there?

&gt; (2) You need to cancel the timer if a mouse move comes in before the timer
&gt; fires.

Done.

&gt; (3) Doesn&apos;t :active have all of the same issues as :hover?  It seems like the
&gt; exact same bugs apply to :active.

It has some of the same issues (the bug 5983 ones). I added code to trim the rendererless end of the active chain and reset m_active and m_inActiveChain, but since the active chain is locked, I think there&apos;s no need to post a mouse event.

ChangeLog entry and test still missing from this patch, so r- anyway.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31019</commentid>
    <comment_count>12</comment_count>
      <attachid>6197</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-02-01 20:45:25 -0800</bug_when>
    <thetext>Comment on attachment 6197
Updated patch

Patch will have to be revised, since there&apos;s no such thing as startTimer any more; I just redid timers.

Also, for that text node stuff, maybe we need to make NodeImpl::ancestorElement public so we could say something more like node-&gt;ancestorElement() != m_activeNode -- I&apos;m thinking that if it&apos;s never a text node it should be m_activeElement rather than m_activeNode, not that we have to fix that to fix this bug.

Doing review- because of the timer thing. Sorry about that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31101</commentid>
    <comment_count>13</comment_count>
      <attachid>6209</attachid>
    <who name="">mitz</who>
    <bug_when>2006-02-02 13:17:40 -0800</bug_when>
    <thetext>Created attachment 6209
Updated with new timers</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31103</commentid>
    <comment_count>14</comment_count>
      <attachid>6210</attachid>
    <who name="">mitz</who>
    <bug_when>2006-02-02 13:28:36 -0800</bug_when>
    <thetext>Created attachment 6210
Additional cases

What about these two cases? In the first one, the div jumps but stays red until the mouse is moved. In the second one, it alternates places and colors only as long as you&apos;re moving the mouse. In Firefox, the first div turns yellow immediately after it moves, and the second div keeps moving from side to side as long as the mouse is inside its original position.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31587</commentid>
    <comment_count>15</comment_count>
      <attachid>6292</attachid>
    <who name="">mitz</who>
    <bug_when>2006-02-06 10:18:58 -0800</bug_when>
    <thetext>Created attachment 6292
Updated patch including ChangeLog entry and manual test

See also comment #11.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31926</commentid>
    <comment_count>16</comment_count>
      <attachid>6292</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2006-02-08 23:20:38 -0800</bug_when>
    <thetext>Comment on attachment 6292
Updated patch including ChangeLog entry and manual test

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1503010</commentid>
    <comment_count>17</comment_count>
    <who name="Lucas Forschler">lforschler</who>
    <bug_when>2019-02-06 09:03:39 -0800</bug_when>
    <thetext>Mass moving XML DOM bugs to the &quot;DOM&quot; Component.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>5970</attachid>
            <date>2006-01-25 22:08:13 -0800</date>
            <delta_ts>2006-01-25 22:08:13 -0800</delta_ts>
            <desc>a test case where hover does not update properly</desc>
            <filename>hover-test.html</filename>
            <type>text/html</type>
            <size>405</size>
            <attacher name="Maciej Stachowiak">mjs</attacher>
            
              <data encoding="base64">PGh0bWw+CjxoZWFkPgo8c3R5bGU+CmI6aG92ZXIgeyBiYWNrZ3JvdW5kOiByZWQ7IH0KaTpob3Zl
ciB7IGJhY2tncm91bmQ6IGdyZWVuOyB9Cjwvc3R5bGU+CjxzY3JpcHQ+CgpmdW5jdGlvbiByZW1v
dmVCKCkKewogICAgdmFyIGIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYiIpOwogICAgYi5w
YXJlbnROb2RlLnJlbW92ZUNoaWxkKGIpOwp9CgpmdW5jdGlvbiByZW1vdmVCU29vbigpCnsKICAg
IHdpbmRvdy5zZXRUaW1lb3V0KCJyZW1vdmVCKCkiLCA1MDApOwp9Cgo8L3NjcmlwdD4KPC9oZWFk
Pgo8Ym9keT4KPGIgaWQ9ImIiIG9ubW91c2VvdmVyPSJyZW1vdmVCU29vbigpIj5Ib3ZlciBoZXJl
LCB3YWl0LCA8L2I+PGk+IGFuZCBzZWUgd2hhdCBoYXBwZW5zIGhlcmU8L2k+CjwvYm9keT4KPC9o
dG1sPgoK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>5971</attachid>
            <date>2006-01-25 22:55:28 -0800</date>
            <delta_ts>2006-01-25 22:55:28 -0800</delta_ts>
            <desc>trickier hover test where an ancesor&apos;s hover should invalidate too</desc>
            <filename>hover-test-2.html</filename>
            <type>text/html</type>
            <size>448</size>
            <attacher name="Maciej Stachowiak">mjs</attacher>
            
              <data encoding="base64">PGh0bWw+CjxoZWFkPgo8c3R5bGU+CnU6aG92ZXIgeyBiYWNrZ3JvdW5kOiB5ZWxsb3c7IH0KYjpo
b3ZlciB7IGJhY2tncm91bmQ6IHJlZDsgfQppOmhvdmVyIHsgYmFja2dyb3VuZDogZ3JlZW47IH0K
PC9zdHlsZT4KPHNjcmlwdD4KCmZ1bmN0aW9uIHJlbW92ZUIoKQp7CiAgICB2YXIgYiA9IGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJiIik7CiAgICBiLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYik7
Cn0KCmZ1bmN0aW9uIHJlbW92ZUJTb29uKCkKewogICAgd2luZG93LnNldFRpbWVvdXQoInJlbW92
ZUIoKSIsIDUwMCk7Cn0KCjwvc2NyaXB0Pgo8L2hlYWQ+Cjxib2R5Pgo8dT5PSywgPGIgaWQ9ImIi
IG9ubW91c2VvdmVyPSJyZW1vdmVCU29vbigpIj5ob3ZlciBoZXJlLCB3YWl0LCA8L2I+PC91Pjxp
PiBhbmQgc2VlIHdoYXQgaGFwcGVucyBoZXJlPC9pPgo8L2JvZHk+CjwvaHRtbD4KCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>6106</attachid>
            <date>2006-01-30 10:03:16 -0800</date>
            <delta_ts>2006-01-30 12:04:44 -0800</delta_ts>
            <desc>Step 0</desc>
            <filename>6821_r0.patch</filename>
            <type>text/plain</type>
            <size>2217</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUva2h0bWwveG1sL0RvY3VtZW50SW1wbC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9raHRtbC94bWwvRG9jdW1lbnRJbXBsLmNwcAkocmV2aXNpb24gMTI0NzYpCisrKyBX
ZWJDb3JlL2todG1sL3htbC9Eb2N1bWVudEltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xOTc1
LDcgKzE5NzUsMTYgQEAKICAgICAgICAgbV9hY3RpdmVOb2RlID0gbmV3QWN0aXZlTm9kZTsKIH0K
IAordm9pZCBEb2N1bWVudEltcGw6OmhvdmVyZWROb2RlRGV0YWNoZWQoTm9kZUltcGwqIG5vZGUp
Cit7CisgICAgaWYgKCFtX2hvdmVyTm9kZSB8fCAobm9kZSAhPSBtX2hvdmVyTm9kZSAmJiAoIW1f
aG92ZXJOb2RlLT5pc1RleHROb2RlKCkgfHwgbm9kZSAhPSBtX2hvdmVyTm9kZS0+cGFyZW50KCkp
KSkKKyAgICAgICAgcmV0dXJuOwogCisgICAgbV9ob3Zlck5vZGUgPSBub2RlLT5wYXJlbnQoKTsK
KyAgICB3aGlsZSAobV9ob3Zlck5vZGUgJiYgIW1faG92ZXJOb2RlLT5yZW5kZXJlcigpKQorICAg
ICAgICBtX2hvdmVyTm9kZSA9IG1faG92ZXJOb2RlLT5wYXJlbnQoKTsKK30KKwogYm9vbCBEb2N1
bWVudEltcGw6OnJlbGlucXVpc2hlc0VkaXRpbmdGb2N1cyhOb2RlSW1wbCAqbm9kZSkKIHsKICAg
ICBhc3NlcnQobm9kZSk7CkluZGV4OiBXZWJDb3JlL2todG1sL3htbC9Eb2N1bWVudEltcGwuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL2todG1sL3htbC9Eb2N1bWVudEltcGwuaAkocmV2aXNpb24g
MTI0NzYpCisrKyBXZWJDb3JlL2todG1sL3htbC9Eb2N1bWVudEltcGwuaAkod29ya2luZyBjb3B5
KQpAQCAtMzc1LDYgKzM3NSw3IEBACiAKICAgICBOb2RlSW1wbCAqaG92ZXJOb2RlKCkgY29uc3Qg
eyByZXR1cm4gbV9ob3Zlck5vZGUuZ2V0KCk7IH0KICAgICB2b2lkIHNldEhvdmVyTm9kZShOb2Rl
SW1wbCAqbmV3SG92ZXJOb2RlKTsKKyAgICB2b2lkIGhvdmVyZWROb2RlRGV0YWNoZWQoTm9kZUlt
cGwqKTsKICAgICAKICAgICBOb2RlSW1wbCAqYWN0aXZlTm9kZSgpIGNvbnN0IHsgcmV0dXJuIG1f
YWN0aXZlTm9kZS5nZXQoKTsgfQogICAgIHZvaWQgc2V0QWN0aXZlTm9kZShOb2RlSW1wbCAqbmV3
QWN0aXZlTm9kZSk7CkluZGV4OiBXZWJDb3JlL2todG1sL3htbC9Ob2RlSW1wbC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9raHRtbC94bWwvTm9kZUltcGwuY3BwCShyZXZpc2lvbiAxMjQ3NikK
KysrIFdlYkNvcmUva2h0bWwveG1sL05vZGVJbXBsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTE4
MywyMyArMTE4MywxNiBAQAogICAgIG1faW5EZXRhY2ggPSB0cnVlOwogLy8gICAgYXNzZXJ0KG1f
YXR0YWNoZWQpOwogCi0gICAgRG9jdW1lbnRJbXBsKiBkb2MgPSBnZXREb2N1bWVudCgpOwotICAg
IGlmIChyZW5kZXJlcigpKSB7Ci0gICAgICAgIGlmIChtX2hvdmVyZWQgJiYgZG9jLT5ob3Zlck5v
ZGUoKSA9PSB0aGlzKSB7Ci0gICAgICAgICAgICBOb2RlSW1wbCogZSA9IHRoaXM7Ci0gICAgICAg
ICAgICBSZW5kZXJPYmplY3QqIG8gPSByZW5kZXJlcigpOwotICAgICAgICAgICAgd2hpbGUgKG8g
JiYgKCFlIHx8IGUgPT0gdGhpcykpIHsKLSAgICAgICAgICAgICAgICBvID0gby0+aG92ZXJBbmNl
c3RvcigpOwotICAgICAgICAgICAgICAgIGUgPSBvID8gby0+ZWxlbWVudCgpIDogMDsKLSAgICAg
ICAgICAgIH0KLSAgICAgICAgICAgIGRvYy0+c2V0SG92ZXJOb2RlKGUpOwotICAgICAgICB9Cisg
ICAgaWYgKHJlbmRlcmVyKCkpCiAgICAgICAgIHJlbmRlcmVyKCktPmRlc3Ryb3koKTsKLSAgICB9
CiAgICAgc2V0UmVuZGVyZXIoMCk7CiAKLSAgICBpZiAoZG9jKQorICAgIERvY3VtZW50SW1wbCog
ZG9jID0gZ2V0RG9jdW1lbnQoKTsKKyAgICBpZiAoZG9jKSB7CisgICAgICAgIGlmIChtX2hvdmVy
ZWQpCisgICAgICAgICAgICBkb2MtPmhvdmVyZWROb2RlRGV0YWNoZWQodGhpcyk7CiAgICAgICAg
IGRvYy0+aW5jRE9NVHJlZVZlcnNpb24oKTsKKyAgICB9CiAgICAgbV9ob3ZlcmVkID0gZmFsc2U7
CiAgICAgbV9hdHRhY2hlZCA9IGZhbHNlOwogICAgIG1faW5EZXRhY2ggPSBmYWxzZTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>6113</attachid>
            <date>2006-01-30 12:04:44 -0800</date>
            <delta_ts>2006-02-01 14:03:48 -0800</delta_ts>
            <desc>Set a timer to update hover state</desc>
            <filename>6821_r1.patch</filename>
            <type>text/plain</type>
            <size>4548</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUva2h0bWwveG1sL0RvY3VtZW50SW1wbC5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9raHRtbC94bWwvRG9jdW1lbnRJbXBsLmNwcAkocmV2aXNpb24gMTI0NzYpCisrKyBX
ZWJDb3JlL2todG1sL3htbC9Eb2N1bWVudEltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xOTc1
LDcgKzE5NzUsMTggQEAKICAgICAgICAgbV9hY3RpdmVOb2RlID0gbmV3QWN0aXZlTm9kZTsKIH0K
IAordm9pZCBEb2N1bWVudEltcGw6OmhvdmVyZWROb2RlRGV0YWNoZWQoTm9kZUltcGwqIG5vZGUp
Cit7CisgICAgaWYgKCFtX2hvdmVyTm9kZSB8fCAobm9kZSAhPSBtX2hvdmVyTm9kZSAmJiAoIW1f
aG92ZXJOb2RlLT5pc1RleHROb2RlKCkgfHwgbm9kZSAhPSBtX2hvdmVyTm9kZS0+cGFyZW50KCkp
KSkKKyAgICAgICAgcmV0dXJuOwogCisgICAgbV9ob3Zlck5vZGUgPSBub2RlLT5wYXJlbnQoKTsK
KyAgICB3aGlsZSAobV9ob3Zlck5vZGUgJiYgIW1faG92ZXJOb2RlLT5yZW5kZXJlcigpKQorICAg
ICAgICBtX2hvdmVyTm9kZSA9IG1faG92ZXJOb2RlLT5wYXJlbnQoKTsKKyAgICBpZiAodmlldygp
KQorICAgICAgICB2aWV3KCktPnNjaGVkdWxlSG92ZXJTdGF0ZVVwZGF0ZSgpOworfQorCiBib29s
IERvY3VtZW50SW1wbDo6cmVsaW5xdWlzaGVzRWRpdGluZ0ZvY3VzKE5vZGVJbXBsICpub2RlKQog
ewogICAgIGFzc2VydChub2RlKTsKSW5kZXg6IFdlYkNvcmUva2h0bWwveG1sL0RvY3VtZW50SW1w
bC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUva2h0bWwveG1sL0RvY3VtZW50SW1wbC5oCShyZXZp
c2lvbiAxMjQ3NikKKysrIFdlYkNvcmUva2h0bWwveG1sL0RvY3VtZW50SW1wbC5oCSh3b3JraW5n
IGNvcHkpCkBAIC0zNzUsNiArMzc1LDcgQEAKIAogICAgIE5vZGVJbXBsICpob3Zlck5vZGUoKSBj
b25zdCB7IHJldHVybiBtX2hvdmVyTm9kZS5nZXQoKTsgfQogICAgIHZvaWQgc2V0SG92ZXJOb2Rl
KE5vZGVJbXBsICpuZXdIb3Zlck5vZGUpOworICAgIHZvaWQgaG92ZXJlZE5vZGVEZXRhY2hlZChO
b2RlSW1wbCopOwogICAgIAogICAgIE5vZGVJbXBsICphY3RpdmVOb2RlKCkgY29uc3QgeyByZXR1
cm4gbV9hY3RpdmVOb2RlLmdldCgpOyB9CiAgICAgdm9pZCBzZXRBY3RpdmVOb2RlKE5vZGVJbXBs
ICpuZXdBY3RpdmVOb2RlKTsKSW5kZXg6IFdlYkNvcmUva2h0bWwveG1sL05vZGVJbXBsLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL2todG1sL3htbC9Ob2RlSW1wbC5jcHAJKHJldmlzaW9uIDEy
NDc2KQorKysgV2ViQ29yZS9raHRtbC94bWwvTm9kZUltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0xMTgzLDIzICsxMTgzLDE2IEBACiAgICAgbV9pbkRldGFjaCA9IHRydWU7CiAvLyAgICBhc3Nl
cnQobV9hdHRhY2hlZCk7CiAKLSAgICBEb2N1bWVudEltcGwqIGRvYyA9IGdldERvY3VtZW50KCk7
Ci0gICAgaWYgKHJlbmRlcmVyKCkpIHsKLSAgICAgICAgaWYgKG1faG92ZXJlZCAmJiBkb2MtPmhv
dmVyTm9kZSgpID09IHRoaXMpIHsKLSAgICAgICAgICAgIE5vZGVJbXBsKiBlID0gdGhpczsKLSAg
ICAgICAgICAgIFJlbmRlck9iamVjdCogbyA9IHJlbmRlcmVyKCk7Ci0gICAgICAgICAgICB3aGls
ZSAobyAmJiAoIWUgfHwgZSA9PSB0aGlzKSkgewotICAgICAgICAgICAgICAgIG8gPSBvLT5ob3Zl
ckFuY2VzdG9yKCk7Ci0gICAgICAgICAgICAgICAgZSA9IG8gPyBvLT5lbGVtZW50KCkgOiAwOwot
ICAgICAgICAgICAgfQotICAgICAgICAgICAgZG9jLT5zZXRIb3Zlck5vZGUoZSk7Ci0gICAgICAg
IH0KKyAgICBpZiAocmVuZGVyZXIoKSkKICAgICAgICAgcmVuZGVyZXIoKS0+ZGVzdHJveSgpOwot
ICAgIH0KICAgICBzZXRSZW5kZXJlcigwKTsKIAotICAgIGlmIChkb2MpCisgICAgRG9jdW1lbnRJ
bXBsKiBkb2MgPSBnZXREb2N1bWVudCgpOworICAgIGlmIChkb2MpIHsKKyAgICAgICAgaWYgKG1f
aG92ZXJlZCkKKyAgICAgICAgICAgIGRvYy0+aG92ZXJlZE5vZGVEZXRhY2hlZCh0aGlzKTsKICAg
ICAgICAgZG9jLT5pbmNET01UcmVlVmVyc2lvbigpOworICAgIH0KICAgICBtX2hvdmVyZWQgPSBm
YWxzZTsKICAgICBtX2F0dGFjaGVkID0gZmFsc2U7CiAgICAgbV9pbkRldGFjaCA9IGZhbHNlOwpJ
bmRleDogV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9w
YWdlL0ZyYW1lVmlldy5jcHAJKHJldmlzaW9uIDEyNDc2KQorKysgV2ViQ29yZS9wYWdlL0ZyYW1l
Vmlldy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTczLDYgKzczLDcgQEAKICAgICAgICAgdm1vZGUg
PSBobW9kZSA9IFFTY3JvbGxWaWV3OjpBdXRvOwogICAgICAgICBmaXJzdExheW91dCA9IHRydWU7
CiAgICAgICAgIG5lZWRUb0luaXRTY3JvbGxCYXJzID0gdHJ1ZTsKKyAgICAgICAgaG92ZXJUaW1l
cklkID0gMDsKICAgICB9CiAgICAgfkZyYW1lVmlld1ByaXZhdGUoKQogICAgIHsKQEAgLTExMCw2
ICsxMTEsNyBAQAogICAgICAgICBsYXlvdXRTdXBwcmVzc2VkID0gZmFsc2U7CiAgICAgICAgIGxh
eW91dENvdW50ID0gMDsKICAgICAgICAgZmlyc3RMYXlvdXQgPSB0cnVlOworICAgICAgICBob3Zl
clRpbWVySWQgPSAwOwogICAgICAgICBpZiAocmVwYWludFJlY3RzKQogICAgICAgICAgICAgcmVw
YWludFJlY3RzLT5jbGVhcigpOwogICAgIH0KQEAgLTE0NSw2ICsxNDcsOCBAQAogICAgIGJvb2wg
bW91c2VQcmVzc2VkOwogICAgIGJvb2wgaXNUcmFuc3BhcmVudDsKICAgICAKKyAgICBpbnQgaG92
ZXJUaW1lcklkOworICAgIAogICAgIC8vIFVzZWQgYnkgb2JqZWN0cyBkdXJpbmcgbGF5b3V0IHRv
IGNvbW11bmljYXRlIHJlcGFpbnRzIHRoYXQgbmVlZCB0byB0YWtlIHBsYWNlIG9ubHkKICAgICAv
LyBhZnRlciBhbGwgbGF5b3V0IGhhcyBiZWVuIGNvbXBsZXRlZC4KICAgICBRUHRyTGlzdDxSZW5k
ZXJPYmplY3Q6OlJlcGFpbnRJbmZvPiogcmVwYWludFJlY3RzOwpAQCAtMTE1MiwxMiArMTE1Niwx
OSBAQAogCiB2b2lkIEZyYW1lVmlldzo6dGltZXJFdmVudCAoIFFUaW1lckV2ZW50ICplICkKIHsK
LSAgICBpZiAoZS0+dGltZXJJZCgpPT1kLT5sYXlvdXRUaW1lcklkKSB7CisgICAgaW50IHRpbWVy
SWQgPSBlLT50aW1lcklkKCk7CisKKyAgICBpZiAodGltZXJJZCA9PSBkLT5sYXlvdXRUaW1lcklk
KSB7CiAjaWZkZWYgSU5TVFJVTUVOVF9MQVlPVVRfU0NIRURVTElORwogICAgICAgICBpZiAobV9m
cmFtZS0+ZG9jdW1lbnQoKSAmJiAhbV9mcmFtZS0+ZG9jdW1lbnQoKS0+b3duZXJFbGVtZW50KCkp
CiAgICAgICAgICAgICBwcmludGYoIkxheW91dCB0aW1lciBmaXJlZCBhdCAlZFxuIiwgbV9mcmFt
ZS0+ZG9jdW1lbnQoKS0+ZWxhcHNlZFRpbWUoKSk7CiAjZW5kaWYKICAgICAgICAgbGF5b3V0KCk7
CisgICAgfSBlbHNlIGlmICh0aW1lcklkID09IGQtPmhvdmVyVGltZXJJZCkgeworICAgICAgICBr
aWxsVGltZXIoZC0+aG92ZXJUaW1lcklkKTsKKyAgICAgICAgZC0+aG92ZXJUaW1lcklkID0gMDsK
KyAgICAgICAgTm9kZUltcGw6Ok1vdXNlRXZlbnQgbWV2KGZhbHNlLCBOb2RlSW1wbDo6TW91c2VN
b3ZlKTsKKyAgICAgICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+cHJlcGFyZU1vdXNlRXZlbnQoZmFs
c2UsIGZhbHNlLCBkLT5wcmV2TW91c2VYLCBkLT5wcmV2TW91c2VZLCAmbWV2ICk7CiAgICAgfQog
fQogCkBAIC0xMjE5LDMgKzEyMzAsOSBAQAogewogICAgIGQtPmlzVHJhbnNwYXJlbnQgPSBpc1Ry
YW5zcGFyZW50OwogfQorCit2b2lkIEZyYW1lVmlldzo6c2NoZWR1bGVIb3ZlclN0YXRlVXBkYXRl
KCkKK3sKKyAgICBpZiAoIWQtPmhvdmVyVGltZXJJZCkKKyAgICAgICAgZC0+aG92ZXJUaW1lcklk
ID0gc3RhcnRUaW1lcigwKTsKK30KSW5kZXg6IFdlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmgJKHJldmlzaW9uIDEyNDc2KQorKysg
V2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMDIsNiArMjAyLDgg
QEAKICAgICBib29sIGhhdmVEZWxheWVkTGF5b3V0U2NoZWR1bGVkKCk7CiAgICAgYm9vbCBsYXlv
dXRQZW5kaW5nKCk7CiAKKyAgICB2b2lkIHNjaGVkdWxlSG92ZXJTdGF0ZVVwZGF0ZSgpOworCiAg
ICAgUVdpZGdldCAqdG9wTGV2ZWxXaWRnZXQoKSBjb25zdDsKICAgICBJbnRQb2ludCBtYXBUb0ds
b2JhbChjb25zdCBJbnRQb2ludCAmKSBjb25zdDsKICAgICAvLyBtYXBzICJ2aWV3cG9ydCIgKGFj
dHVhbGx5IENvY29hIHdpbmRvdyBjb29yZHMpIHRvIHNjcmVlbiBjb29yZHMK
</data>
<flag name="review"
          id="1470"
          type_id="1"
          status="-"
          setter="hyatt"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>6197</attachid>
            <date>2006-02-01 14:03:48 -0800</date>
            <delta_ts>2006-02-02 13:17:40 -0800</delta_ts>
            <desc>Updated patch</desc>
            <filename>6821_r2.patch</filename>
            <type>text/plain</type>
            <size>5814</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUva2h0bWwveG1sL0RvY3VtZW50SW1wbC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUva2h0bWwveG1sL0RvY3VtZW50SW1wbC5oCShyZXZpc2lvbiAxMjUxMykKKysrIFdlYkNv
cmUva2h0bWwveG1sL0RvY3VtZW50SW1wbC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNzUsNiArMzc1
LDggQEAgcHVibGljOgogCiAgICAgTm9kZUltcGwgKmhvdmVyTm9kZSgpIGNvbnN0IHsgcmV0dXJu
IG1faG92ZXJOb2RlLmdldCgpOyB9CiAgICAgdm9pZCBzZXRIb3Zlck5vZGUoTm9kZUltcGwgKm5l
d0hvdmVyTm9kZSk7CisgICAgdm9pZCBob3ZlcmVkTm9kZURldGFjaGVkKE5vZGVJbXBsKik7Cisg
ICAgdm9pZCBhY3RpdmVDaGFpbk5vZGVEZXRhY2hlZChOb2RlSW1wbCopOwogICAgIAogICAgIE5v
ZGVJbXBsICphY3RpdmVOb2RlKCkgY29uc3QgeyByZXR1cm4gbV9hY3RpdmVOb2RlLmdldCgpOyB9
CiAgICAgdm9pZCBzZXRBY3RpdmVOb2RlKE5vZGVJbXBsICpuZXdBY3RpdmVOb2RlKTsKSW5kZXg6
IFdlYkNvcmUva2h0bWwveG1sL0RvY3VtZW50SW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9raHRtbC94bWwvRG9jdW1lbnRJbXBsLmNwcAkocmV2aXNpb24gMTI1MTMpCisrKyBXZWJDb3Jl
L2todG1sL3htbC9Eb2N1bWVudEltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xOTc1LDYgKzE5
NzUsMjcgQEAgdm9pZCBEb2N1bWVudEltcGw6OnNldEFjdGl2ZU5vZGUoTm9kZUltcAogICAgICAg
ICBtX2FjdGl2ZU5vZGUgPSBuZXdBY3RpdmVOb2RlOwogfQogCit2b2lkIERvY3VtZW50SW1wbDo6
aG92ZXJlZE5vZGVEZXRhY2hlZChOb2RlSW1wbCogbm9kZSkKK3sKKyAgICBpZiAoIW1faG92ZXJO
b2RlIHx8IChub2RlICE9IG1faG92ZXJOb2RlICYmICghbV9ob3Zlck5vZGUtPmlzVGV4dE5vZGUo
KSB8fCBub2RlICE9IG1faG92ZXJOb2RlLT5wYXJlbnQoKSkpKQorICAgICAgICByZXR1cm47CisK
KyAgICBtX2hvdmVyTm9kZSA9IG5vZGUtPnBhcmVudCgpOworICAgIHdoaWxlIChtX2hvdmVyTm9k
ZSAmJiAhbV9ob3Zlck5vZGUtPnJlbmRlcmVyKCkpCisgICAgICAgIG1faG92ZXJOb2RlID0gbV9o
b3Zlck5vZGUtPnBhcmVudCgpOworICAgIGlmICh2aWV3KCkpCisgICAgICAgIHZpZXcoKS0+c2No
ZWR1bGVIb3ZlclN0YXRlVXBkYXRlKCk7Cit9CisKK3ZvaWQgRG9jdW1lbnRJbXBsOjphY3RpdmVD
aGFpbk5vZGVEZXRhY2hlZChOb2RlSW1wbCogbm9kZSkKK3sKKyAgICBpZiAoIW1fYWN0aXZlTm9k
ZSB8fCAobm9kZSAhPSBtX2FjdGl2ZU5vZGUgJiYgKCFtX2FjdGl2ZU5vZGUtPmlzVGV4dE5vZGUo
KSB8fCBub2RlICE9IG1fYWN0aXZlTm9kZS0+cGFyZW50KCkpKSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgbV9hY3RpdmVOb2RlID0gbm9kZS0+cGFyZW50KCk7CisgICAgd2hpbGUgKG1fYWN0aXZl
Tm9kZSAmJiAhbV9hY3RpdmVOb2RlLT5yZW5kZXJlcigpKQorICAgICAgICBtX2FjdGl2ZU5vZGUg
PSBtX2FjdGl2ZU5vZGUtPnBhcmVudCgpOworfQogCiBib29sIERvY3VtZW50SW1wbDo6cmVsaW5x
dWlzaGVzRWRpdGluZ0ZvY3VzKE5vZGVJbXBsICpub2RlKQogewpJbmRleDogV2ViQ29yZS9raHRt
bC94bWwvTm9kZUltcGwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUva2h0bWwveG1sL05vZGVJ
bXBsLmNwcAkocmV2aXNpb24gMTI1MTMpCisrKyBXZWJDb3JlL2todG1sL3htbC9Ob2RlSW1wbC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTExODMsMjQgKzExODMsMjEgQEAgdm9pZCBOb2RlSW1wbDo6
ZGV0YWNoKCkKICAgICBtX2luRGV0YWNoID0gdHJ1ZTsKIC8vICAgIGFzc2VydChtX2F0dGFjaGVk
KTsKIAotICAgIERvY3VtZW50SW1wbCogZG9jID0gZ2V0RG9jdW1lbnQoKTsKLSAgICBpZiAocmVu
ZGVyZXIoKSkgewotICAgICAgICBpZiAobV9ob3ZlcmVkICYmIGRvYy0+aG92ZXJOb2RlKCkgPT0g
dGhpcykgewotICAgICAgICAgICAgTm9kZUltcGwqIGUgPSB0aGlzOwotICAgICAgICAgICAgUmVu
ZGVyT2JqZWN0KiBvID0gcmVuZGVyZXIoKTsKLSAgICAgICAgICAgIHdoaWxlIChvICYmICghZSB8
fCBlID09IHRoaXMpKSB7Ci0gICAgICAgICAgICAgICAgbyA9IG8tPmhvdmVyQW5jZXN0b3IoKTsK
LSAgICAgICAgICAgICAgICBlID0gbyA/IG8tPmVsZW1lbnQoKSA6IDA7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgICAgICBkb2MtPnNldEhvdmVyTm9kZShlKTsKLSAgICAgICAgfQorICAgIGlmIChy
ZW5kZXJlcigpKQogICAgICAgICByZW5kZXJlcigpLT5kZXN0cm95KCk7Ci0gICAgfQogICAgIHNl
dFJlbmRlcmVyKDApOwogCi0gICAgaWYgKGRvYykKKyAgICBEb2N1bWVudEltcGwqIGRvYyA9IGdl
dERvY3VtZW50KCk7CisgICAgaWYgKGRvYykgeworICAgICAgICBpZiAobV9ob3ZlcmVkKQorICAg
ICAgICAgICAgZG9jLT5ob3ZlcmVkTm9kZURldGFjaGVkKHRoaXMpOworICAgICAgICBpZiAobV9p
bkFjdGl2ZUNoYWluKQorICAgICAgICAgICAgZG9jLT5hY3RpdmVDaGFpbk5vZGVEZXRhY2hlZCh0
aGlzKTsKICAgICAgICAgZG9jLT5pbmNET01UcmVlVmVyc2lvbigpOworICAgIH0KKyAgICBtX2Fj
dGl2ZSA9IGZhbHNlOwogICAgIG1faG92ZXJlZCA9IGZhbHNlOworICAgIG1faW5BY3RpdmVDaGFp
biA9IGZhbHNlOwogICAgIG1fYXR0YWNoZWQgPSBmYWxzZTsKICAgICBtX2luRGV0YWNoID0gZmFs
c2U7CiB9CkluZGV4OiBXZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAkocmV2aXNpb24gMTI1MTMpCisrKyBXZWJDb3JlL3Bh
Z2UvRnJhbWVWaWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzQsNiArNzQsNyBAQCBwdWJsaWM6
CiAgICAgICAgIHZtb2RlID0gaG1vZGUgPSBRU2Nyb2xsVmlldzo6QXV0bzsKICAgICAgICAgZmly
c3RMYXlvdXQgPSB0cnVlOwogICAgICAgICBuZWVkVG9Jbml0U2Nyb2xsQmFycyA9IHRydWU7Cisg
ICAgICAgIGhvdmVyVGltZXJJZCA9IDA7CiAgICAgfQogICAgIH5GcmFtZVZpZXdQcml2YXRlKCkK
ICAgICB7CkBAIC0xMTEsNiArMTEyLDcgQEAgcHVibGljOgogICAgICAgICBsYXlvdXRTdXBwcmVz
c2VkID0gZmFsc2U7CiAgICAgICAgIGxheW91dENvdW50ID0gMDsKICAgICAgICAgZmlyc3RMYXlv
dXQgPSB0cnVlOworICAgICAgICBob3ZlclRpbWVySWQgPSAwOwogICAgICAgICBpZiAocmVwYWlu
dFJlY3RzKQogICAgICAgICAgICAgcmVwYWludFJlY3RzLT5jbGVhcigpOwogICAgIH0KQEAgLTE0
Niw2ICsxNDgsOCBAQCBwdWJsaWM6CiAgICAgYm9vbCBtb3VzZVByZXNzZWQ7CiAgICAgYm9vbCBp
c1RyYW5zcGFyZW50OwogICAgIAorICAgIGludCBob3ZlclRpbWVySWQ7CisgICAgCiAgICAgLy8g
VXNlZCBieSBvYmplY3RzIGR1cmluZyBsYXlvdXQgdG8gY29tbXVuaWNhdGUgcmVwYWludHMgdGhh
dCBuZWVkIHRvIHRha2UgcGxhY2Ugb25seQogICAgIC8vIGFmdGVyIGFsbCBsYXlvdXQgaGFzIGJl
ZW4gY29tcGxldGVkLgogICAgIFFQdHJMaXN0PFJlbmRlck9iamVjdDo6UmVwYWludEluZm8+KiBy
ZXBhaW50UmVjdHM7CkBAIC0xNzYsNiArMTgwLDggQEAgRnJhbWVWaWV3Ojp+RnJhbWVWaWV3KCkK
IAogICAgIEFTU0VSVChfcmVmQ291bnQgPT0gMCk7CiAKKyAgICBpZiAoZC0+aG92ZXJUaW1lcklk
KQorICAgICAgICBraWxsVGltZXIoZC0+aG92ZXJUaW1lcklkKTsKICAgICBpZiAobV9mcmFtZSkK
ICAgICB7CiAgICAgICAgIC8vV0FCQTogSXMgdGhpcyBPaz8gRG8gSSBuZWVkIHRvIGRlcmVmIGl0
IGFzIHdlbGw/CkBAIC02NTYsNiArNjYyLDExIEBAIHZvaWQgRnJhbWVWaWV3Ojp2aWV3cG9ydE1v
dXNlTW92ZUV2ZW50KCAKICAgICBBU1NFUlQobV9mcmFtZSk7CiAgICAgaWYoIW1fZnJhbWUgfHwg
IW1fZnJhbWUtPmRvY3VtZW50KCkpIHJldHVybjsKIAorICAgIGlmIChkLT5ob3ZlclRpbWVySWQp
IHsKKyAgICAgICAga2lsbFRpbWVyKGQtPmhvdmVyVGltZXJJZCk7CisgICAgICAgIGQtPmhvdmVy
VGltZXJJZCA9IDA7CisgICAgfQorCiAgICAgaW50IHhtLCB5bTsKICAgICB2aWV3cG9ydFRvQ29u
dGVudHMoX21vdXNlLT54KCksIF9tb3VzZS0+eSgpLCB4bSwgeW0pOwogCkBAIC0xMTUzLDEyICsx
MTY0LDE5IEBAIHZvaWQgRnJhbWVWaWV3OjpyZXBhaW50UmVjdGFuZ2xlKGNvbnN0IEkKIAogdm9p
ZCBGcmFtZVZpZXc6OnRpbWVyRXZlbnQgKCBRVGltZXJFdmVudCAqZSApCiB7Ci0gICAgaWYgKGUt
PnRpbWVySWQoKT09ZC0+bGF5b3V0VGltZXJJZCkgeworICAgIGludCB0aW1lcklkID0gZS0+dGlt
ZXJJZCgpOworCisgICAgaWYgKHRpbWVySWQgPT0gZC0+bGF5b3V0VGltZXJJZCkgewogI2lmZGVm
IElOU1RSVU1FTlRfTEFZT1VUX1NDSEVEVUxJTkcKICAgICAgICAgaWYgKG1fZnJhbWUtPmRvY3Vt
ZW50KCkgJiYgIW1fZnJhbWUtPmRvY3VtZW50KCktPm93bmVyRWxlbWVudCgpKQogICAgICAgICAg
ICAgcHJpbnRmKCJMYXlvdXQgdGltZXIgZmlyZWQgYXQgJWRcbiIsIG1fZnJhbWUtPmRvY3VtZW50
KCktPmVsYXBzZWRUaW1lKCkpOwogI2VuZGlmCiAgICAgICAgIGxheW91dCgpOworICAgIH0gZWxz
ZSBpZiAodGltZXJJZCA9PSBkLT5ob3ZlclRpbWVySWQpIHsKKyAgICAgICAga2lsbFRpbWVyKGQt
PmhvdmVyVGltZXJJZCk7CisgICAgICAgIGQtPmhvdmVyVGltZXJJZCA9IDA7CisgICAgICAgIE5v
ZGVJbXBsOjpNb3VzZUV2ZW50IG1ldihmYWxzZSwgTm9kZUltcGw6Ok1vdXNlTW92ZSk7CisgICAg
ICAgIG1fZnJhbWUtPmRvY3VtZW50KCktPnByZXBhcmVNb3VzZUV2ZW50KGZhbHNlLCBmYWxzZSwg
ZC0+cHJldk1vdXNlWCwgZC0+cHJldk1vdXNlWSwgJm1ldiApOwogICAgIH0KIH0KIApAQCAtMTIy
MSw0ICsxMjM5LDkgQEAgdm9pZCBGcmFtZVZpZXc6OnNldFRyYW5zcGFyZW50KGJvb2wgaXNUcgog
ICAgIGQtPmlzVHJhbnNwYXJlbnQgPSBpc1RyYW5zcGFyZW50OwogfQogCi19ClwgTm8gbmV3bGlu
ZSBhdCBlbmQgb2YgZmlsZQordm9pZCBGcmFtZVZpZXc6OnNjaGVkdWxlSG92ZXJTdGF0ZVVwZGF0
ZSgpCit7CisgICAgaWYgKCFkLT5ob3ZlclRpbWVySWQpCisgICAgICAgIGQtPmhvdmVyVGltZXJJ
ZCA9IHN0YXJ0VGltZXIoMCk7Cit9Cit9CkluZGV4OiBXZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCShyZXZpc2lvbiAxMjUxMykK
KysrIFdlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaAkod29ya2luZyBjb3B5KQpAQCAtMjAyLDYgKzIw
Miw4IEBAIHB1YmxpYzoKICAgICBib29sIGhhdmVEZWxheWVkTGF5b3V0U2NoZWR1bGVkKCk7CiAg
ICAgYm9vbCBsYXlvdXRQZW5kaW5nKCk7CiAKKyAgICB2b2lkIHNjaGVkdWxlSG92ZXJTdGF0ZVVw
ZGF0ZSgpOworCiAgICAgUVdpZGdldCAqdG9wTGV2ZWxXaWRnZXQoKSBjb25zdDsKICAgICBJbnRQ
b2ludCBtYXBUb0dsb2JhbChjb25zdCBJbnRQb2ludCAmKSBjb25zdDsKICAgICAvLyBtYXBzICJ2
aWV3cG9ydCIgKGFjdHVhbGx5IENvY29hIHdpbmRvdyBjb29yZHMpIHRvIHNjcmVlbiBjb29yZHMK
</data>
<flag name="review"
          id="1491"
          type_id="1"
          status="-"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>6209</attachid>
            <date>2006-02-02 13:17:40 -0800</date>
            <delta_ts>2006-02-06 10:19:58 -0800</delta_ts>
            <desc>Updated with new timers</desc>
            <filename>6821_r3.patch</filename>
            <type>text/plain</type>
            <size>5920</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUva2h0bWwveG1sL0RvY3VtZW50SW1wbC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUva2h0bWwveG1sL0RvY3VtZW50SW1wbC5oCShyZXZpc2lvbiAxMjUzMykKKysrIFdlYkNv
cmUva2h0bWwveG1sL0RvY3VtZW50SW1wbC5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNzgsNiArMzc4
LDggQEAgcHVibGljOgogCiAgICAgTm9kZUltcGwgKmhvdmVyTm9kZSgpIGNvbnN0IHsgcmV0dXJu
IG1faG92ZXJOb2RlLmdldCgpOyB9CiAgICAgdm9pZCBzZXRIb3Zlck5vZGUoTm9kZUltcGwgKm5l
d0hvdmVyTm9kZSk7CisgICAgdm9pZCBob3ZlcmVkTm9kZURldGFjaGVkKE5vZGVJbXBsKik7Cisg
ICAgdm9pZCBhY3RpdmVDaGFpbk5vZGVEZXRhY2hlZChOb2RlSW1wbCopOwogICAgIAogICAgIE5v
ZGVJbXBsICphY3RpdmVOb2RlKCkgY29uc3QgeyByZXR1cm4gbV9hY3RpdmVOb2RlLmdldCgpOyB9
CiAgICAgdm9pZCBzZXRBY3RpdmVOb2RlKE5vZGVJbXBsICpuZXdBY3RpdmVOb2RlKTsKSW5kZXg6
IFdlYkNvcmUva2h0bWwveG1sL0RvY3VtZW50SW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9raHRtbC94bWwvRG9jdW1lbnRJbXBsLmNwcAkocmV2aXNpb24gMTI1MzMpCisrKyBXZWJDb3Jl
L2todG1sL3htbC9Eb2N1bWVudEltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xOTcyLDYgKzE5
NzIsMjcgQEAgdm9pZCBEb2N1bWVudEltcGw6OnNldEFjdGl2ZU5vZGUoTm9kZUltcAogICAgICAg
ICBtX2FjdGl2ZU5vZGUgPSBuZXdBY3RpdmVOb2RlOwogfQogCit2b2lkIERvY3VtZW50SW1wbDo6
aG92ZXJlZE5vZGVEZXRhY2hlZChOb2RlSW1wbCogbm9kZSkKK3sKKyAgICBpZiAoIW1faG92ZXJO
b2RlIHx8IChub2RlICE9IG1faG92ZXJOb2RlICYmICghbV9ob3Zlck5vZGUtPmlzVGV4dE5vZGUo
KSB8fCBub2RlICE9IG1faG92ZXJOb2RlLT5wYXJlbnQoKSkpKQorICAgICAgICByZXR1cm47CisK
KyAgICBtX2hvdmVyTm9kZSA9IG5vZGUtPnBhcmVudCgpOworICAgIHdoaWxlIChtX2hvdmVyTm9k
ZSAmJiAhbV9ob3Zlck5vZGUtPnJlbmRlcmVyKCkpCisgICAgICAgIG1faG92ZXJOb2RlID0gbV9o
b3Zlck5vZGUtPnBhcmVudCgpOworICAgIGlmICh2aWV3KCkpCisgICAgICAgIHZpZXcoKS0+c2No
ZWR1bGVIb3ZlclN0YXRlVXBkYXRlKCk7Cit9CisKK3ZvaWQgRG9jdW1lbnRJbXBsOjphY3RpdmVD
aGFpbk5vZGVEZXRhY2hlZChOb2RlSW1wbCogbm9kZSkKK3sKKyAgICBpZiAoIW1fYWN0aXZlTm9k
ZSB8fCAobm9kZSAhPSBtX2FjdGl2ZU5vZGUgJiYgKCFtX2FjdGl2ZU5vZGUtPmlzVGV4dE5vZGUo
KSB8fCBub2RlICE9IG1fYWN0aXZlTm9kZS0+cGFyZW50KCkpKSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgbV9hY3RpdmVOb2RlID0gbm9kZS0+cGFyZW50KCk7CisgICAgd2hpbGUgKG1fYWN0aXZl
Tm9kZSAmJiAhbV9hY3RpdmVOb2RlLT5yZW5kZXJlcigpKQorICAgICAgICBtX2FjdGl2ZU5vZGUg
PSBtX2FjdGl2ZU5vZGUtPnBhcmVudCgpOworfQogCiBib29sIERvY3VtZW50SW1wbDo6cmVsaW5x
dWlzaGVzRWRpdGluZ0ZvY3VzKE5vZGVJbXBsICpub2RlKQogewpJbmRleDogV2ViQ29yZS9raHRt
bC94bWwvTm9kZUltcGwuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUva2h0bWwveG1sL05vZGVJ
bXBsLmNwcAkocmV2aXNpb24gMTI1MzMpCisrKyBXZWJDb3JlL2todG1sL3htbC9Ob2RlSW1wbC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTExODMsMjQgKzExODMsMjEgQEAgdm9pZCBOb2RlSW1wbDo6
ZGV0YWNoKCkKICAgICBtX2luRGV0YWNoID0gdHJ1ZTsKIC8vICAgIGFzc2VydChtX2F0dGFjaGVk
KTsKIAotICAgIERvY3VtZW50SW1wbCogZG9jID0gZ2V0RG9jdW1lbnQoKTsKLSAgICBpZiAocmVu
ZGVyZXIoKSkgewotICAgICAgICBpZiAobV9ob3ZlcmVkICYmIGRvYy0+aG92ZXJOb2RlKCkgPT0g
dGhpcykgewotICAgICAgICAgICAgTm9kZUltcGwqIGUgPSB0aGlzOwotICAgICAgICAgICAgUmVu
ZGVyT2JqZWN0KiBvID0gcmVuZGVyZXIoKTsKLSAgICAgICAgICAgIHdoaWxlIChvICYmICghZSB8
fCBlID09IHRoaXMpKSB7Ci0gICAgICAgICAgICAgICAgbyA9IG8tPmhvdmVyQW5jZXN0b3IoKTsK
LSAgICAgICAgICAgICAgICBlID0gbyA/IG8tPmVsZW1lbnQoKSA6IDA7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgICAgICBkb2MtPnNldEhvdmVyTm9kZShlKTsKLSAgICAgICAgfQorICAgIGlmIChy
ZW5kZXJlcigpKQogICAgICAgICByZW5kZXJlcigpLT5kZXN0cm95KCk7Ci0gICAgfQogICAgIHNl
dFJlbmRlcmVyKDApOwogCi0gICAgaWYgKGRvYykKKyAgICBEb2N1bWVudEltcGwqIGRvYyA9IGdl
dERvY3VtZW50KCk7CisgICAgaWYgKGRvYykgeworICAgICAgICBpZiAobV9ob3ZlcmVkKQorICAg
ICAgICAgICAgZG9jLT5ob3ZlcmVkTm9kZURldGFjaGVkKHRoaXMpOworICAgICAgICBpZiAobV9p
bkFjdGl2ZUNoYWluKQorICAgICAgICAgICAgZG9jLT5hY3RpdmVDaGFpbk5vZGVEZXRhY2hlZCh0
aGlzKTsKICAgICAgICAgZG9jLT5pbmNET01UcmVlVmVyc2lvbigpOworICAgIH0KKyAgICBtX2Fj
dGl2ZSA9IGZhbHNlOwogICAgIG1faG92ZXJlZCA9IGZhbHNlOworICAgIG1faW5BY3RpdmVDaGFp
biA9IGZhbHNlOwogICAgIG1fYXR0YWNoZWQgPSBmYWxzZTsKICAgICBtX2luRGV0YWNoID0gZmFs
c2U7CiB9CkluZGV4OiBXZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAkocmV2aXNpb24gMTI1MzMpCisrKyBXZWJDb3JlL3Bh
Z2UvRnJhbWVWaWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjEsNyArNjEsNyBAQCB1c2luZyBu
YW1lc3BhY2UgSFRNTE5hbWVzOwogY2xhc3MgRnJhbWVWaWV3UHJpdmF0ZSB7CiBwdWJsaWM6CiAg
ICAgRnJhbWVWaWV3UHJpdmF0ZShGcmFtZVZpZXcqIHZpZXcpCi0gICAgICAgIDogbGF5b3V0VGlt
ZXIodmlldywgJkZyYW1lVmlldzo6bGF5b3V0VGltZXJGaXJlZCkKKyAgICAgICAgOiBsYXlvdXRU
aW1lcih2aWV3LCAmRnJhbWVWaWV3OjpsYXlvdXRUaW1lckZpcmVkKSwgaG92ZXJUaW1lcih2aWV3
LCAmRnJhbWVWaWV3Ojpob3ZlclRpbWVyRmlyZWQpCiAgICAgewogICAgICAgICByZXBhaW50UmVj
dHMgPSAwOwogICAgICAgICB1bmRlck1vdXNlID0gMDsKQEAgLTExMSw2ICsxMTEsNyBAQCBwdWJs
aWM6CiAgICAgICAgIGxheW91dFN1cHByZXNzZWQgPSBmYWxzZTsKICAgICAgICAgbGF5b3V0Q291
bnQgPSAwOwogICAgICAgICBmaXJzdExheW91dCA9IHRydWU7CisgICAgICAgIGhvdmVyVGltZXIu
c3RvcCgpOwogICAgICAgICBpZiAocmVwYWludFJlY3RzKQogICAgICAgICAgICAgcmVwYWludFJl
Y3RzLT5jbGVhcigpOwogICAgIH0KQEAgLTE0Niw2ICsxNDcsOCBAQCBwdWJsaWM6CiAgICAgYm9v
bCBtb3VzZVByZXNzZWQ7CiAgICAgYm9vbCBpc1RyYW5zcGFyZW50OwogICAgIAorICAgIFRpbWVy
PEZyYW1lVmlldz4gaG92ZXJUaW1lcjsKKyAgICAKICAgICAvLyBVc2VkIGJ5IG9iamVjdHMgZHVy
aW5nIGxheW91dCB0byBjb21tdW5pY2F0ZSByZXBhaW50cyB0aGF0IG5lZWQgdG8gdGFrZSBwbGFj
ZSBvbmx5CiAgICAgLy8gYWZ0ZXIgYWxsIGxheW91dCBoYXMgYmVlbiBjb21wbGV0ZWQuCiAgICAg
UVB0ckxpc3Q8UmVuZGVyT2JqZWN0OjpSZXBhaW50SW5mbz4qIHJlcGFpbnRSZWN0czsKQEAgLTE3
Myw2ICsxNzYsOCBAQCBGcmFtZVZpZXc6On5GcmFtZVZpZXcoKQogCiAgICAgQVNTRVJUKF9yZWZD
b3VudCA9PSAwKTsKIAorICAgIGlmIChkLT5ob3ZlclRpbWVyLmlzQWN0aXZlKCkpCisgICAgICAg
IGQtPmhvdmVyVGltZXIuc3RvcCgpOwogICAgIGlmIChtX2ZyYW1lKSB7CiAgICAgICAgIC8vIEZJ
WE1FOiBJcyB0aGlzIHJlYWxseSB0aGUgcmlnaHQgcGxhY2UgdG8gY2FsbCBkZXRhY2ggb24gdGhl
IGRvY3VtZW50PwogICAgICAgICBEb2N1bWVudEltcGwqIGRvYyA9IG1fZnJhbWUtPmRvY3VtZW50
KCk7CkBAIC02NDYsNiArNjUxLDkgQEAgdm9pZCBGcmFtZVZpZXc6OnZpZXdwb3J0TW91c2VNb3Zl
RXZlbnQoIAogICAgIGlmICghbV9mcmFtZSB8fCAhbV9mcmFtZS0+ZG9jdW1lbnQoKSkKICAgICAg
ICAgcmV0dXJuOwogCisgICAgaWYgKGQtPmhvdmVyVGltZXIuaXNBY3RpdmUoKSkKKyAgICAgICAg
ZC0+aG92ZXJUaW1lci5zdG9wKCk7CisKICAgICBpbnQgeG0sIHltOwogICAgIHZpZXdwb3J0VG9D
b250ZW50cyhfbW91c2UtPngoKSwgX21vdXNlLT55KCksIHhtLCB5bSk7CiAKQEAgLTExNDgsNiAr
MTE1NiwxMyBAQCB2b2lkIEZyYW1lVmlldzo6bGF5b3V0VGltZXJGaXJlZChUaW1lcjxGCiAgICAg
bGF5b3V0KCk7CiB9CiAKK3ZvaWQgRnJhbWVWaWV3Ojpob3ZlclRpbWVyRmlyZWQoVGltZXI8RnJh
bWVWaWV3PiopCit7CisgICAgZC0+aG92ZXJUaW1lci5zdG9wKCk7CisgICAgTm9kZUltcGw6Ok1v
dXNlRXZlbnQgbWV2KGZhbHNlLCBOb2RlSW1wbDo6TW91c2VNb3ZlKTsKKyAgICBtX2ZyYW1lLT5k
b2N1bWVudCgpLT5wcmVwYXJlTW91c2VFdmVudChmYWxzZSwgZmFsc2UsIGQtPnByZXZNb3VzZVgs
IGQtPnByZXZNb3VzZVksICZtZXYgKTsKK30KKwogdm9pZCBGcmFtZVZpZXc6OnNjaGVkdWxlUmVs
YXlvdXQoKQogewogICAgIGlmICghZC0+bGF5b3V0U2NoZWR1bGluZ0VuYWJsZWQpCkBAIC0xMjA2
LDQgKzEyMjEsMTAgQEAgdm9pZCBGcmFtZVZpZXc6OnNldFRyYW5zcGFyZW50KGJvb2wgaXNUcgog
ICAgIGQtPmlzVHJhbnNwYXJlbnQgPSBpc1RyYW5zcGFyZW50OwogfQogCi19ClwgTm8gbmV3bGlu
ZSBhdCBlbmQgb2YgZmlsZQordm9pZCBGcmFtZVZpZXc6OnNjaGVkdWxlSG92ZXJTdGF0ZVVwZGF0
ZSgpCit7CisgICAgaWYgKCFkLT5ob3ZlclRpbWVyLmlzQWN0aXZlKCkpCisgICAgICAgIGQtPmhv
dmVyVGltZXIuc3RhcnRPbmVTaG90KDApOworfQorCit9CkluZGV4OiBXZWJDb3JlL3BhZ2UvRnJh
bWVWaWV3LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCShyZXZpc2lv
biAxMjUzMykKKysrIFdlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaAkod29ya2luZyBjb3B5KQpAQCAt
MTkzLDYgKzE5Myw3IEBAIHB1YmxpYzoKICAgICBib29sIHBlcmZvcm1EcmFnQW5kRHJvcChjb25z
dCBJbnRQb2ludCAmLCBET006OkNsaXBib2FyZEltcGwgKmNsaXBib2FyZCk7CiAKICAgICB2b2lk
IGxheW91dFRpbWVyRmlyZWQoVGltZXI8RnJhbWVWaWV3PiopOworICAgIHZvaWQgaG92ZXJUaW1l
ckZpcmVkKFRpbWVyPEZyYW1lVmlldz4qKTsKIAogICAgIHZvaWQgcmVwYWludFJlY3RhbmdsZShj
b25zdCBJbnRSZWN0JiByLCBib29sIGltbWVkaWF0ZSk7CiAKQEAgLTIwNCw2ICsyMDUsOCBAQCBw
dWJsaWM6CiAgICAgYm9vbCBoYXZlRGVsYXllZExheW91dFNjaGVkdWxlZCgpOwogICAgIGJvb2wg
bGF5b3V0UGVuZGluZygpOwogCisgICAgdm9pZCBzY2hlZHVsZUhvdmVyU3RhdGVVcGRhdGUoKTsK
KwogICAgIFFXaWRnZXQgKnRvcExldmVsV2lkZ2V0KCkgY29uc3Q7CiAgICAgSW50UG9pbnQgbWFw
VG9HbG9iYWwoY29uc3QgSW50UG9pbnQgJikgY29uc3Q7CiAgICAgLy8gbWFwcyAidmlld3BvcnQi
IChhY3R1YWxseSBDb2NvYSB3aW5kb3cgY29vcmRzKSB0byBzY3JlZW4gY29vcmRzCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>6210</attachid>
            <date>2006-02-02 13:28:36 -0800</date>
            <delta_ts>2006-02-02 13:28:36 -0800</delta_ts>
            <desc>Additional cases</desc>
            <filename>hover-testcase-3.html</filename>
            <type>text/html</type>
            <size>555</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">PHN0eWxlPgogICAgZGl2IHsgYmFja2dyb3VuZDogeWVsbG93OyB3aWR0aDogODBweDsgaGVpZ2h0
OiA4MHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7CiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2
ZTsgfQogICAgZGl2I2E6aG92ZXIgeyBiYWNrZ3JvdW5kOiByZWQ7IGNvbG9yOiByZWQ7IH0KICAg
IGRpdiNiOmhvdmVyIHsgYmFja2dyb3VuZDogb3JhbmdlOyBsZWZ0OiAxMDBweDsgfQo8L3N0eWxl
PgoKPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgpmdW5jdGlvbiBtb3ZlQSgpCnsKICAg
IGEuc3R5bGUubGVmdCA9ICcxMDBweCc7Cn0KCmZ1bmN0aW9uIGhvdmVyZWRBKCkKewogICAgYS5p
bm5lckhUTUwgPSAiVGhhbmsgeW91ISI7CiAgICB3aW5kb3cuc2V0VGltZW91dChtb3ZlQSwgMTAw
MCk7Cn0KCjwvc2NyaXB0PgoKPGRpdiBpZD0iYSIgb25tb3VzZW92ZXI9ImhvdmVyZWRBKCkiPgpI
b3ZlciBoZXJlIGFuZCB3YWl0LiBEbyBub3QgbW92ZS4KPC9kaXY+Cjxicj4KPGRpdiBpZD0iYiI+
CkhvdmVyIGhlcmUgYW5kIHdhaXQuIERvIG5vdCBtb3ZlLgo8L2Rpdj4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>6292</attachid>
            <date>2006-02-06 10:18:58 -0800</date>
            <delta_ts>2006-02-08 23:20:38 -0800</delta_ts>
            <desc>Updated patch including ChangeLog entry and manual test</desc>
            <filename>6821_r5.patch</filename>
            <type>text/plain</type>
            <size>9730</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAxMjU5NikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzMgQEAKKzIwMDYtMDItIyMgIE1pdHogUGV0dGVsICA8b3BlbmRhcndpbi5vcmdA
bWl0enBldHRlbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgLSBmaXggaHR0cDovL2J1Z3ppbGxhLm9wZW5kYXJ3aW4ub3JnL3Nob3dfYnVnLmNn
aT9pZD02ODIxCisgICAgICAgICAgRml4IGZvciA1OTgzIHdpbGwgbm90IGFsd2F5cyB1cGRhdGUg
aG92ZXIgY29ycmVjdGx5LgorCisgICAgICAgICoga2h0bWwveG1sL0RvY3VtZW50SW1wbC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudEltcGw6OmhvdmVyZWROb2RlRGV0YWNoZWQpOiBB
ZGRlZCB0aGlzIG1ldGhvZC4gTW92ZWQgdGhlIGhvdmVyIGxvZ2ljIGZyb20KKyAgICAgICAgTm9k
ZUltcGw6OmRldGFjaCBoZXJlLCBtb2RpZmllZCB0byB1c2UgdGhlIERPTSB0cmVlIGluc3RlYWQg
b2YgaG92ZXJBbmNlc3RvciwKKyAgICAgICAgdG8gaGFuZGxlIHRoZSBjYXNlIHRoYXQgdGhlIGhv
dmVyIG5vZGUgaXMgYSB0ZXh0IG5vZGUsIGFuZCB0byBzY2hlZHVsZSBhbiB1cGRhdGUKKyAgICAg
ICAgb2YgaG92ZXIgc3RhdGUuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudEltcGw6OmFjdGl2
ZUNoYWluTm9kZURldGFjaGVkKTogQWRkZWQgdGhpcyBtZXRob2QgdG8gdHJpbSB0aGUKKyAgICAg
ICAgYWN0aXZlIGNoYWluIGFib3ZlIHRoZSBub2RlIGJlaW5nIGRldGFjaGVkLgorICAgICAgICAq
IGtodG1sL3htbC9Eb2N1bWVudEltcGwuaDoKKyAgICAgICAgKiBraHRtbC94bWwvTm9kZUltcGwu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6Tm9kZUltcGw6OmRldGFjaCk6IE1vdmVkIG1vc3Qgb2Yg
dGhlIGhvdmVyIGxvZ2ljIG91dCBvZiBoZXJlIGludG8KKyAgICAgICAgRG9jdW1lbnRJbXBsLiBS
ZXNldCBtX2FjdGl2ZSBhbmQgbV9pbkFjdGl2ZUNoYWluIGFuZCBjYWxsIGFjdGl2ZUNoYWluTm9k
ZURldGFjaGVkCisgICAgICAgIHdoZW4gZGV0YWNoaW5nIGFuIGFjdGl2ZSBub2RlLiAKKyAgICAg
ICAgKiBtYW51YWwtdGVzdHMvYnVnemlsbGEtNjgyMS5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBw
YWdlL0ZyYW1lVmlldy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXdQcml2YXRlOjpG
cmFtZVZpZXdQcml2YXRlKTogQWRkZWQgaG92ZXItc3RhdGUgdXBkYXRlIHRpbWVyLgorICAgICAg
ICAoV2ViQ29yZTo6RnJhbWVWaWV3UHJpdmF0ZTo6cmVzZXQpOgorICAgICAgICAoV2ViQ29yZTo6
RnJhbWVWaWV3Ojp+RnJhbWVWaWV3KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lVmlldzo6dmll
d3BvcnRNb3VzZU1vdmVFdmVudCk6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXc6OmhvdmVy
VGltZXJGaXJlZCk6IENhbGwgRG9jdW1lbnRJbXBsOjpwcmVwYXJlTW91c2VFdmVudAorICAgICAg
ICB3aGVuIHRoZSB0aW1lciBmaXJlcyB0byBjYXVzZSBob3ZlciBzdGF0ZSB0byB1cGRhdGUuCisg
ICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXc6OnNjaGVkdWxlSG92ZXJTdGF0ZVVwZGF0ZSk6IEFk
ZGVkLgorICAgICAgICAqIHBhZ2UvRnJhbWVWaWV3Lmg6CisKIDIwMDYtMDItMDUgIEFuZGVycyBD
YXJsc3NvbiAgPGFuZGVyc2NhQG1hYy5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTWFjaWVq
LgpJbmRleDogV2ViQ29yZS9raHRtbC94bWwvRG9jdW1lbnRJbXBsLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9raHRtbC94bWwvRG9jdW1lbnRJbXBsLmgJKHJldmlzaW9uIDEyNTk2KQorKysgV2Vi
Q29yZS9raHRtbC94bWwvRG9jdW1lbnRJbXBsLmgJKHdvcmtpbmcgY29weSkKQEAgLTM3OCw2ICsz
NzgsOCBAQCBwdWJsaWM6CiAKICAgICBOb2RlSW1wbCAqaG92ZXJOb2RlKCkgY29uc3QgeyByZXR1
cm4gbV9ob3Zlck5vZGUuZ2V0KCk7IH0KICAgICB2b2lkIHNldEhvdmVyTm9kZShOb2RlSW1wbCAq
bmV3SG92ZXJOb2RlKTsKKyAgICB2b2lkIGhvdmVyZWROb2RlRGV0YWNoZWQoTm9kZUltcGwqKTsK
KyAgICB2b2lkIGFjdGl2ZUNoYWluTm9kZURldGFjaGVkKE5vZGVJbXBsKik7CiAgICAgCiAgICAg
Tm9kZUltcGwgKmFjdGl2ZU5vZGUoKSBjb25zdCB7IHJldHVybiBtX2FjdGl2ZU5vZGUuZ2V0KCk7
IH0KICAgICB2b2lkIHNldEFjdGl2ZU5vZGUoTm9kZUltcGwgKm5ld0FjdGl2ZU5vZGUpOwpJbmRl
eDogV2ViQ29yZS9raHRtbC94bWwvRG9jdW1lbnRJbXBsLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJD
b3JlL2todG1sL3htbC9Eb2N1bWVudEltcGwuY3BwCShyZXZpc2lvbiAxMjU5NikKKysrIFdlYkNv
cmUva2h0bWwveG1sL0RvY3VtZW50SW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE5NjgsNiAr
MTk2OCwyNyBAQCB2b2lkIERvY3VtZW50SW1wbDo6c2V0QWN0aXZlTm9kZShOb2RlSW1wCiAgICAg
ICAgIG1fYWN0aXZlTm9kZSA9IG5ld0FjdGl2ZU5vZGU7CiB9CiAKK3ZvaWQgRG9jdW1lbnRJbXBs
Ojpob3ZlcmVkTm9kZURldGFjaGVkKE5vZGVJbXBsKiBub2RlKQoreworICAgIGlmICghbV9ob3Zl
ck5vZGUgfHwgKG5vZGUgIT0gbV9ob3Zlck5vZGUgJiYgKCFtX2hvdmVyTm9kZS0+aXNUZXh0Tm9k
ZSgpIHx8IG5vZGUgIT0gbV9ob3Zlck5vZGUtPnBhcmVudCgpKSkpCisgICAgICAgIHJldHVybjsK
KworICAgIG1faG92ZXJOb2RlID0gbm9kZS0+cGFyZW50KCk7CisgICAgd2hpbGUgKG1faG92ZXJO
b2RlICYmICFtX2hvdmVyTm9kZS0+cmVuZGVyZXIoKSkKKyAgICAgICAgbV9ob3Zlck5vZGUgPSBt
X2hvdmVyTm9kZS0+cGFyZW50KCk7CisgICAgaWYgKHZpZXcoKSkKKyAgICAgICAgdmlldygpLT5z
Y2hlZHVsZUhvdmVyU3RhdGVVcGRhdGUoKTsKK30KKwordm9pZCBEb2N1bWVudEltcGw6OmFjdGl2
ZUNoYWluTm9kZURldGFjaGVkKE5vZGVJbXBsKiBub2RlKQoreworICAgIGlmICghbV9hY3RpdmVO
b2RlIHx8IChub2RlICE9IG1fYWN0aXZlTm9kZSAmJiAoIW1fYWN0aXZlTm9kZS0+aXNUZXh0Tm9k
ZSgpIHx8IG5vZGUgIT0gbV9hY3RpdmVOb2RlLT5wYXJlbnQoKSkpKQorICAgICAgICByZXR1cm47
CisKKyAgICBtX2FjdGl2ZU5vZGUgPSBub2RlLT5wYXJlbnQoKTsKKyAgICB3aGlsZSAobV9hY3Rp
dmVOb2RlICYmICFtX2FjdGl2ZU5vZGUtPnJlbmRlcmVyKCkpCisgICAgICAgIG1fYWN0aXZlTm9k
ZSA9IG1fYWN0aXZlTm9kZS0+cGFyZW50KCk7Cit9CiAKIGJvb2wgRG9jdW1lbnRJbXBsOjpyZWxp
bnF1aXNoZXNFZGl0aW5nRm9jdXMoTm9kZUltcGwgKm5vZGUpCiB7CkluZGV4OiBXZWJDb3JlL2to
dG1sL3htbC9Ob2RlSW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9raHRtbC94bWwvTm9k
ZUltcGwuY3BwCShyZXZpc2lvbiAxMjU5NikKKysrIFdlYkNvcmUva2h0bWwveG1sL05vZGVJbXBs
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTE2MiwyNCArMTE2MiwyMSBAQCB2b2lkIE5vZGVJbXBs
OjpkZXRhY2goKQogICAgIG1faW5EZXRhY2ggPSB0cnVlOwogLy8gICAgYXNzZXJ0KG1fYXR0YWNo
ZWQpOwogCi0gICAgRG9jdW1lbnRJbXBsKiBkb2MgPSBnZXREb2N1bWVudCgpOwotICAgIGlmIChy
ZW5kZXJlcigpKSB7Ci0gICAgICAgIGlmIChtX2hvdmVyZWQgJiYgZG9jLT5ob3Zlck5vZGUoKSA9
PSB0aGlzKSB7Ci0gICAgICAgICAgICBOb2RlSW1wbCogZSA9IHRoaXM7Ci0gICAgICAgICAgICBS
ZW5kZXJPYmplY3QqIG8gPSByZW5kZXJlcigpOwotICAgICAgICAgICAgd2hpbGUgKG8gJiYgKCFl
IHx8IGUgPT0gdGhpcykpIHsKLSAgICAgICAgICAgICAgICBvID0gby0+aG92ZXJBbmNlc3Rvcigp
OwotICAgICAgICAgICAgICAgIGUgPSBvID8gby0+ZWxlbWVudCgpIDogMDsKLSAgICAgICAgICAg
IH0KLSAgICAgICAgICAgIGRvYy0+c2V0SG92ZXJOb2RlKGUpOwotICAgICAgICB9CisgICAgaWYg
KHJlbmRlcmVyKCkpCiAgICAgICAgIHJlbmRlcmVyKCktPmRlc3Ryb3koKTsKLSAgICB9CiAgICAg
c2V0UmVuZGVyZXIoMCk7CiAKLSAgICBpZiAoZG9jKQorICAgIERvY3VtZW50SW1wbCogZG9jID0g
Z2V0RG9jdW1lbnQoKTsKKyAgICBpZiAoZG9jKSB7CisgICAgICAgIGlmIChtX2hvdmVyZWQpCisg
ICAgICAgICAgICBkb2MtPmhvdmVyZWROb2RlRGV0YWNoZWQodGhpcyk7CisgICAgICAgIGlmICht
X2luQWN0aXZlQ2hhaW4pCisgICAgICAgICAgICBkb2MtPmFjdGl2ZUNoYWluTm9kZURldGFjaGVk
KHRoaXMpOwogICAgICAgICBkb2MtPmluY0RPTVRyZWVWZXJzaW9uKCk7CisgICAgfQorICAgIG1f
YWN0aXZlID0gZmFsc2U7CiAgICAgbV9ob3ZlcmVkID0gZmFsc2U7CisgICAgbV9pbkFjdGl2ZUNo
YWluID0gZmFsc2U7CiAgICAgbV9hdHRhY2hlZCA9IGZhbHNlOwogICAgIG1faW5EZXRhY2ggPSBm
YWxzZTsKIH0KSW5kZXg6IFdlYkNvcmUvbWFudWFsLXRlc3RzL2J1Z3ppbGxhLTY4MjEuaHRtbAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL21hbnVhbC10ZXN0cy9idWd6aWxsYS02ODIxLmh0bWwJKHJl
dmlzaW9uIDApCisrKyBXZWJDb3JlL21hbnVhbC10ZXN0cy9idWd6aWxsYS02ODIxLmh0bWwJKHJl
dmlzaW9uIDApCkBAIC0wLDAgKzEsNTcgQEAKKzwhRE9DVFlQRSBIVE1MIFBVQkxJQyAiLS8vVzND
Ly9EVEQgSFRNTCA0LjAxLy9FTiIKKyAgICAgICAgImh0dHA6Ly93d3cudzMub3JnL1RSL2h0bWw0
L3N0cmljdC5kdGQiPgorPGh0bWwgbGFuZz0iZW4iPgorPGhlYWQ+Cis8c3R5bGU+CisgICAgZGl2
IHsgd2lkdGg6IDYwcHg7IHRleHQtYWxpZ246IGNlbnRlcjsKKyAgICAgICAgICAgIHBvc2l0aW9u
OiByZWxhdGl2ZTsgfQorICAgIGRpdiNhIHsgYmFja2dyb3VuZDogZ3JlZW47IH0KKyAgICBkaXYj
YiB7IGJhY2tncm91bmQ6IHllbGxvdzsgfQorICAgIGRpdiNhOmhvdmVyIHsgYmFja2dyb3VuZDog
cmVkOyB9CisgICAgZGl2I2I6aG92ZXIgeyBiYWNrZ3JvdW5kOiBncmVlbjsgfQorICAgIHNwYW4j
Yzpob3ZlciB7IGNvbG9yOiByZWQ7IH0KKzwvc3R5bGU+Cis8L2hlYWQ+Cis8Ym9keT4KKzxwPjxi
PkJVRyBJRDo8L2I+IDxhIGhyZWY9Imh0dHA6Ly9idWd6aWxsYS5vcGVuZGFyd2luLm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NjgyMSI+QnVnemlsbGEgYnVnIDY4MjE8L2E+IEZpeCBmb3IgNTk4MyB3aWxs
IG5vdCBhbHdheXMgdXBkYXRlIGhvdmVyIGNvcnJlY3RseS48L3A+CisKKzxwIGlkPSJ0ZXN0IiBz
dHlsZT0iYmFja2dyb3VuZC1jb2xvcjpza3libHVlOyBwYWRkaW5nOjNweDsiPjxiPlNURVBTIFRP
IFRFU1Q6PC9iPiAKK01vdmUgdGhlIG1vdXNlIG92ZXIgdGhlIHRleHQgJmxkcXVvO0hvdmVyIGhl
cmUmcmRxdW87IHVudGlsIGl0IGRpc2FwcGVhcnMgYW5kICZsZHF1bztXYWl0JnJkcXVvOyBhcHBl
YXJzLCB0aGVuIERPIE5PVCBNT1ZFIHRoZSBtb3VzZQordW50aWwgdGhlIGVuZCBvZiB0aGUgdGVz
dC4KKzwvcD4KKworPHAgaWQ9InN1Y2Nlc3MiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOnBhbGVn
cmVlbjsgcGFkZGluZzozcHg7Ij48Yj5URVNUIFBBU1M6PC9iPiAKK0FmdGVyIGEgc2Vjb25kLCB5
b3Ugc2hvdWxkIHNlZSAmbGRxdW87T25seSBncmVlbiBub3cmcmRxdW87IG92ZXIgYSBncmVlbiBi
YWNrZ3JvdW5kLgorTm8gb3RoZXIgY29sb3JzIHNob3VsZCBiZSB2aXNpYmxlLgorPC9wPgorCis8
cCBpZD0iZmFpbHVyZSIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6I0ZGMzMwMDsgcGFkZGluZzoz
cHg7Ij48Yj5URVNUIEZBSUw6PC9iPiAgCismbGRxdW87T25seSBncmVlbiBub3cmcmRxdW87IHdp
bGwgYXBwZWFyIG92ZXIgYSB5ZWxsb3cgYmFja2dyb3VuZCB3aXRoIGEgcmVkCityZWN0IGF0IHRo
ZSB0b3AuIElmIHlvdSAgbW92ZSB0aGUgbW91c2Ugb3ZlciB0aGUgYmFja2dyb3VuZCwgdGhlIGNv
bG9ycyB3aWxsCitjaGFuZ2UgdG8gZ3JlZW4gZXZlbnR1YWxseS4KKzwvcD4KKworPGhyPgorCis8
c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CitmdW5jdGlvbiBoaWRlQygpCit7CisgICAg
Yy5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOworfQorCitmdW5jdGlvbiBob3ZlcmVkQygpCit7Cisg
ICAgd2luZG93LnNldFRpbWVvdXQoaGlkZUMsIDEwMDApOworfQorCis8L3NjcmlwdD4KKworPGRp
diBpZD0iYSI+Cis8ZGl2IHN0eWxlPSJoZWlnaHQ6IDIwcHg7Ij48L2Rpdj4KKzxzcGFuIGlkPSJj
IiBvbm1vdXNlb3Zlcj0iaG92ZXJlZEMoKSI+SG92ZXIgaGVyZTxicj48c3BhbiBzdHlsZT0iYmFj
a2dyb3VuZDogYmxhY2s7Ij4mbmJzcDtXYWl0Jm5ic3A7PC9zcGFuPjwvc3Bhbj4KKzwvZGl2Pgor
PGRpdiBpZD0iYiI+CitPbmx5IGdyZWVuIG5vdworPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+Cklu
ZGV4OiBXZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3Bh
Z2UvRnJhbWVWaWV3LmNwcAkocmV2aXNpb24gMTI1OTYpCisrKyBXZWJDb3JlL3BhZ2UvRnJhbWVW
aWV3LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNjEsNyArNjEsNyBAQCB1c2luZyBuYW1lc3BhY2Ug
SFRNTE5hbWVzOwogY2xhc3MgRnJhbWVWaWV3UHJpdmF0ZSB7CiBwdWJsaWM6CiAgICAgRnJhbWVW
aWV3UHJpdmF0ZShGcmFtZVZpZXcqIHZpZXcpCi0gICAgICAgIDogbGF5b3V0VGltZXIodmlldywg
JkZyYW1lVmlldzo6bGF5b3V0VGltZXJGaXJlZCkKKyAgICAgICAgOiBsYXlvdXRUaW1lcih2aWV3
LCAmRnJhbWVWaWV3OjpsYXlvdXRUaW1lckZpcmVkKSwgaG92ZXJUaW1lcih2aWV3LCAmRnJhbWVW
aWV3Ojpob3ZlclRpbWVyRmlyZWQpCiAgICAgewogICAgICAgICByZXBhaW50UmVjdHMgPSAwOwog
ICAgICAgICB1bmRlck1vdXNlID0gMDsKQEAgLTExMSw2ICsxMTEsNyBAQCBwdWJsaWM6CiAgICAg
ICAgIGxheW91dFN1cHByZXNzZWQgPSBmYWxzZTsKICAgICAgICAgbGF5b3V0Q291bnQgPSAwOwog
ICAgICAgICBmaXJzdExheW91dCA9IHRydWU7CisgICAgICAgIGhvdmVyVGltZXIuc3RvcCgpOwog
ICAgICAgICBpZiAocmVwYWludFJlY3RzKQogICAgICAgICAgICAgcmVwYWludFJlY3RzLT5jbGVh
cigpOwogICAgIH0KQEAgLTE0Niw2ICsxNDcsOCBAQCBwdWJsaWM6CiAgICAgYm9vbCBtb3VzZVBy
ZXNzZWQ7CiAgICAgYm9vbCBpc1RyYW5zcGFyZW50OwogICAgIAorICAgIFRpbWVyPEZyYW1lVmll
dz4gaG92ZXJUaW1lcjsKKyAgICAKICAgICAvLyBVc2VkIGJ5IG9iamVjdHMgZHVyaW5nIGxheW91
dCB0byBjb21tdW5pY2F0ZSByZXBhaW50cyB0aGF0IG5lZWQgdG8gdGFrZSBwbGFjZSBvbmx5CiAg
ICAgLy8gYWZ0ZXIgYWxsIGxheW91dCBoYXMgYmVlbiBjb21wbGV0ZWQuCiAgICAgUVB0ckxpc3Q8
UmVuZGVyT2JqZWN0OjpSZXBhaW50SW5mbz4qIHJlcGFpbnRSZWN0czsKQEAgLTE3Myw2ICsxNzYs
OCBAQCBGcmFtZVZpZXc6On5GcmFtZVZpZXcoKQogCiAgICAgQVNTRVJUKF9yZWZDb3VudCA9PSAw
KTsKIAorICAgIGlmIChkLT5ob3ZlclRpbWVyLmlzQWN0aXZlKCkpCisgICAgICAgIGQtPmhvdmVy
VGltZXIuc3RvcCgpOwogICAgIGlmIChtX2ZyYW1lKSB7CiAgICAgICAgIC8vIEZJWE1FOiBJcyB0
aGlzIHJlYWxseSB0aGUgcmlnaHQgcGxhY2UgdG8gY2FsbCBkZXRhY2ggb24gdGhlIGRvY3VtZW50
PwogICAgICAgICBEb2N1bWVudEltcGwqIGRvYyA9IG1fZnJhbWUtPmRvY3VtZW50KCk7CkBAIC02
NDYsNiArNjUxLDkgQEAgdm9pZCBGcmFtZVZpZXc6OnZpZXdwb3J0TW91c2VNb3ZlRXZlbnQoIAog
ICAgIGlmICghbV9mcmFtZSB8fCAhbV9mcmFtZS0+ZG9jdW1lbnQoKSkKICAgICAgICAgcmV0dXJu
OwogCisgICAgaWYgKGQtPmhvdmVyVGltZXIuaXNBY3RpdmUoKSkKKyAgICAgICAgZC0+aG92ZXJU
aW1lci5zdG9wKCk7CisKICAgICBpbnQgeG0sIHltOwogICAgIHZpZXdwb3J0VG9Db250ZW50cyhf
bW91c2UtPngoKSwgX21vdXNlLT55KCksIHhtLCB5bSk7CiAKQEAgLTExNDgsNiArMTE1NiwxMyBA
QCB2b2lkIEZyYW1lVmlldzo6bGF5b3V0VGltZXJGaXJlZChUaW1lcjxGCiAgICAgbGF5b3V0KCk7
CiB9CiAKK3ZvaWQgRnJhbWVWaWV3Ojpob3ZlclRpbWVyRmlyZWQoVGltZXI8RnJhbWVWaWV3Piop
Cit7CisgICAgZC0+aG92ZXJUaW1lci5zdG9wKCk7CisgICAgTm9kZUltcGw6Ok1vdXNlRXZlbnQg
bWV2KGZhbHNlLCBOb2RlSW1wbDo6TW91c2VNb3ZlKTsKKyAgICBtX2ZyYW1lLT5kb2N1bWVudCgp
LT5wcmVwYXJlTW91c2VFdmVudChmYWxzZSwgZmFsc2UsIGQtPnByZXZNb3VzZVgsIGQtPnByZXZN
b3VzZVksICZtZXYgKTsKK30KKwogdm9pZCBGcmFtZVZpZXc6OnNjaGVkdWxlUmVsYXlvdXQoKQog
ewogICAgIGlmICghZC0+bGF5b3V0U2NoZWR1bGluZ0VuYWJsZWQpCkBAIC0xMjA2LDQgKzEyMjEs
MTAgQEAgdm9pZCBGcmFtZVZpZXc6OnNldFRyYW5zcGFyZW50KGJvb2wgaXNUcgogICAgIGQtPmlz
VHJhbnNwYXJlbnQgPSBpc1RyYW5zcGFyZW50OwogfQogCi19ClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgZmlsZQordm9pZCBGcmFtZVZpZXc6OnNjaGVkdWxlSG92ZXJTdGF0ZVVwZGF0ZSgpCit7Cisg
ICAgaWYgKCFkLT5ob3ZlclRpbWVyLmlzQWN0aXZlKCkpCisgICAgICAgIGQtPmhvdmVyVGltZXIu
c3RhcnRPbmVTaG90KDApOworfQorCit9CkluZGV4OiBXZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5oCShyZXZpc2lvbiAxMjU5NikK
KysrIFdlYkNvcmUvcGFnZS9GcmFtZVZpZXcuaAkod29ya2luZyBjb3B5KQpAQCAtMTkzLDYgKzE5
Myw3IEBAIHB1YmxpYzoKICAgICBib29sIHBlcmZvcm1EcmFnQW5kRHJvcChjb25zdCBJbnRQb2lu
dCAmLCBET006OkNsaXBib2FyZEltcGwgKmNsaXBib2FyZCk7CiAKICAgICB2b2lkIGxheW91dFRp
bWVyRmlyZWQoVGltZXI8RnJhbWVWaWV3PiopOworICAgIHZvaWQgaG92ZXJUaW1lckZpcmVkKFRp
bWVyPEZyYW1lVmlldz4qKTsKIAogICAgIHZvaWQgcmVwYWludFJlY3RhbmdsZShjb25zdCBJbnRS
ZWN0JiByLCBib29sIGltbWVkaWF0ZSk7CiAKQEAgLTIwNCw2ICsyMDUsOCBAQCBwdWJsaWM6CiAg
ICAgYm9vbCBoYXZlRGVsYXllZExheW91dFNjaGVkdWxlZCgpOwogICAgIGJvb2wgbGF5b3V0UGVu
ZGluZygpOwogCisgICAgdm9pZCBzY2hlZHVsZUhvdmVyU3RhdGVVcGRhdGUoKTsKKwogICAgIFFX
aWRnZXQgKnRvcExldmVsV2lkZ2V0KCkgY29uc3Q7CiAgICAgSW50UG9pbnQgbWFwVG9HbG9iYWwo
Y29uc3QgSW50UG9pbnQgJikgY29uc3Q7CiAgICAgLy8gbWFwcyAidmlld3BvcnQiIChhY3R1YWxs
eSBDb2NvYSB3aW5kb3cgY29vcmRzKSB0byBzY3JlZW4gY29vcmRzCg==
</data>
<flag name="review"
          id="1528"
          type_id="1"
          status="+"
          setter="hyatt"
    />
          </attachment>
      

    </bug>

</bugzilla>