<?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>37955</bug_id>
          
          <creation_ts>2010-04-21 14:57:32 -0700</creation_ts>
          <short_desc>When webkitAnimationEnd event fires, on-screen rendering should show the last frame of animation</short_desc>
          <delta_ts>2010-04-23 13:23:11 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>cmarrin</cc>
    
    <cc>dino</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>215520</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-04-21 14:57:32 -0700</bug_when>
    <thetext>When the end-animation event fires, the rendering should show the last frame of animation. This way, JS can setup post-animation style without a flash.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>215591</commentid>
    <comment_count>1</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-04-21 17:56:32 -0700</bug_when>
    <thetext>This is also visible at http://www.jqtouch.com/preview/demos/main/#home</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>215592</commentid>
    <comment_count>2</comment_count>
      <attachid>54010</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-04-21 17:56:49 -0700</bug_when>
    <thetext>Created attachment 54010
Testcase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216244</commentid>
    <comment_count>3</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-04-22 20:24:34 -0700</bug_when>
    <thetext>The changes in http://trac.webkit.org/changeset/37484 made it so that we fire webkitAnimationEnd events asynchronously, after we&apos;ve restored the original, unanimated style. This opened up a window where the element has reverted to its original position before the event fires.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216249</commentid>
    <comment_count>4</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-04-22 20:38:47 -0700</bug_when>
    <thetext>Possible fix:

