<?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>23088</bug_id>
          
          <creation_ts>2009-01-03 01:53:59 -0800</creation_ts>
          <short_desc>CSS Transition property hangs Webkit under certain conditions</short_desc>
          <delta_ts>2009-01-16 10:27:42 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</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>P1</priority>
          <bug_severity>Major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Faruk Ates">farukates</reporter>
          <assigned_to name="Chris Marrin">cmarrin</assigned_to>
          <cc>oliver</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>104228</commentid>
    <comment_count>0</comment_count>
    <who name="Faruk Ates">farukates</who>
    <bug_when>2009-01-03 01:53:59 -0800</bug_when>
    <thetext>This line of CSS for a Transition appears to crash the latest Webkit nightly:

-webkit-transition: opacity, width .45s, .15s ease-out;


AFAICT that is totally acceptable syntax. It works in Safari 3.1.2 and it used to work in all the Nightlies I&apos;ve tried it in over the past 8-9 months or so.

Removing the distinct property definitions and replacing it with &quot;all&quot; (and only one duration) doesn&apos;t crash webkit.

Testcase attached.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104229</commentid>
    <comment_count>1</comment_count>
      <attachid>26391</attachid>
    <who name="Faruk Ates">farukates</who>
    <bug_when>2009-01-03 01:54:53 -0800</bug_when>
    <thetext>Created attachment 26391
TESTCASE: CSS Transition that crashes latest webkit nightly</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104237</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-01-03 10:36:48 -0800</bug_when>
    <thetext>Faruk: can you attach a crash log?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104238</commentid>
    <comment_count>3</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-01-03 10:37:43 -0800</bug_when>
    <thetext>I don&apos;t get a crash, but I do see a redraw issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104239</commentid>
    <comment_count>4</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-01-03 10:44:29 -0800</bug_when>
    <thetext>BTW the correct syntax is:
      -webkit-transition: opacity .45s ease-out, width .15s ease-out;
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104243</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-01-03 10:52:57 -0800</bug_when>
    <thetext>I filed bug 23090 on the redraw issue. I see no crash, so closing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104273</commentid>
    <comment_count>6</comment_count>
      <attachid>26391</attachid>
    <who name="Faruk Ates">farukates</who>
    <bug_when>2009-01-03 19:04:56 -0800</bug_when>
    <thetext>Comment on attachment 26391
TESTCASE: CSS Transition that crashes latest webkit nightly

&gt;&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
&gt;&lt;HTML&gt;&lt;HEAD&gt;
&gt;
&gt;
&gt;	&lt;META content=&quot;text/html; charset=utf-8&quot; http-equiv=&quot;Content-type&quot;/&gt;
&gt;	&lt;TITLE&gt;CSS Transition test case&lt;/TITLE&gt;
&gt;	&lt;STYLE media=&quot;screen&quot; type=&quot;text/css&quot;&gt;
&gt;		ul {
&gt;			border: 1px solid #ccc;
&gt;			width: 600px;
&gt;		}
&gt;		ul li {
&gt;			margin: 9px 0;
&gt;		}
&gt;		ul li a {
&gt;			background: blue;
&gt;			display: block;
&gt;			color: white;
&gt;			height: 63px;
&gt;			opacity: .666;
&gt;			width: 232px;
&gt;
&gt;			-webkit-transition: opacity, width .45s, .15s ease-out;
&gt;		}
&gt;		ul li a:focus,
&gt;		ul li a:hover {
&gt;			opacity: 1;
&gt;			width: 500px;
&gt;		}
&gt;	&lt;/STYLE&gt;
&gt;&lt;/HEAD&gt;&lt;BODY&gt;
&gt;	&lt;UL&gt;
&gt;		&lt;LI&gt;&lt;A rel=&quot;me&quot; href=&quot;&quot;&gt;foo&lt;/A&gt;&lt;/LI&gt;
&gt;		&lt;LI&gt;&lt;A rel=&quot;me&quot; href=&quot;&quot;&gt;bar&lt;/A&gt;&lt;/LI&gt;
&gt;		&lt;LI&gt;&lt;A rel=&quot;me&quot; href=&quot;&quot;&gt;blaat&lt;/A&gt;&lt;/LI&gt;
&gt;		&lt;LI&gt;&lt;A rel=&quot;me&quot; href=&quot;&quot;&gt;&lt;STRONG&gt;facebook.com&lt;/STRONG&gt;&lt;/A&gt;&lt;/LI&gt;
&gt;		&lt;LI&gt;&lt;A rel=&quot;me&quot; href=&quot;&quot;&gt;&lt;STRONG&gt;faruk.newsvine.com&lt;/STRONG&gt;&lt;/A&gt;&lt;/LI&gt;
&gt;	&lt;/UL&gt;
&gt;&lt;/BODY&gt;&lt;/HTML&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104274</commentid>
    <comment_count>7</comment_count>
      <attachid>26391</attachid>
    <who name="Faruk Ates">farukates</who>
    <bug_when>2009-01-03 19:05:19 -0800</bug_when>
    <thetext>Comment on attachment 26391
TESTCASE: CSS Transition that crashes latest webkit nightly

&gt;&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD XHTML 1.0 Strict//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;
&gt;&lt;HTML&gt;&lt;HEAD&gt;
&gt;
&gt;
&gt;	&lt;META content=&quot;text/html; charset=utf-8&quot; http-equiv=&quot;Content-type&quot;/&gt;
&gt;	&lt;TITLE&gt;CSS Transition test case&lt;/TITLE&gt;
&gt;	&lt;STYLE media=&quot;screen&quot; type=&quot;text/css&quot;&gt;
&gt;		ul {
&gt;			border: 1px solid #ccc;
&gt;			width: 600px;
&gt;		}
&gt;		ul li {
&gt;			margin: 9px 0;
&gt;		}
&gt;		ul li a {
&gt;			background: blue;
&gt;			display: block;
&gt;			color: white;
&gt;			height: 63px;
&gt;			opacity: .666;
&gt;			width: 232px;
&gt;
&gt;			-webkit-transition: opacity, width .45s, .15s ease-out;
&gt;		}
&gt;		ul li a:focus,
&gt;		ul li a:hover {
&gt;			opacity: 1;
&gt;			width: 500px;
&gt;		}
&gt;	&lt;/STYLE&gt;
&gt;&lt;/HEAD&gt;&lt;BODY&gt;
&gt;	&lt;UL&gt;
&gt;		&lt;LI&gt;&lt;A rel=&quot;me&quot; href=&quot;&quot;&gt;foo&lt;/A&gt;&lt;/LI&gt;
&gt;		&lt;LI&gt;&lt;A rel=&quot;me&quot; href=&quot;&quot;&gt;bar&lt;/A&gt;&lt;/LI&gt;
&gt;		&lt;LI&gt;&lt;A rel=&quot;me&quot; href=&quot;&quot;&gt;blaat&lt;/A&gt;&lt;/LI&gt;
&gt;		&lt;LI&gt;&lt;A rel=&quot;me&quot; href=&quot;&quot;&gt;&lt;STRONG&gt;facebook.com&lt;/STRONG&gt;&lt;/A&gt;&lt;/LI&gt;
&gt;		&lt;LI&gt;&lt;A rel=&quot;me&quot; href=&quot;&quot;&gt;&lt;STRONG&gt;faruk.newsvine.com&lt;/STRONG&gt;&lt;/A&gt;&lt;/LI&gt;
&gt;	&lt;/UL&gt;
&gt;&lt;/BODY&gt;&lt;/HTML&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104276</commentid>
    <comment_count>8</comment_count>
    <who name="Faruk Ates">farukates</who>
    <bug_when>2009-01-03 19:15:32 -0800</bug_when>
    <thetext>Ack, the upload ended up using the wrong version of the test case (the version where it _doesn&apos;t_ crash)!  I&apos;m adding the proper test case which does make it crash. Also, I don&apos;t seem to be getting crash reports other than notifications in console.app</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104277</commentid>
    <comment_count>9</comment_count>
      <attachid>26401</attachid>
    <who name="Faruk Ates">farukates</who>
    <bug_when>2009-01-03 19:16:20 -0800</bug_when>
    <thetext>Created attachment 26401