diff --git a/WebCore/page/animation/AnimationController.cpp b/WebCore/page/animation/AnimationController.cpp
index cb609a5..a0da350 100644
--- a/WebCore/page/animation/AnimationController.cpp
+++ b/WebCore/page/animation/AnimationController.cpp
@@ -134,6 +134,11 @@ void AnimationControllerPrivate::updateAnimationTimer(bool callSetChanged/* = fa
 
 void AnimationControllerPrivate::updateStyleIfNeededDispatcherFired(Timer&lt;AnimationControllerPrivate&gt;*)
 {
+    fireEventsAndUpdateStyle();
+}
+
+void AnimationControllerPrivate::fireEventsAndUpdateStyle()
+{
     // Protect the frame from getting destroyed in the event handler
     RefPtr&lt;Frame&gt; protector = m_frame;
 
@@ -196,6 +201,10 @@ void AnimationControllerPrivate::animationTimerFired(Timer&lt;AnimationControllerPr
     // When the timer fires, all we do is call setChanged on all DOM nodes with running animations and then do an immediate
     // updateStyleIfNeeded.  It will then call back to us with new information.
     updateAnimationTimer(true);
+
+    // Fire events right away, to avoid a flash of unanimated style after an animation completes, and before
+    // the &apos;end&apos; event fires.
+    fireEventsAndUpdateStyle();
 }
 
 bool AnimationControllerPrivate::isAnimatingPropertyOnRenderer(RenderObject* renderer, CSSPropertyID property, bool isRunningNow) const
diff --git a/WebCore/page/animation/AnimationControllerPrivate.h b/WebCore/page/animation/AnimationControllerPrivate.h
index 682dd75..5ef9098 100644
--- a/WebCore/page/animation/AnimationControllerPrivate.h
+++ b/WebCore/page/animation/AnimationControllerPrivate.h
@@ -92,6 +92,7 @@ public:
     
 private:
     void styleAvailable();
+    void fireEventsAndUpdateStyle();
 
     typedef HashMap&lt;RenderObject*, RefPtr&lt;CompositeAnimation&gt; &gt; RenderObjectAnimationMap;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216255</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-04-22 20:47:09 -0700</bug_when>
    <thetext>This patch causes some DRT assertions in AnimationBase::freezeAtTime(), because we try to freeze animations before we&apos;ve started them. Maybe we only need to process &apos;end&apos; events in this new code?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216468</commentid>
    <comment_count>6</comment_count>
      <attachid>54172</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-04-23 10:40:41 -0700</bug_when>
    <thetext>Created attachment 54172
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216476</commentid>
    <comment_count>7</comment_count>
      <attachid>54172</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-04-23 10:59:00 -0700</bug_when>
    <thetext>Comment on attachment 54172
Patch

&gt; +        Fix by firing these events in the same event cycle as the animation end, once all animations
&gt; +        have been updated. This also required moving the place that start animations are fixed until

s/fixed/fired</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>216537</commentid>
    <comment_count>8</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-04-23 13:23:11 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/58186</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>54010</attachid>
            <date>2010-04-21 17:56:49 -0700</date>
            <delta_ts>2010-04-21 17:56:49 -0700</delta_ts>
            <desc>Testcase</desc>
            <filename>style-on-end-event.html</filename>
            <type>text/html</type>
            <size>1464</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">PGh0bWw+CgogIDxoZWFkPgogICAgPHRpdGxlPlRlc3RjYXNlIGZvciBzdHlsZSB1cGRhdGUgZm9s
bG93aW5nIGFuaW1hdGlvbjwvdGl0bGU+CiAgICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgogICAg
CiAgICAgIGRpdiB7CiAgICAgICAgd2lkdGg6IDIwMHB4OwogICAgICAgIGhlaWdodDogMjAwcHg7
CiAgICAgICAgbWFyZ2luOiAyMHB4OwogICAgICAgIGZvbnQtc2l6ZTogMjRwdDsKICAgICAgICBi
YWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDAuNSk7CiAgICAgICAgLXdlYmtpdC10cmFuc2Zv
cm06IHJvdGF0ZSgwKTsKICAgICAgfQogICAgCiAgICAgIC5zcGluIHsKICAgICAgICAtd2Via2l0
LWFuaW1hdGlvbi1uYW1lOiBzcGluOwogICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9u
OiAyczsKICAgICAgfQoKICAgICAgQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4gewogICAgICAgIGZy
b20gewogICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTsKICAgICAg
ICAgIG9wYWNpdHk6IDAuOTk7CiAgICAgICAgfQogICAgICAgIHRvIHsKICAgICAgICAgIC13ZWJr
aXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7CiAgICAgICAgICBvcGFjaXR5OiAxLjA7CiAgICAgICAg
fQogICAgICB9CiAgICAKICAgIDwvc3R5bGU+CiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNj
cmlwdCI+CgogICAgICB2YXIgcGFnZTsKCiAgICAgIGZ1bmN0aW9uIGluaXQgKCkgewogICAgICAg
IHBhZ2UgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncGFnZScpOwogICAgICAgIHBhZ2UuYWRk
RXZlbnRMaXN0ZW5lcignd2Via2l0QW5pbWF0aW9uRW5kJywgYW5pbWF0aW9uX2RvbmUsIGZhbHNl
KTsKICAgICAgICBhbmltYXRlKCk7CiAgICAgIH07CgogICAgICBmdW5jdGlvbiBhbmltYXRlICgp
IHsKICAgICAgICAvLyBzZXQgdGhlIGFuaW1hdGlvbgogICAgICAgIHBhZ2UuY2xhc3NOYW1lID0g
J3NwaW4nOwogICAgICAgIHBhZ2Uuc3R5bGUud2Via2l0VHJhbnNmb3JtID0gJ3RyYW5zbGF0ZSgx
MDBweCwgMTAwcHgpJzsKICAgICAgICBwYWdlLnN0eWxlLm9wYWNpdHkgPSAnMC45OSc7CiAgICAg
IH07CgogICAgICBmdW5jdGlvbiBhbmltYXRpb25fZG9uZSAoZXZlbnQpIHsKICAgICAgICAvLyBz
ZXQgZW5kIHN0eWxlIG9uIGVuZCBwYWdlCiAgICAgICAgcGFnZS5zdHlsZS53ZWJraXRUcmFuc2Zv
cm0gPSAndHJhbnNsYXRlWCgwKSc7CiAgICAgICAgLy8gcmVtb3ZlIGFuaW1hdGlvbgogICAgICAg
IC8vIHBhZ2UuY2xhc3NOYW1lID0gJyc7CiAgICAgIH07CiAgICAgIAogICAgICB3aW5kb3cuYWRk
RXZlbnRMaXN0ZW5lcignbG9hZCcsIGluaXQsIGZhbHNlKTsKICAgIDwvc2NyaXB0PgogIDwvaGVh
ZD4KCiAgPGJvZHk+CiAgICAKICAgIDxkaXYgaWQ9InBhZ2UiPgogICAgICAgIFRoaXMgaXMgdGhl
IHRvcAogICAgPC9kaXY+CiAgICAKICA8L2JvZHk+Cgo8L2h0bWw+
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>54172</attachid>
            <date>2010-04-23 10:40:41 -0700</date>
            <delta_ts>2010-04-23 11:04:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-37955-20100423104040.patch</filename>
            <type>text/plain</type>
            <size>5664</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
MTc2MDdkNS4uYzZjYjBkYSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTIsNiArMiwzNiBAQAogCiAgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgogCisgICAgICAgIFdoZW4gd2Via2l0QW5pbWF0aW9uRW5kIGV2ZW50IGZp
cmVzLCBvbi1zY3JlZW4gcmVuZGVyaW5nIHNob3VsZCBzaG93IHRoZSBsYXN0IGZyYW1lIG9mIGFu
aW1hdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
Mzc5NTUKKworICAgICAgICBBZnRlciByMzc0ODQsIGFuaW1hdGlvbiBhbmQgdHJhbnNpdGlvbiBl
bmQgZXZlbnRzIHdlcmUgZmlyZWQgb24gYSB0aW1lciwgYWZ0ZXIgdGhlIGFuaW1hdGlvbi90cmFu
c2l0aW9uCisgICAgICAgIGVuZGVkLiBUaGlzIG9wZW5lZCB1cCBvbmUgZXZlbnQgbG9vcCBjeWNs
ZSBpbiB3aGljaCB0aGUgbm9uLWFuaW1hdGluZyBzdGF0ZSBvZiB0aGUgZWxlbWVudCB3YXMgdmlz
aWJsZQorICAgICAgICBiZWZvcmUgdGhlIGV2ZW50IGZpcmVkLCByZXN1bHRpbmcgaW4gZmxhc2hl
cyBpbiBjb250ZW50IHRoYXQgcmVzZXQgc3R5bGUgZnJvbSB0aGUgZXZlbnQgaGFuZGxlci4KKyAg
ICAgICAgCisgICAgICAgIEZpeCBieSBmaXJpbmcgdGhlc2UgZXZlbnRzIGluIHRoZSBzYW1lIGV2
ZW50IGN5Y2xlIGFzIHRoZSBhbmltYXRpb24gZW5kLCBvbmNlIGFsbCBhbmltYXRpb25zCisgICAg
ICAgIGhhdmUgYmVlbiB1cGRhdGVkLiBUaGlzIGFsc28gcmVxdWlyZWQgbW92aW5nIHRoZSBwbGFj
ZSB0aGF0IHN0YXJ0IGFuaW1hdGlvbnMgYXJlIGZpeGVkIHVudGlsCisgICAgICAgIGEgbGF0ZXIg
c3RhdGUgaW4gdGhlIHN0YXRlIG1hY2hpbmUsIHNvIHRoYXQgYW5pbWF0aW9ucyBoYXZlIHRoZWly
IHN0YXJ0IHRpbWUgc2V0IGF0IHRoZSBwb2ludAorICAgICAgICB0aGUgZXZlbnQgaXMgZmlyZWQg
KHRvIGF2b2lkIGFuIGFzc2VydGlvbiB3aGVuIHVzaW5nIHRoZSBmcmVlemUgQVBJIGluIERSVCku
CisgICAgICAgIAorICAgICAgICBOb3QgdGVzdGFibGUsIHNpbmNlIHRoZSBmbGFzaCBpcyB2ZXJ5
IHRyYW5zaXRvcnkgYW5kIGNhbm5vdCBiZSBjYXB0dXJlZCBpbiBhIHBpeGVsIHRlc3QuCisKKyAg
ICAgICAgKiBwYWdlL2FuaW1hdGlvbi9BbmltYXRpb25CYXNlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkFuaW1hdGlvbkJhc2U6OnVwZGF0ZVN0YXRlTWFjaGluZSk6IE1vdmUgdGhlIGZpcmluZyBv
ZiAnc3RhcnQnIGV2ZW50cyBpbnRvIHRoZSBzdGF0ZQorICAgICAgICB3aGVyZSB0aGUgc3RhcnQg
dGltZSBpcyBrbm93bi4KKyAgICAgICAgKiBwYWdlL2FuaW1hdGlvbi9BbmltYXRpb25Db250cm9s
bGVyUHJpdmF0ZS5oOgorICAgICAgICAqIHBhZ2UvYW5pbWF0aW9uL0FuaW1hdGlvbkNvbnRyb2xs
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QW5pbWF0aW9uQ29udHJvbGxlclByaXZhdGU6OnVw
ZGF0ZVN0eWxlSWZOZWVkZWREaXNwYXRjaGVyRmlyZWQpOiBDYWxsIHRoZSBuZXcgZmlyZUV2ZW50
c0FuZFVwZGF0ZVN0eWxlKCkKKyAgICAgICAgbWV0aG9kLgorICAgICAgICAoV2ViQ29yZTo6QW5p
bWF0aW9uQ29udHJvbGxlclByaXZhdGU6OmZpcmVFdmVudHNBbmRVcGRhdGVTdHlsZSk6IE5ldyBt
ZXRob2QgdG8gc2hhcmUgY29kZSB0aGF0IHVzZWQgdG8gYmUgaW4KKyAgICAgICAgdXBkYXRlU3R5
bGVJZk5lZWRlZERpc3BhdGNoZXJGaXJlZCgpLgorICAgICAgICAoV2ViQ29yZTo6QW5pbWF0aW9u
Q29udHJvbGxlclByaXZhdGU6OmFuaW1hdGlvblRpbWVyRmlyZWQpOiBDYWxsIGZpcmVFdmVudHNB
bmRVcGRhdGVTdHlsZSgpIG9uY2Ugd2UndmUKKyAgICAgICAgcHJvY2Vzc2VkIGFsbCBhbmltYXRp
b25zLgorCisyMDEwLTA0LTIzICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCiAgICAgICAgIENvbXBv
c2l0ZUFuaW1hdGlvbjo6dXBkYXRlS2V5ZnJhbWVBbmltYXRpb25zKCkgY2FuIG1ha2UgYSBLZXlm
cmFtZUFuaW1hdGlvbiBmb3IgYW5pbWF0aW9uICJub25lIgogICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzgwMTcKIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9w
YWdlL2FuaW1hdGlvbi9BbmltYXRpb25CYXNlLmNwcCBiL1dlYkNvcmUvcGFnZS9hbmltYXRpb24v
QW5pbWF0aW9uQmFzZS5jcHAKaW5kZXggZDkyODJjYi4uYTQ5Yzc1NCAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9wYWdlL2FuaW1hdGlvbi9BbmltYXRpb25CYXNlLmNwcAorKysgYi9XZWJDb3JlL3BhZ2Uv
YW5pbWF0aW9uL0FuaW1hdGlvbkJhc2UuY3BwCkBAIC05NTIsOSArOTUyLDYgQEAgdm9pZCBBbmlt
YXRpb25CYXNlOjp1cGRhdGVTdGF0ZU1hY2hpbmUoQW5pbVN0YXRlSW5wdXQgaW5wdXQsIGRvdWJs
ZSBwYXJhbSkKIAogICAgICAgICAgICAgb3ZlcnJpZGVBbmltYXRpb25zKCk7CiAKLSAgICAgICAg
ICAgIC8vIFNlbmQgc3RhcnQgZXZlbnQsIGlmIG5lZWRlZAotICAgICAgICAgICAgb25BbmltYXRp
b25TdGFydCgwKTsgLy8gVGhlIGVsYXBzZWRUaW1lIGlzIGFsd2F5cyAwIGhlcmUKLQogICAgICAg
ICAgICAgLy8gU3RhcnQgdGhlIGFuaW1hdGlvbgogICAgICAgICAgICAgaWYgKG92ZXJyaWRkZW4o
KSkgewogICAgICAgICAgICAgICAgIC8vIFdlIHdvbid0IHRyeSB0byBzdGFydCBhY2NlbGVyYXRl
ZCBhbmltYXRpb25zIGlmIHdlIGFyZSBvdmVycmlkZGVuIGFuZApAQCAtOTg3LDYgKzk4NCw5IEBA
IHZvaWQgQW5pbWF0aW9uQmFzZTo6dXBkYXRlU3RhdGVNYWNoaW5lKEFuaW1TdGF0ZUlucHV0IGlu
cHV0LCBkb3VibGUgcGFyYW0pCiAgICAgICAgICAgICAgICAgICAgICAgICBtX3N0YXJ0VGltZSAr
PSBtX2FuaW1hdGlvbi0+ZGVsYXkoKTsKICAgICAgICAgICAgICAgICB9CiAKKyAgICAgICAgICAg
ICAgICAvLyBOb3cgdGhhdCB3ZSBrbm93IHRoZSBzdGFydCB0aW1lLCBmaXJlIHRoZSBzdGFydCBl
dmVudC4KKyAgICAgICAgICAgICAgICBvbkFuaW1hdGlvblN0YXJ0KDApOyAvLyBUaGUgZWxhcHNl
ZFRpbWUgaXMgMC4KKwogICAgICAgICAgICAgICAgIC8vIERlY2lkZSB3aGV0aGVyIHRvIGdvIGlu
dG8gbG9vcGluZyBvciBlbmRpbmcgc3RhdGUKICAgICAgICAgICAgICAgICBnb0ludG9FbmRpbmdP
ckxvb3BpbmdTdGF0ZSgpOwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0Fu
aW1hdGlvbkNvbnRyb2xsZXIuY3BwIGIvV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9BbmltYXRpb25D
b250cm9sbGVyLmNwcAppbmRleCBjYjYwOWE1Li4zNzYxYzVhIDEwMDY0NAotLS0gYS9XZWJDb3Jl
L3BhZ2UvYW5pbWF0aW9uL0FuaW1hdGlvbkNvbnRyb2xsZXIuY3BwCisrKyBiL1dlYkNvcmUvcGFn
ZS9hbmltYXRpb24vQW5pbWF0aW9uQ29udHJvbGxlci5jcHAKQEAgLTEzNCw5ICsxMzQsMTYgQEAg
dm9pZCBBbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZTo6dXBkYXRlQW5pbWF0aW9uVGltZXIoYm9v
bCBjYWxsU2V0Q2hhbmdlZC8qID0gZmEKIAogdm9pZCBBbmltYXRpb25Db250cm9sbGVyUHJpdmF0
ZTo6dXBkYXRlU3R5bGVJZk5lZWRlZERpc3BhdGNoZXJGaXJlZChUaW1lcjxBbmltYXRpb25Db250
cm9sbGVyUHJpdmF0ZT4qKQogeworICAgIGZpcmVFdmVudHNBbmRVcGRhdGVTdHlsZSgpOworfQor
Cit2b2lkIEFuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlOjpmaXJlRXZlbnRzQW5kVXBkYXRlU3R5
bGUoKQorewogICAgIC8vIFByb3RlY3QgdGhlIGZyYW1lIGZyb20gZ2V0dGluZyBkZXN0cm95ZWQg
aW4gdGhlIGV2ZW50IGhhbmRsZXIKICAgICBSZWZQdHI8RnJhbWU+IHByb3RlY3RvciA9IG1fZnJh
bWU7CiAKKyAgICBib29sIHVwZGF0ZVN0eWxlID0gIW1fZXZlbnRzVG9EaXNwYXRjaC5pc0VtcHR5
KCkgfHwgIW1fbm9kZUNoYW5nZXNUb0Rpc3BhdGNoLmlzRW1wdHkoKTsKKyAgICAKICAgICAvLyBm
aXJlIGFsbCB0aGUgZXZlbnRzCiAgICAgVmVjdG9yPEV2ZW50VG9EaXNwYXRjaD46OmNvbnN0X2l0
ZXJhdG9yIGV2ZW50c1RvRGlzcGF0Y2hFbmQgPSBtX2V2ZW50c1RvRGlzcGF0Y2guZW5kKCk7CiAg
ICAgZm9yIChWZWN0b3I8RXZlbnRUb0Rpc3BhdGNoPjo6Y29uc3RfaXRlcmF0b3IgaXQgPSBtX2V2
ZW50c1RvRGlzcGF0Y2guYmVnaW4oKTsgaXQgIT0gZXZlbnRzVG9EaXNwYXRjaEVuZDsgKytpdCkg
ewpAQCAtMTU1LDcgKzE2Miw3IEBAIHZvaWQgQW5pbWF0aW9uQ29udHJvbGxlclByaXZhdGU6OnVw
ZGF0ZVN0eWxlSWZOZWVkZWREaXNwYXRjaGVyRmlyZWQoVGltZXI8QW5pbWF0CiAgICAgCiAgICAg
bV9ub2RlQ2hhbmdlc1RvRGlzcGF0Y2guY2xlYXIoKTsKICAgICAKLSAgICBpZiAobV9mcmFtZSkK
KyAgICBpZiAodXBkYXRlU3R5bGUgJiYgbV9mcmFtZSkKICAgICAgICAgbV9mcmFtZS0+ZG9jdW1l
bnQoKS0+dXBkYXRlU3R5bGVJZk5lZWRlZCgpOwogfQogCkBAIC0xOTYsNiArMjAzLDEwIEBAIHZv
aWQgQW5pbWF0aW9uQ29udHJvbGxlclByaXZhdGU6OmFuaW1hdGlvblRpbWVyRmlyZWQoVGltZXI8
QW5pbWF0aW9uQ29udHJvbGxlclByCiAgICAgLy8gV2hlbiB0aGUgdGltZXIgZmlyZXMsIGFsbCB3
ZSBkbyBpcyBjYWxsIHNldENoYW5nZWQgb24gYWxsIERPTSBub2RlcyB3aXRoIHJ1bm5pbmcgYW5p
bWF0aW9ucyBhbmQgdGhlbiBkbyBhbiBpbW1lZGlhdGUKICAgICAvLyB1cGRhdGVTdHlsZUlmTmVl
ZGVkLiAgSXQgd2lsbCB0aGVuIGNhbGwgYmFjayB0byB1cyB3aXRoIG5ldyBpbmZvcm1hdGlvbi4K
ICAgICB1cGRhdGVBbmltYXRpb25UaW1lcih0cnVlKTsKKworICAgIC8vIEZpcmUgZXZlbnRzIHJp
Z2h0IGF3YXksIHRvIGF2b2lkIGEgZmxhc2ggb2YgdW5hbmltYXRlZCBzdHlsZSBhZnRlciBhbiBh
bmltYXRpb24gY29tcGxldGVzLCBhbmQgYmVmb3JlCisgICAgLy8gdGhlICdlbmQnIGV2ZW50IGZp
cmVzLgorICAgIGZpcmVFdmVudHNBbmRVcGRhdGVTdHlsZSgpOwogfQogCiBib29sIEFuaW1hdGlv
bkNvbnRyb2xsZXJQcml2YXRlOjppc0FuaW1hdGluZ1Byb3BlcnR5T25SZW5kZXJlcihSZW5kZXJP
YmplY3QqIHJlbmRlcmVyLCBDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBib29sIGlzUnVubmluZ05v
dykgY29uc3QKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQW5pbWF0aW9uQ29u
dHJvbGxlclByaXZhdGUuaCBiL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQW5pbWF0aW9uQ29udHJv
bGxlclByaXZhdGUuaAppbmRleCA2ODJkZDc1Li41ZWY5MDk4IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L3BhZ2UvYW5pbWF0aW9uL0FuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlLmgKKysrIGIvV2ViQ29y
ZS9wYWdlL2FuaW1hdGlvbi9BbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZS5oCkBAIC05Miw2ICs5
Miw3IEBAIHB1YmxpYzoKICAgICAKIHByaXZhdGU6CiAgICAgdm9pZCBzdHlsZUF2YWlsYWJsZSgp
OworICAgIHZvaWQgZmlyZUV2ZW50c0FuZFVwZGF0ZVN0eWxlKCk7CiAKICAgICB0eXBlZGVmIEhh
c2hNYXA8UmVuZGVyT2JqZWN0KiwgUmVmUHRyPENvbXBvc2l0ZUFuaW1hdGlvbj4gPiBSZW5kZXJP
YmplY3RBbmltYXRpb25NYXA7CiAK
</data>
<flag name="review"
          id="38073"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>