The proper test case.

Test case wherein it does crash (sigh).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104278</commentid>
    <comment_count>10</comment_count>
    <who name="Faruk Ates">farukates</who>
    <bug_when>2009-01-03 19:20:31 -0800</bug_when>
    <thetext>I see that the syntax has changed since I last checked the spec proposal for that (this could&apos;ve been a looooong time ago mind you), so here&apos;s what I&apos;m thinking: even though I&apos;m evidently using the wrong syntax, it a) obviously shouldn&apos;t crash the browser and b) it should _probably_ not function as a transition at all, even though it does in Safari 3.1

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104282</commentid>
    <comment_count>11</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-01-03 19:29:28 -0800</bug_when>
    <thetext>Thanks, I can reproduce a hang now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104284</commentid>
    <comment_count>12</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2009-01-03 19:37:27 -0800</bug_when>
    <thetext>The problem is that Document::updateDocumentsRendering() gets stuck in an infinite loop, because the call to doc-&gt;updateRendering() puts the document back into the changedDocuments hash via this stack:


#0  WebCore::Document::setDocumentChanged (this=0x6918200, b=true) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/Document.cpp:1078
#1  0x03940c2c in WebCore::Node::setChanged (this=0x1bc2cdb0, changeType=WebCore::AnimationStyleChange) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/Node.cpp:600
#2  0x03380366 in WebCore::AnimationBase::setChanged (node=0x1bc2cdb0) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/page/animation/AnimationBase.cpp:474
#3  0x03380786 in WebCore::AnimationBase::updateStateMachine (this=0x1bc99260, input=WebCore::AnimationBase::AnimationStateInputStartTimerFired, param=0) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/page/animation/AnimationBase.cpp:569
#4  0x03381116 in WebCore::AnimationBase::fireAnimationEventsIfNeeded (this=0x1bc99260) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/page/animation/AnimationBase.cpp:724
#5  0x03730b4e in WebCore::ImplicitAnimation::animate (this=0x1bc99260, animation=0x1bc2d680, renderer=0x1bc2d23c, currentStyle=0x1bc6f390, targetStyle=0x1bc69080, animatedStyle=@0xbfffe2b4) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/page/animation/ImplicitAnimation.cpp:84
#6  0x034a6bbb in WebCore::CompositeAnimationPrivate::animate (this=0x1bc2d2d0, renderer=0x1bc2d23c, currentStyle=0x1bc6f390, targetStyle=0x1bc69080) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/page/animation/CompositeAnimation.cpp:270
#7  0x034a6db5 in WebCore::CompositeAnimation::animate (this=0x1bc2d680, renderer=0x1bc2d23c, currentStyle=0x1bc6f390, targetStyle=0x1bc69080) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/page/animation/CompositeAnimation.cpp:596
#8  0x0338c7f9 in WebCore::AnimationController::updateAnimations (this=0x6862a08, renderer=0x1bc2d23c, newStyle=0x1bc69080) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/page/animation/AnimationController.cpp:336
#9  0x03a0437d in WebCore::RenderObject::setAnimatableStyle (this=0x1bc2d23c, style=@0xbfffe3ec) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/rendering/RenderObject.cpp:2206
#10 0x0394178b in WebCore::Node::setRenderStyle (this=0x1bc2cdb0, s=@0xbfffe43c) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/Node.cpp:1248
#11 0x035f7941 in WebCore::Element::recalcStyle (this=0x1bc2cdb0, change=WebCore::Node::NoChange) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/Element.cpp:717
#12 0x035f7bfe in WebCore::Element::recalcStyle (this=0x1bc2cb90, change=WebCore::Node::NoChange) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/Element.cpp:747
#13 0x035f7bfe in WebCore::Element::recalcStyle (this=0x1bc29a90, change=WebCore::Node::NoChange) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/Element.cpp:747
#14 0x035f7bfe in WebCore::Element::recalcStyle (this=0x1ab4d800, change=WebCore::Node::NoChange) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/Element.cpp:747
#15 0x035f7bfe in WebCore::Element::recalcStyle (this=0xaa9610, change=WebCore::Node::NoChange) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/Element.cpp:747
#16 0x035b0965 in WebCore::Document::recalcStyle (this=0x6918200, change=WebCore::Node::NoChange) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/Document.cpp:1152
#17 0x035a416d in WebCore::Document::updateRendering (this=0x6918200) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/Document.cpp:1175
#18 0x035a1828 in WebCore::Document::updateDocumentsRendering () at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/Document.cpp:1193
#19 0x0360cd08 in WebCore::EventTargetNode::dispatchGenericEvent (this=0xaa9610, prpEvent=@0xbfffe7fc, ec=@0xbfffe8bc) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/EventTargetNode.cpp:395
#20 0x0360cea0 in WebCore::EventTargetNode::dispatchEvent (this=0xaa9610, e=@0xbfffe8d8, ec=@0xbfffe8bc) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/EventTargetNode.cpp:273
#21 0x0360f7a3 in WebCore::EventTargetNode::dispatchMouseEvent (this=0xaa9610, eventType=@0xaac26c, button=-1, detail=0, pageX=223, pageY=371, screenX=263, screenY=504, ctrlKey=false, altKey=false, shiftKey=false, metaKey=false, isSimulated=false, relatedTargetArg=0x1bc2cdb0, underlyingEvent=@0xbfffe994) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/EventTargetNode.cpp:580
#22 0x0360ffdb in WebCore::EventTargetNode::dispatchMouseEvent (this=0xaa9610, event=@0xbfffecd4, eventType=@0xaac26c, detail=0, relatedTarget=0x1bc2cdb0) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/dom/EventTargetNode.cpp:489
#23 0x035fe3cc in WebCore::EventHandler::updateMouseEventTargetNode (this=0x68628f8, targetNode=0x1bc2cdb0, mouseEvent=@0xbfffecd4, fireMouseOverOut=true) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/page/EventHandler.cpp:1510
#24 0x0360166a in WebCore::EventHandler::dispatchMouseEvent (this=0x68628f8, eventType=@0xaac268, targetNode=0x1bc2cdb0, cancelable=false, clickCount=0, mouseEvent=@0xbfffecd4, setUnder=true) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/page/EventHandler.cpp:1524
#25 0x03604544 in WebCore::EventHandler::handleMouseMoveEvent (this=0x68628f8, mouseEvent=@0xbfffecd4, hoveredNode=0xbfffec6c) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/page/EventHandler.cpp:1246
#26 0x036045e5 in WebCore::EventHandler::mouseMoved (this=0x68628f8, event=@0xbfffecd4) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/page/EventHandler.cpp:1149
#27 0x036086fb in WebCore::EventHandler::mouseMoved (this=0x68628f8, event=0x1ab28db0) at /Volumes/Cassoulet/WebKit/WebKit.git/WebCore/page/mac/EventHandlerMac.mm:623
#28 0x0027957c in -[WebHTMLView(WebPrivate) _updateMouseoverWithEvent:] (self=0xaa67f0, _cmd=0x30cad1, event=0x1ab28db0) at /Volumes/Cassoulet/WebKit/WebKit.git/WebKit/mac/WebView/WebHTMLView.mm:1469
#29 0x00269828 in -[WebHTMLView mouseMovedNotification:] (self=0xaa67f0, _cmd=0x30ba30, notification=0xa1ec00) at /Volumes/Cassoulet/WebKit/WebKit.git/WebKit/mac/WebView/WebHTMLView.mm:3304
#30 0x91965e1a in _nsnote_callback ()
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>104308</commentid>
    <comment_count>13</comment_count>
      <attachid>26407</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2009-01-03 22:20:13 -0800</bug_when>
    <thetext>Created attachment 26407
Reduced the testcase to an automatic hang</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105385</commentid>
    <comment_count>14</comment_count>
      <attachid>26648</attachid>
    <who name="Chris Marrin">cmarrin</who>
    <bug_when>2009-01-12 13:43:23 -0800</bug_when>
    <thetext>Created attachment 26648
Patch, including LayoutTest file

        Fixed https://bugs.webkit.org/show_bug.cgi?id=23088.
        This was happening because I was calling setChanged() from inside updateRendering()
        which causes an infinite loop. I fixed this by deferring the setChanged to the next
        run loop iteration. That made it not infinite loop, but it still retriggers the
        transition forever. The problem is that there is both an &apos;all&apos; and specific transition
        on &apos;opacity&apos;. This tickled a bug in AnimationController which causes the opacity 
        transition to get constantly cancelled and then retriggered. The problem is that
        the specific opacity transition has a duration of 0. I got rid of the logic to 
        flush out 0 duration transitions and it is no longer constantly triggered. The
        logic to flush them was just an optimization, and you really need to keep them
        around to make the logic to override earlier animations by later ones work. And there is
        very little overhead in this case anyway, so the optimization was not that useful.

        I made a LayoutTest from the original testcase which tests both the infinite
        loop and constantly triggering animation cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105922</commentid>
    <comment_count>15</comment_count>
      <attachid>26762</attachid>
    <who name="Chris Marrin">cmarrin</who>
    <bug_when>2009-01-15 11:16:07 -0800</bug_when>
    <thetext>Created attachment 26762
Patch to update Windows project file</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105924</commentid>
    <comment_count>16</comment_count>
      <attachid>26762</attachid>
    <who name="Chris Marrin">cmarrin</who>
    <bug_when>2009-01-15 11:17:07 -0800</bug_when>
    <thetext>Comment on attachment 26762
Patch to update Windows project file

Wrong bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>105927</commentid>
    <comment_count>17</comment_count>
      <attachid>26648</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2009-01-15 11:21:09 -0800</bug_when>
    <thetext>Comment on attachment 26648
Patch, including LayoutTest file

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>106081</commentid>
    <comment_count>18</comment_count>
    <who name="Chris Marrin">cmarrin</who>
    <bug_when>2009-01-16 10:27:42 -0800</bug_when>
    <thetext>Sending        LayoutTests/ChangeLog
Sending        LayoutTests/transforms/2d/cssmatrix-interface-expected.txt
Adding         LayoutTests/transitions/hang-with-bad-transition-list-expected.txt
Adding         LayoutTests/transitions/hang-with-bad-transition-list.html
Sending        WebCore/ChangeLog
Sending        WebCore/page/animation/AnimationBase.cpp
Sending        WebCore/page/animation/AnimationController.cpp
Sending        WebCore/page/animation/AnimationController.h
Sending        WebCore/page/animation/CompositeAnimation.cpp
Sending        WebCore/rendering/style/RenderStyle.cpp
Transmitting file data ..........
Committed revision 39974.

</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>26391</attachid>
            <date>2009-01-03 01:54:53 -0800</date>
            <delta_ts>2009-01-03 19:16:20 -0800</delta_ts>
            <desc>TESTCASE: CSS Transition that crashes latest webkit nightly</desc>
            <filename>webkit-css-transition.html</filename>
            <type>text/html</type>
            <size>938</size>
            <attacher name="Faruk Ates">farukates</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgU3RyaWN0Ly9FTiIK
CSJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS1zdHJpY3QuZHRkIj4KPGh0
bWw+CjxoZWFkPgoJPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0
L2h0bWw7IGNoYXJzZXQ9dXRmLTgiPgoJPHRpdGxlPkNTUyBUcmFuc2l0aW9uIHRlc3QgY2FzZTwv
dGl0bGU+Cgk8c3R5bGUgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJzY3JlZW4iPgoJCXVsIHsKCQkJ
Ym9yZGVyOiAxcHggc29saWQgI2NjYzsKCQkJd2lkdGg6IDYwMHB4OwoJCX0KCQl1bCBsaSB7CgkJ
CW1hcmdpbjogOXB4IDA7CgkJfQoJCXVsIGxpIGEgewoJCQliYWNrZ3JvdW5kOiBibHVlOwoJCQlk
aXNwbGF5OiBibG9jazsKCQkJY29sb3I6IHdoaXRlOwoJCQloZWlnaHQ6IDYzcHg7CgkJCW9wYWNp
dHk6IC42NjY7CgkJCXdpZHRoOiAyMzJweDsKCgkJCS13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0
eSwgd2lkdGggLjQ1cywgLjE1cyBlYXNlLW91dCwgZWFzZS1vdXQ7CgkJfQoJCXVsIGxpIGE6Zm9j
dXMsCgkJdWwgbGkgYTpob3ZlciB7CgkJCW9wYWNpdHk6IDE7CgkJCXdpZHRoOiA1MDBweDsKCQl9
Cgk8L3N0eWxlPgo8L2hlYWQ+Cgo8Ym9keT4KCTx1bD4KCQk8bGk+PGEgaHJlZj0iIiByZWw9Im1l
Ij5mb288L2E+PC9saT4KCQk8bGk+PGEgaHJlZj0iIiByZWw9Im1lIj5iYXI8L2E+PC9saT4KCQk8
bGk+PGEgaHJlZj0iIiByZWw9Im1lIj5ibGFhdDwvYT48L2xpPgoJCTxsaT48YSBocmVmPSIiIHJl
bD0ibWUiPjxzdHJvbmc+ZmFjZWJvb2suY29tPC9zdHJvbmc+PC9hPjwvbGk+CgkJPGxpPjxhIGhy
ZWY9IiIgcmVsPSJtZSI+PHN0cm9uZz5mYXJ1ay5uZXdzdmluZS5jb208L3N0cm9uZz48L2E+PC9s
aT4KCTwvdWw+CjwvYm9keT4KCjwvaHRtbD4=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>26401</attachid>
            <date>2009-01-03 19:16:20 -0800</date>
            <delta_ts>2009-01-03 19:16:20 -0800</delta_ts>
            <desc>The proper test case.</desc>
            <filename>webkit-css-transition.html</filename>
            <type>text/html</type>
            <size>928</size>
            <attacher name="Faruk Ates">farukates</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgU3RyaWN0Ly9FTiIK
CSJodHRwOi8vd3d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS1zdHJpY3QuZHRkIj4KPGh0
bWw+CjxoZWFkPgoJPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0
L2h0bWw7IGNoYXJzZXQ9dXRmLTgiPgoJPHRpdGxlPkNTUyBUcmFuc2l0aW9uIHRlc3QgY2FzZTwv
dGl0bGU+Cgk8c3R5bGUgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJzY3JlZW4iPgoJCXVsIHsKCQkJ
Ym9yZGVyOiAxcHggc29saWQgI2NjYzsKCQkJd2lkdGg6IDYwMHB4OwoJCX0KCQl1bCBsaSB7CgkJ
CW1hcmdpbjogOXB4IDA7CgkJfQoJCXVsIGxpIGEgewoJCQliYWNrZ3JvdW5kOiBibHVlOwoJCQlk
aXNwbGF5OiBibG9jazsKCQkJY29sb3I6IHdoaXRlOwoJCQloZWlnaHQ6IDYzcHg7CgkJCW9wYWNp
dHk6IC42NjY7CgkJCXdpZHRoOiAyMzJweDsKCgkJCS13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0
eSwgd2lkdGggLjQ1cywgLjE1cyBlYXNlLW91dDsKCQl9CgkJdWwgbGkgYTpmb2N1cywKCQl1bCBs
aSBhOmhvdmVyIHsKCQkJb3BhY2l0eTogMTsKCQkJd2lkdGg6IDUwMHB4OwoJCX0KCTwvc3R5bGU+
CjwvaGVhZD4KCjxib2R5PgoJPHVsPgoJCTxsaT48YSBocmVmPSIiIHJlbD0ibWUiPmZvbzwvYT48
L2xpPgoJCTxsaT48YSBocmVmPSIiIHJlbD0ibWUiPmJhcjwvYT48L2xpPgoJCTxsaT48YSBocmVm
PSIiIHJlbD0ibWUiPmJsYWF0PC9hPjwvbGk+CgkJPGxpPjxhIGhyZWY9IiIgcmVsPSJtZSI+PHN0
cm9uZz5mYWNlYm9vay5jb208L3N0cm9uZz48L2E+PC9saT4KCQk8bGk+PGEgaHJlZj0iIiByZWw9
Im1lIj48c3Ryb25nPmZhcnVrLm5ld3N2aW5lLmNvbTwvc3Ryb25nPjwvYT48L2xpPgoJPC91bD4K
PC9ib2R5PgoKPC9odG1sPg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>26407</attachid>
            <date>2009-01-03 22:20:13 -0800</date>
            <delta_ts>2009-01-03 22:20:13 -0800</delta_ts>
            <desc>Reduced the testcase to an automatic hang</desc>
            <filename>webkit-css-transition.html</filename>
            <type>text/html</type>
            <size>245</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxzdHlsZT4KICAgIHNwYW4gewoJCWJhY2tncm91bmQ6IGJsdWU7CgkJ
b3BhY2l0eTogLjY2NjsKCQktd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHksIC40NXMsIC4xNXMg
ZWFzZS1vdXQ7Cgl9Cjwvc3R5bGU+CjxzcGFuIGlkPSJkb29tU3BhbiI+QXJnaCE8L3NwYW4+Cjxz
Y3JpcHQ+CiAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG9vbVNwYW4iKS5zdHlsZS5vcGFj
aXR5PTE7Cjwvc2NyaXB0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>26648</attachid>
            <date>2009-01-12 13:43:23 -0800</date>
            <delta_ts>2009-01-15 11:21:09 -0800</delta_ts>
            <desc>Patch, including LayoutTest file</desc>
            <filename>23088.patch</filename>
            <type>text/plain</type>
            <size>13327</size>
            <attacher name="Chris Marrin">cmarrin</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzOTgzMikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzggQEAKKzIwMDktMDEtMTIgIENocmlzIE1hcnJpbiAgPGNtYXJyaW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRl
c3Q6IHRyYW5zaXRpb25zL2hhbmctd2l0aC1iYWQtdHJhbnNpdGlvbi1saXN0Lmh0bWwKKworICAg
ICAgICBGaXhlZCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjMwODgu
CisgICAgICAgIFRoaXMgd2FzIGhhcHBlbmluZyBiZWNhdXNlIEkgd2FzIGNhbGxpbmcgc2V0Q2hh
bmdlZCgpIGZyb20gaW5zaWRlIHVwZGF0ZVJlbmRlcmluZygpCisgICAgICAgIHdoaWNoIGNhdXNl
cyBhbiBpbmZpbml0ZSBsb29wLiBJIGZpeGVkIHRoaXMgYnkgZGVmZXJyaW5nIHRoZSBzZXRDaGFu
Z2VkIHRvIHRoZSBuZXh0CisgICAgICAgIHJ1biBsb29wIGl0ZXJhdGlvbi4gVGhhdCBtYWRlIGl0
IG5vdCBpbmZpbml0ZSBsb29wLCBidXQgaXQgc3RpbGwgcmV0cmlnZ2VycyB0aGUKKyAgICAgICAg
dHJhbnNpdGlvbiBmb3JldmVyLiBUaGUgcHJvYmxlbSBpcyB0aGF0IHRoZXJlIGlzIGJvdGggYW4g
J2FsbCcgYW5kIHNwZWNpZmljIHRyYW5zaXRpb24KKyAgICAgICAgb24gJ29wYWNpdHknLiBUaGlz
IHRpY2tsZWQgYSBidWcgaW4gQW5pbWF0aW9uQ29udHJvbGxlciB3aGljaCBjYXVzZXMgdGhlIG9w
YWNpdHkgCisgICAgICAgIHRyYW5zaXRpb24gdG8gZ2V0IGNvbnN0YW50bHkgY2FuY2VsbGVkIGFu
ZCB0aGVuIHJldHJpZ2dlcmVkLiBUaGUgcHJvYmxlbSBpcyB0aGF0CisgICAgICAgIHRoZSBzcGVj
aWZpYyBvcGFjaXR5IHRyYW5zaXRpb24gaGFzIGEgZHVyYXRpb24gb2YgMC4gSSBnb3QgcmlkIG9m
IHRoZSBsb2dpYyB0byAKKyAgICAgICAgZmx1c2ggb3V0IDAgZHVyYXRpb24gdHJhbnNpdGlvbnMg
YW5kIGl0IGlzIG5vIGxvbmdlciBjb25zdGFudGx5IHRyaWdnZXJlZC4gVGhlCisgICAgICAgIGxv
Z2ljIHRvIGZsdXNoIHRoZW0gd2FzIGp1c3QgYW4gb3B0aW1pemF0aW9uLCBhbmQgeW91IHJlYWxs
eSBuZWVkIHRvIGtlZXAgdGhlbQorICAgICAgICBhcm91bmQgdG8gbWFrZSB0aGUgbG9naWMgdG8g
b3ZlcnJpZGUgZWFybGllciBhbmltYXRpb25zIGJ5IGxhdGVyIG9uZXMgd29yay4gQW5kIHRoZXJl
IGlzCisgICAgICAgIHZlcnkgbGl0dGxlIG92ZXJoZWFkIGluIHRoaXMgY2FzZSBhbnl3YXksIHNv
IHRoZSBvcHRpbWl6YXRpb24gd2FzIG5vdCB0aGF0IHVzZWZ1bC4KKworICAgICAgICBJIG1hZGUg
YSBMYXlvdXRUZXN0IGZyb20gdGhlIG9yaWdpbmFsIHRlc3RjYXNlIHdoaWNoIHRlc3RzIGJvdGgg
dGhlIGluZmluaXRlCisgICAgICAgIGxvb3AgYW5kIGNvbnN0YW50bHkgdHJpZ2dlcmluZyBhbmlt
YXRpb24gY2FzZXMuCisKKyAgICAgICAgKiBwYWdlL2FuaW1hdGlvbi9BbmltYXRpb25CYXNlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkFuaW1hdGlvbkJhc2U6OnVwZGF0ZVN0YXRlTWFjaGluZSk6
CisgICAgICAgICogcGFnZS9hbmltYXRpb24vQW5pbWF0aW9uQ29udHJvbGxlci5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpBbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZTo6dXBkYXRlUmVuZGVyaW5n
RGlzcGF0Y2hlckZpcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OkFuaW1hdGlvbkNvbnRyb2xsZXJQ
cml2YXRlOjphZGROb2RlQ2hhbmdlVG9EaXNwYXRjaCk6CisgICAgICAgIChXZWJDb3JlOjpBbmlt
YXRpb25Db250cm9sbGVyOjphZGROb2RlQ2hhbmdlVG9EaXNwYXRjaCk6CisgICAgICAgICogcGFn
ZS9hbmltYXRpb24vQW5pbWF0aW9uQ29udHJvbGxlci5oOgorICAgICAgICAqIHBhZ2UvYW5pbWF0
aW9uL0NvbXBvc2l0ZUFuaW1hdGlvbi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDb21wb3NpdGVB
bmltYXRpb25Qcml2YXRlOjp1cGRhdGVUcmFuc2l0aW9ucyk6CisgICAgICAgICogcmVuZGVyaW5n
L3N0eWxlL1JlbmRlclN0eWxlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjph
ZGp1c3RBbmltYXRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjphZGp1c3RU
cmFuc2l0aW9ucyk6CisKIDIwMDktMDEtMTIgIEp1bGllbiBDaGFmZnJhaXggIDxqY2hhZmZyYWl4
QHBsZXlvLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBIb2xnZXIgRnJleXRoZXIuCkluZGV4
OiBXZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0FuaW1hdGlvbkJhc2UuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvcGFnZS9hbmltYXRpb24vQW5pbWF0aW9uQmFzZS5jcHAJKHJldmlzaW9uIDM5ODI5
KQorKysgV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9BbmltYXRpb25CYXNlLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNTY1LDggKzU2NSw4IEBAIHZvaWQgQW5pbWF0aW9uQmFzZTo6dXBkYXRlU3RhdGVN
YWNoaW5lKEEKICAgICAgICAgICAgICAgICBtX2NvbXBBbmltLT5zZXRXYWl0aW5nRm9yU3R5bGVB
dmFpbGFibGUodHJ1ZSk7CiAKICAgICAgICAgICAgICAgICAvLyBUcmlnZ2VyIGEgcmVuZGVyIHNv
IHdlIGNhbiBzdGFydCB0aGUgYW5pbWF0aW9uCi0gICAgICAgICAgICAgICAgc2V0Q2hhbmdlZCht
X29iamVjdC0+ZWxlbWVudCgpKTsKLSAgICAgICAgICAgICAgICBtX29iamVjdC0+YW5pbWF0aW9u
KCktPnN0YXJ0VXBkYXRlUmVuZGVyaW5nRGlzcGF0Y2hlcigpOworICAgICAgICAgICAgICAgIGlm
IChtX29iamVjdCkKKyAgICAgICAgICAgICAgICAgICAgbV9vYmplY3QtPmFuaW1hdGlvbigpLT5h
ZGROb2RlQ2hhbmdlVG9EaXNwYXRjaChtX29iamVjdC0+ZWxlbWVudCgpKTsKICAgICAgICAgICAg
IH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgQVNTRVJUKCFwYXVzZWQoKSk7CiAgICAgICAgICAg
ICAgICAgLy8gV2UncmUgd2FpdGluZyBmb3IgdGhlIHN0YXJ0IHRpbWVyIHRvIGZpcmUgYW5kIHdl
IGdvdCBhIHBhdXNlLiBDYW5jZWwgdGhlIHRpbWVyLCBwYXVzZSBhbmQgd2FpdApAQCAtNjA3LDEx
ICs2MDcsOSBAQCB2b2lkIEFuaW1hdGlvbkJhc2U6OnVwZGF0ZVN0YXRlTWFjaGluZShBCiAgICAg
ICAgICAgICAgICAgLy8gRGVjaWRlIHdoZXRoZXIgdG8gZ28gaW50byBsb29waW5nIG9yIGVuZGlu
ZyBzdGF0ZQogICAgICAgICAgICAgICAgIGdvSW50b0VuZGluZ09yTG9vcGluZ1N0YXRlKCk7CiAK
LSAgICAgICAgICAgICAgICAvLyBUcmlnZ2VyIGEgcmVuZGVyIHNvIHdlIGNhbiBzdGFydCB0aGUg
YW5pbWF0aW9uCi0gICAgICAgICAgICAgICAgaWYgKG1fb2JqZWN0KSB7Ci0gICAgICAgICAgICAg
ICAgICAgIHNldENoYW5nZWQobV9vYmplY3QtPmVsZW1lbnQoKSk7Ci0gICAgICAgICAgICAgICAg
ICAgIG1fY29tcEFuaW0tPmFuaW1hdGlvbkNvbnRyb2xsZXIoKS0+c3RhcnRVcGRhdGVSZW5kZXJp
bmdEaXNwYXRjaGVyKCk7Ci0gICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIC8vIERp
c3BhdGNoIHVwZGF0ZVJlbmRlcmluZyBzbyB3ZSBjYW4gc3RhcnQgdGhlIGFuaW1hdGlvbgorICAg
ICAgICAgICAgICAgIGlmIChtX29iamVjdCkKKyAgICAgICAgICAgICAgICAgICAgbV9vYmplY3Qt
PmFuaW1hdGlvbigpLT5hZGROb2RlQ2hhbmdlVG9EaXNwYXRjaChtX29iamVjdC0+ZWxlbWVudCgp
KTsKICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgLy8gV2UgYXJlIHBhdXNp
bmcgd2hpbGUgd2FpdGluZyBmb3IgYSBzdGFydCByZXNwb25zZS4gQ2FuY2VsIHRoZSBhbmltYXRp
b24gYW5kIHdhaXQuIFdoZW4gCiAgICAgICAgICAgICAgICAgLy8gd2UgdW5wYXVzZSwgd2Ugd2ls
bCBhY3QgYXMgdGhvdWdoIHRoZSBzdGFydCB0aW1lciBqdXN0IGZpcmVkCkBAIC02NTEsOCArNjQ5
LDcgQEAgdm9pZCBBbmltYXRpb25CYXNlOjp1cGRhdGVTdGF0ZU1hY2hpbmUoQQogICAgICAgICAg
ICAgICAgICAgICByZXN1bWVPdmVycmlkZGVuQW5pbWF0aW9ucygpOwogCiAgICAgICAgICAgICAg
ICAgICAgIC8vIEZpcmUgb2ZmIGFub3RoZXIgc3R5bGUgY2hhbmdlIHNvIHdlIGNhbiBzZXQgdGhl
IGZpbmFsIHZhbHVlCi0gICAgICAgICAgICAgICAgICAgIHNldENoYW5nZWQobV9vYmplY3QtPmVs
ZW1lbnQoKSk7Ci0gICAgICAgICAgICAgICAgICAgIG1fb2JqZWN0LT5hbmltYXRpb24oKS0+c3Rh
cnRVcGRhdGVSZW5kZXJpbmdEaXNwYXRjaGVyKCk7CisgICAgICAgICAgICAgICAgICAgIG1fb2Jq
ZWN0LT5hbmltYXRpb24oKS0+YWRkTm9kZUNoYW5nZVRvRGlzcGF0Y2gobV9vYmplY3QtPmVsZW1l
bnQoKSk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAg
ICAgICAgICAvLyBXZSBhcmUgcGF1c2luZyB3aGlsZSBydW5uaW5nLiBDYW5jZWwgdGhlIGFuaW1h
dGlvbiBhbmQgd2FpdApJbmRleDogV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9BbmltYXRpb25Db250
cm9sbGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0FuaW1hdGlv
bkNvbnRyb2xsZXIuY3BwCShyZXZpc2lvbiAzOTgyOSkKKysrIFdlYkNvcmUvcGFnZS9hbmltYXRp
b24vQW5pbWF0aW9uQ29udHJvbGxlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTU0LDYgKzU0LDcg
QEAgcHVibGljOgogICAgIHZvaWQgdXBkYXRlUmVuZGVyaW5nRGlzcGF0Y2hlckZpcmVkKFRpbWVy
PEFuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlPiopOwogICAgIHZvaWQgc3RhcnRVcGRhdGVSZW5k
ZXJpbmdEaXNwYXRjaGVyKCk7CiAgICAgdm9pZCBhZGRFdmVudFRvRGlzcGF0Y2goUGFzc1JlZlB0
cjxFbGVtZW50PiBlbGVtZW50LCBjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgY29uc3Qg
U3RyaW5nJiBuYW1lLCBkb3VibGUgZWxhcHNlZFRpbWUpOworICAgIHZvaWQgYWRkTm9kZUNoYW5n
ZVRvRGlzcGF0Y2goUGFzc1JlZlB0cjxOb2RlPik7CiAKICAgICBib29sIGhhc0FuaW1hdGlvbnMo
KSBjb25zdCB7IHJldHVybiAhbV9jb21wb3NpdGVBbmltYXRpb25zLmlzRW1wdHkoKTsgfQogCkBA
IC05NCw2ICs5NSw3IEBAIHByaXZhdGU6CiAgICAgfTsKICAgICAKICAgICBWZWN0b3I8RXZlbnRU
b0Rpc3BhdGNoPiBtX2V2ZW50c1RvRGlzcGF0Y2g7CisgICAgVmVjdG9yPFJlZlB0cjxOb2RlPiA+
IG1fbm9kZUNoYW5nZXNUb0Rpc3BhdGNoOwogICAgIAogICAgIGRvdWJsZSBtX2JlZ2luQW5pbWF0
aW9uVXBkYXRlVGltZTsKIH07CkBAIC0xOTksOCArMjAxLDggQEAgdm9pZCBBbmltYXRpb25Db250
cm9sbGVyUHJpdmF0ZTo6dXBkYXRlQQogdm9pZCBBbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZTo6
dXBkYXRlUmVuZGVyaW5nRGlzcGF0Y2hlckZpcmVkKFRpbWVyPEFuaW1hdGlvbkNvbnRyb2xsZXJQ
cml2YXRlPiopCiB7CiAgICAgLy8gZmlyZSBhbGwgdGhlIGV2ZW50cwotICAgIFZlY3RvcjxFdmVu
dFRvRGlzcGF0Y2g+Ojpjb25zdF9pdGVyYXRvciBlbmQgPSBtX2V2ZW50c1RvRGlzcGF0Y2guZW5k
KCk7Ci0gICAgZm9yIChWZWN0b3I8RXZlbnRUb0Rpc3BhdGNoPjo6Y29uc3RfaXRlcmF0b3IgaXQg
PSBtX2V2ZW50c1RvRGlzcGF0Y2guYmVnaW4oKTsgaXQgIT0gZW5kOyArK2l0KSB7CisgICAgVmVj
dG9yPEV2ZW50VG9EaXNwYXRjaD46OmNvbnN0X2l0ZXJhdG9yIGV2ZW50c1RvRGlzcGF0Y2hFbmQg
PSBtX2V2ZW50c1RvRGlzcGF0Y2guZW5kKCk7CisgICAgZm9yIChWZWN0b3I8RXZlbnRUb0Rpc3Bh
dGNoPjo6Y29uc3RfaXRlcmF0b3IgaXQgPSBtX2V2ZW50c1RvRGlzcGF0Y2guYmVnaW4oKTsgaXQg
IT0gZXZlbnRzVG9EaXNwYXRjaEVuZDsgKytpdCkgewogICAgICAgICBpZiAoaXQtPmV2ZW50VHlw
ZSA9PSBldmVudE5hbWVzKCkud2Via2l0VHJhbnNpdGlvbkVuZEV2ZW50KQogICAgICAgICAgICAg
aXQtPmVsZW1lbnQtPmRpc3BhdGNoV2ViS2l0VHJhbnNpdGlvbkV2ZW50KGl0LT5ldmVudFR5cGUs
aXQtPm5hbWUsIGl0LT5lbGFwc2VkVGltZSk7CiAgICAgICAgIGVsc2UKQEAgLTIwOSw2ICsyMTEs
MTMgQEAgdm9pZCBBbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZTo6dXBkYXRlUgogICAgIAogICAg
IG1fZXZlbnRzVG9EaXNwYXRjaC5jbGVhcigpOwogICAgIAorICAgIC8vIGNhbGwgc2V0Q2hhbmdl
ZCBvbiBhbGwgdGhlIGVsZW1lbnRzCisgICAgVmVjdG9yPFJlZlB0cjxOb2RlPiA+Ojpjb25zdF9p
dGVyYXRvciBub2RlQ2hhbmdlc1RvRGlzcGF0Y2hFbmQgPSBtX25vZGVDaGFuZ2VzVG9EaXNwYXRj
aC5lbmQoKTsKKyAgICBmb3IgKFZlY3RvcjxSZWZQdHI8Tm9kZT4gPjo6Y29uc3RfaXRlcmF0b3Ig
aXQgPSBtX25vZGVDaGFuZ2VzVG9EaXNwYXRjaC5iZWdpbigpOyBpdCAhPSBub2RlQ2hhbmdlc1Rv
RGlzcGF0Y2hFbmQ7ICsraXQpCisgICAgICAgICgqaXQpLT5zZXRDaGFuZ2VkKEFuaW1hdGlvblN0
eWxlQ2hhbmdlKTsKKyAgICAKKyAgICBtX25vZGVDaGFuZ2VzVG9EaXNwYXRjaC5jbGVhcigpOwor
ICAgIAogICAgIGlmIChtX2ZyYW1lICYmIG1fZnJhbWUtPmRvY3VtZW50KCkpCiAgICAgICAgIG1f
ZnJhbWUtPmRvY3VtZW50KCktPnVwZGF0ZVJlbmRlcmluZygpOwogfQpAQCAtMjMxLDYgKzI0MCwx
MiBAQCB2b2lkIEFuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlOjphZGRFdmVuCiAgICAgc3RhcnRV
cGRhdGVSZW5kZXJpbmdEaXNwYXRjaGVyKCk7CiB9CiAKK3ZvaWQgQW5pbWF0aW9uQ29udHJvbGxl
clByaXZhdGU6OmFkZE5vZGVDaGFuZ2VUb0Rpc3BhdGNoKFBhc3NSZWZQdHI8Tm9kZT4gbm9kZSkK
K3sKKyAgICBtX25vZGVDaGFuZ2VzVG9EaXNwYXRjaC5hcHBlbmQobm9kZSk7CisgICAgc3RhcnRV
cGRhdGVSZW5kZXJpbmdEaXNwYXRjaGVyKCk7Cit9CisKIHZvaWQgQW5pbWF0aW9uQ29udHJvbGxl
clByaXZhdGU6OmFuaW1hdGlvblRpbWVyRmlyZWQoVGltZXI8QW5pbWF0aW9uQ29udHJvbGxlclBy
aXZhdGU+KikKIHsKICAgICAvLyBNYWtlIHN1cmUgYW5pbWF0aW9uVXBkYXRlVGltZSBpcyB1cGRh
dGVkLCBzbyB0aGF0IGl0IGlzIGN1cnJlbnQgZXZlbiBpZiBubwpAQCAtNDMxLDYgKzQ0NiwxMyBA
QCB2b2lkIEFuaW1hdGlvbkNvbnRyb2xsZXI6OmFkZEV2ZW50VG9EaXNwCiAgICAgbV9kYXRhLT5h
ZGRFdmVudFRvRGlzcGF0Y2goZWxlbWVudCwgZXZlbnRUeXBlLCBuYW1lLCBlbGFwc2VkVGltZSk7
CiB9CiAKK3ZvaWQgQW5pbWF0aW9uQ29udHJvbGxlcjo6YWRkTm9kZUNoYW5nZVRvRGlzcGF0Y2go
UGFzc1JlZlB0cjxOb2RlPiBub2RlKQoreworICAgIEFTU0VSVCghbm9kZSB8fCAobm9kZS0+ZG9j
dW1lbnQoKSAmJiAhbm9kZS0+ZG9jdW1lbnQoKS0+aW5QYWdlQ2FjaGUoKSkpOworICAgIGlmIChu
b2RlKQorICAgICAgICBtX2RhdGEtPmFkZE5vZGVDaGFuZ2VUb0Rpc3BhdGNoKG5vZGUpOworfQor
CiB2b2lkIEFuaW1hdGlvbkNvbnRyb2xsZXI6OnN0eWxlQXZhaWxhYmxlKCkKIHsKICAgICBpZiAo
IW1fbnVtU3R5bGVBdmFpbGFibGVXYWl0ZXJzKQpJbmRleDogV2ViQ29yZS9wYWdlL2FuaW1hdGlv
bi9BbmltYXRpb25Db250cm9sbGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL2FuaW1h
dGlvbi9BbmltYXRpb25Db250cm9sbGVyLmgJKHJldmlzaW9uIDM5ODI5KQorKysgV2ViQ29yZS9w
YWdlL2FuaW1hdGlvbi9BbmltYXRpb25Db250cm9sbGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTY1
LDYgKzY1LDcgQEAgcHVibGljOgogCiAgICAgdm9pZCBzdGFydFVwZGF0ZVJlbmRlcmluZ0Rpc3Bh
dGNoZXIoKTsKICAgICB2b2lkIGFkZEV2ZW50VG9EaXNwYXRjaChQYXNzUmVmUHRyPEVsZW1lbnQ+
LCBjb25zdCBBdG9taWNTdHJpbmcmIGV2ZW50VHlwZSwgY29uc3QgU3RyaW5nJiBuYW1lLCBkb3Vi
bGUgZWxhcHNlZFRpbWUpOworICAgIHZvaWQgYWRkTm9kZUNoYW5nZVRvRGlzcGF0Y2goUGFzc1Jl
ZlB0cjxOb2RlPik7CiAKICAgICB2b2lkIHN0eWxlQXZhaWxhYmxlKCk7CiAKSW5kZXg6IFdlYkNv
cmUvcGFnZS9hbmltYXRpb24vQ29tcG9zaXRlQW5pbWF0aW9uLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0NvbXBvc2l0ZUFuaW1hdGlvbi5jcHAJKHJldmlzaW9uIDM5
ODI5KQorKysgV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9Db21wb3NpdGVBbmltYXRpb24uY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0xNjYsMTQgKzE2NiwxMiBAQCB2b2lkIENvbXBvc2l0ZUFuaW1hdGlv
blByaXZhdGU6OnVwZGF0ZVRyCiAgICAgICAgICAgICBib29sIGVxdWFsID0gdHJ1ZTsKIAogICAg
ICAgICAgICAgaWYgKGltcGxBbmltKSB7Ci0gICAgICAgICAgICAgICAvLyBUaGlzIGltcGxBbmlt
IG1pZ2h0IG5vdCBiZSBhbiBhbHJlYWR5IHJ1bm5pbmcgdHJhbnNpdGlvbi4gSXQgbWlnaHQgYmUK
LSAgICAgICAgICAgICAgIC8vIG5ld2x5IGFkZGVkIHRvIHRoZSBsaXN0IGluIGEgcHJldmlvdXMg
aXRlcmF0aW9uLiBUaGlzIHdvdWxkIGhhcHBlbiBpZgotICAgICAgICAgICAgICAgLy8geW91IGhh
dmUgYm90aCBhbiBleHBsaWNpdCB0cmFuc2l0aW9uLXByb3BlcnR5IGFuZCAnYWxsJyBpbiB0aGUg
c2FtZQotICAgICAgICAgICAgICAgLy8gbGlzdC4gSW4gdGhpcyBjYXNlLCB0aGUgbGF0dGVyIG9u
ZSBvdmVycmlkZXMgdGhlIGVhcmxpZXIgb25lLCBzbyB3ZQotICAgICAgICAgICAgICAgLy8gYmVo
YXZlIGFzIHRob3VnaCB0aGlzIGlzIGEgcnVubmluZyBhbmltYXRpb24gYmVpbmcgcmVwbGFjZWQu
Ci0gICAgICAgICAgICAgICAgaWYgKCFpc0FjdGl2ZVRyYW5zaXRpb24pCi0gICAgICAgICAgICAg
ICAgICAgIG1fdHJhbnNpdGlvbnMucmVtb3ZlKHByb3ApOwotICAgICAgICAgICAgICAgIGVsc2Ug
aWYgKCFpbXBsQW5pbS0+aXNUYXJnZXRQcm9wZXJ0eUVxdWFsKHByb3AsIHRhcmdldFN0eWxlKSkg
eworICAgICAgICAgICAgICAgIC8vIFRoaXMgaW1wbEFuaW0gbWlnaHQgbm90IGJlIGFuIGFscmVh
ZHkgcnVubmluZyB0cmFuc2l0aW9uLiBJdCBtaWdodCBiZQorICAgICAgICAgICAgICAgIC8vIG5l
d2x5IGFkZGVkIHRvIHRoZSBsaXN0IGluIGEgcHJldmlvdXMgaXRlcmF0aW9uLiBUaGlzIHdvdWxk
IGhhcHBlbiBpZgorICAgICAgICAgICAgICAgIC8vIHlvdSBoYXZlIGJvdGggYW4gZXhwbGljaXQg
dHJhbnNpdGlvbi1wcm9wZXJ0eSBhbmQgJ2FsbCcgaW4gdGhlIHNhbWUKKyAgICAgICAgICAgICAg
ICAvLyBsaXN0LiBJbiB0aGlzIGNhc2UsIHRoZSBsYXR0ZXIgb25lIG92ZXJyaWRlcyB0aGUgZWFy
bGllciBvbmUsIHNvIHdlCisgICAgICAgICAgICAgICAgLy8gYmVoYXZlIGFzIHRob3VnaCB0aGlz
IGlzIGEgcnVubmluZyBhbmltYXRpb24gYmVpbmcgcmVwbGFjZWQuCisgICAgICAgICAgICAgICAg
aWYgKCFpbXBsQW5pbS0+aXNUYXJnZXRQcm9wZXJ0eUVxdWFsKHByb3AsIHRhcmdldFN0eWxlKSkg
ewogICAgICAgICAgICAgICAgICAgICBtX3RyYW5zaXRpb25zLnJlbW92ZShwcm9wKTsKICAgICAg
ICAgICAgICAgICAgICAgZXF1YWwgPSBmYWxzZTsKICAgICAgICAgICAgICAgICB9CkluZGV4OiBX
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCShyZXZpc2lvbiAzOTgyOSkKKysr
IFdlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNzUxLDcgKzc1MSw3IEBAIHZvaWQgUmVuZGVyU3R5bGU6OmFkanVzdEFuaW1hdGlvbnMoKQog
ICAgIGlmICghYW5pbWF0aW9uTGlzdCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgLy8gZ2V0IHJp
ZCBvZiBlbXB0eSB0cmFuc2l0aW9ucyBhbmQgYW55dGhpbmcgYmV5b25kIHRoZW0KKyAgICAvLyBH
ZXQgcmlkIG9mIGVtcHR5IGFuaW1hdGlvbnMgYW5kIGFueXRoaW5nIGJleW9uZCB0aGVtCiAgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBhbmltYXRpb25MaXN0LT5zaXplKCk7ICsraSkgewogICAg
ICAgICBpZiAoYW5pbWF0aW9uTGlzdC0+YW5pbWF0aW9uKGkpLT5pc0VtcHR5KCkpIHsKICAgICAg
ICAgICAgIGFuaW1hdGlvbkxpc3QtPnJlc2l6ZShpKTsKQEAgLTc3NCw3ICs3NzQsNyBAQCB2b2lk
IFJlbmRlclN0eWxlOjphZGp1c3RUcmFuc2l0aW9ucygpCiAgICAgaWYgKCF0cmFuc2l0aW9uTGlz
dCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgLy8gZ2V0IHJpZCBvZiBlbXB0eSB0cmFuc2l0aW9u
cyBhbmQgYW55dGhpbmcgYmV5b25kIHRoZW0KKyAgICAvLyBHZXQgcmlkIG9mIGVtcHR5IHRyYW5z
aXRpb25zIGFuZCBhbnl0aGluZyBiZXlvbmQgdGhlbQogICAgIGZvciAoc2l6ZV90IGkgPSAwOyBp
IDwgdHJhbnNpdGlvbkxpc3QtPnNpemUoKTsgKytpKSB7CiAgICAgICAgIGlmICh0cmFuc2l0aW9u
TGlzdC0+YW5pbWF0aW9uKGkpLT5pc0VtcHR5KCkpIHsKICAgICAgICAgICAgIHRyYW5zaXRpb25M
aXN0LT5yZXNpemUoaSk7CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAzOTgzMikKKysrIExheW91dFRlc3Rz
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEyIEBACisyMDA5LTAxLTEyICBD
aHJpcyBNYXJyaW4gIDxjbWFycmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHRyYW5zaXRpb25zL2hhbmctd2l0aC1iYWQtdHJh
bnNpdGlvbi1saXN0LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogdHJhbnNpdGlvbnMv
aGFuZy13aXRoLWJhZC10cmFuc2l0aW9uLWxpc3QuaHRtbDogQWRkZWQuCisKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDg4CisKIDIwMDktMDEtMTIg
IEVyaWMgUm9tYW4gIDxlcm9tYW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5
IERhcmluIEFkbGVyLgpJbmRleDogTGF5b3V0VGVzdHMvdHJhbnNpdGlvbnMvaGFuZy13aXRoLWJh
ZC10cmFuc2l0aW9uLWxpc3QtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L3RyYW5zaXRpb25zL2hhbmctd2l0aC1iYWQtdHJhbnNpdGlvbi1saXN0LWV4cGVjdGVkLnR4dAko
cmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3RyYW5zaXRpb25zL2hhbmctd2l0aC1iYWQtdHJh
bnNpdGlvbi1saXN0LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwyIEBACitJ
ZiB5b3UgY2FuIHNlZSB0aGlzIHRoZW4gd2UgZGlkbid0IGhhbmchISEKK051bWJlciBvZiBhY3Rp
dmUgYW5pbWF0aW9ucyBiZWZvcmUgdHJhbnNpdGlvbiBpcyAoMCkgYXMgZXhwZWN0ZWQKSW5kZXg6
IExheW91dFRlc3RzL3RyYW5zaXRpb25zL2hhbmctd2l0aC1iYWQtdHJhbnNpdGlvbi1saXN0Lmh0
bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvdHJhbnNpdGlvbnMvaGFuZy13aXRoLWJhZC10
cmFuc2l0aW9uLWxpc3QuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3RyYW5zaXRp
b25zL2hhbmctd2l0aC1iYWQtdHJhbnNpdGlvbi1saXN0Lmh0bWwJKHJldmlzaW9uIDApCkBAIC0w
LDAgKzEsNDEgQEAKKzxodG1sPgorPGhlYWQ+CisgIDx0aXRsZT5UZXN0aW5nIGhhbmcgd2hlbiBy
dW5uaW5nIGEgYmFkIHRyYW5zaXRpb248L3RpdGxlPgorICA8c3R5bGUgdHlwZT0idGV4dC9jc3Mi
IG1lZGlhPSJzY3JlZW4iPgorICAgIHNwYW4geworCQliYWNrZ3JvdW5kOiBibHVlOworICAgICAg
ICBjb2xvcjogd2hpdGU7CisJCW9wYWNpdHk6IC42NjY7CisJCS13ZWJraXQtdHJhbnNpdGlvbjog
b3BhY2l0eSwgLjI1cywgLjE1cyBlYXNlLW91dDsKKwl9CisgIDwvc3R5bGU+CisgIDxzY3JpcHQg
dHlwZT0idGV4dC9qYXZhc2NyaXB0IiBjaGFyc2V0PSJ1dGYtOCI+CisgICAgZnVuY3Rpb24gY2hl
Y2tSdW5uaW5nKCkKKyAgICB7CisgICAgICB2YXIgY3VycmVudCA9IGxheW91dFRlc3RDb250cm9s
bGVyLm51bWJlck9mQWN0aXZlQW5pbWF0aW9ucygpOworICAgICAgaWYgKGN1cnJlbnQgPT0gMCkK
KyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jlc3VsdCcpLmlubmVySFRNTCA9ICJO
dW1iZXIgb2YgYWN0aXZlIGFuaW1hdGlvbnMgYmVmb3JlIHRyYW5zaXRpb24gaXMgKDApIGFzIGV4
cGVjdGVkIjsKKyAgICAgIGVsc2UKKyAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Jl
c3VsdCcpLmlubmVySFRNTCA9ICJOdW1iZXIgb2YgYWN0aXZlIHRyYW5zaXRpb25zIGlzICgiICsg
Y3VycmVudCArICIpIGJ1dCB3YXMgZXhwZWN0aW5nICgwKSI7CisgICAgICBsYXlvdXRUZXN0Q29u
dHJvbGxlci5ub3RpZnlEb25lKCk7CisgICAgfQorICAgIAorICAgIGlmICh3aW5kb3cubGF5b3V0
VGVzdENvbnRyb2xsZXIpIHsKKyAgICAgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4
dCgpOworICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7CisgICAg
ICAgIHdpbmRvdy5zZXRUaW1lb3V0KGNoZWNrUnVubmluZywgMzAwKTsgICAgICAgICAgICAKKyAg
ICB9CisgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisKKzxzcGFuIGlkPSJkb29tU3BhbiI+
SWYgeW91IGNhbiBzZWUgdGhpcyB0aGVuIHdlIGRpZG4ndCBoYW5nISEhPC9zcGFuPgorCis8c2Ny
aXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgY2hhcnNldD0idXRmLTgiPgorICAgIGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJkb29tU3BhbiIpLnN0eWxlLm9wYWNpdHk9MTsKKzwvc2NyaXB0Pgor
Cis8ZGl2IGlkPSJyZXN1bHQiPgorPC9kaXY+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>
<flag name="review"
          id="12683"
          type_id="1"
          status="+"
          setter="hyatt"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>26762</attachid>
            <date>2009-01-15 11:16:07 -0800</date>
            <delta_ts>2009-01-15 11:17:07 -0800</delta_ts>
            <desc>Patch to update Windows project file</desc>
            <filename>21421-windows-build.patch</filename>
            <type>text/plain</type>
            <size>1995</size>
            <attacher name="Chris Marrin">cmarrin</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAzOTkzNSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTEgQEAKKzIwMDktMDEtMTUgIENocmlzIE1hcnJpbiAgPGNtYXJyaW5AYXBwbGUu
Y29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZp
eGVkIFdpbmRvd3MgcHJvamVjdCBmaWxlIGFmdGVyIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yMTQyMQorCisgICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52
Y3Byb2o6CisKIDIwMDktMDEtMTUgIERhcmluIEZpc2hlciAgPGRhcmluQGNocm9taXVtLm9yZz4K
IAogICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KSW5kZXg6IFdlYkNvcmUvV2ViQ29y
ZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9XZWJDb3JlLnZj
cHJvai9XZWJDb3JlLnZjcHJvagkocmV2aXNpb24gMzk5MzQpCisrKyBXZWJDb3JlL1dlYkNvcmUu
dmNwcm9qL1dlYkNvcmUudmNwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0xNzE2LDYgKzE3MTYsMTQg
QEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iJChX
ZWJLaXRPdXRwdXREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU1dlYktp
dENTU01hdHJpeC5jcHAiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVs
YXRpdmVQYXRoPSIkKFdlYktpdE91dHB1dERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRT
b3VyY2VzXEpTV2ViS2l0Q1NTTWF0cml4LmgiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZp
bGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIkKFdlYktpdE91dHB1dERpcilcb2JqXCQoUHJvamVjdE5h
bWUpXERlcml2ZWRTb3VyY2VzXEpTV2ViS2l0Q1NTVHJhbnNmb3JtVmFsdWUuaCINCiAJCQkJPg0K
IAkJCTwvRmlsZT4NCkBAIC04NjE0LDYgKzg2MjIsMjIgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0K
IAkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cY3NzXFdlYktpdENTU01hdHJpeC5jcHAi
DQorCQkJCT4NCisJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQlOYW1lPSJSZWxlYXNlX1BH
T3xXaW4zMiINCisJCQkJCT4NCisJCQkJCTxUb29sDQorCQkJCQkJTmFtZT0iVkNDTENvbXBpbGVy
VG9vbCINCisJCQkJCQlXaG9sZVByb2dyYW1PcHRpbWl6YXRpb249InRydWUiDQorCQkJCQkvPg0K
KwkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KKwkJCQlS
ZWxhdGl2ZVBhdGg9Ii4uXGNzc1xXZWJLaXRDU1NNYXRyaXguaCINCisJCQkJPg0KKwkJCTwvRmls
ZT4NCisJCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGNzc1xXZWJLaXRDU1NUcmFuc2Zv
cm1WYWx1ZS5jcHAiDQogCQkJCT4NCiAJCQkJPEZpbGVDb25maWd1cmF0aW9uDQpAQCAtMTQ0MTcs
NiArMTQ0NDEsMTQgQEAKIAkJCQkJPg0KIAkJCQk8L0ZpbGU+DQogCQkJCTxGaWxlDQorCQkJCQlS
ZWxhdGl2ZVBhdGg9Ii4uXGJpbmRpbmdzXGpzXEpTV2ViS2l0Q1NTTWF0cml4Q29uc3RydWN0b3Iu
Y3BwIg0KKwkJCQkJPg0KKwkJCQk8L0ZpbGU+DQorCQkJCTxGaWxlDQorCQkJCQlSZWxhdGl2ZVBh
dGg9Ii4uXGJpbmRpbmdzXGpzXEpTV2ViS2l0Q1NTTWF0cml4Q29uc3RydWN0b3IuaCINCisJCQkJ
CT4NCisJCQkJPC9GaWxlPg0KKwkJCQk8RmlsZQ0KIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxiaW5k
aW5nc1xqc1xKU1dvcmtlckNvbnN0cnVjdG9yLmNwcCINCiAJCQkJCT4NCiAJCQkJPC9GaWxlPg0K
</data>

          </attachment>
      

    </bug>

</bugzilla>