<?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>143994</bug_id>
          
          <creation_ts>2015-04-21 09:10:20 -0700</creation_ts>
          <short_desc>SVGAnimateElementBase::calculateAnimatedValue() asserts when reinserting an SVG animating element within the same animation limits</short_desc>
          <delta_ts>2015-04-21 17:15:06 -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>SVG</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>graouts</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1087061</commentid>
    <comment_count>0</comment_count>
      <attachid>251234</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-04-21 09:10:20 -0700</bug_when>
    <thetext>Created attachment 251234
Test case (will crash)

Open the attached file.

Result: WebKit crashes with the following call stack:

WebCore::SVGAnimateElementBase::calculateAnimatedValue
WebCore::SVGAnimationElement::updateAnimation
WebCore::SVGSMILElement::progress
WebCore::SMILTimeContainer::updateAnimations
WebCore::SMILTimeContainer::timerFired

Notes: The crash happens when removing an animating SVG element and inserting it back while animating within the same animation limits. The reason for the crash is when removing an animating element from the SVG document, we call SVGAnimateElementBase::resetAnimatedPropertyType() which sets SVGAnimateElementBase::m_fromType and SVGAnimateElementBase::m_toType to nullptr. When the element is inserted back to the SVG document, SVGAnimationElement::updateAnimation() is called to get the new animated value. Before doing that we check if the animation limits have changed or not. But since in this case, the limits are not changed, we do not call SVGAnimateElementBase::calculateFromAndToValues() which is supposed to call SVGAnimatedTypeAnimator::calculateFromAndToValues(). And this later function is supposed to set valid values to SVGAnimateElementBase::m_fromType and SVGAnimateElementBase::m_toType. But since this does not happen, we end up calling SSVGAnimateElementBase::calculateAnimatedValue() which asserts

ASSERT(m_fromType);
ASSERT(m_fromType-&gt;type() == m_animatedPropertyType);
ASSERT(m_toType);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087076</commentid>
    <comment_count>1</comment_count>
      <attachid>251236</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-04-21 09:50:26 -0700</bug_when>
    <thetext>Created attachment 251236
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087084</commentid>
    <comment_count>2</comment_count>
      <attachid>251238</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-04-21 10:17:19 -0700</bug_when>
    <thetext>Created attachment 251238
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087116</commentid>
    <comment_count>3</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-04-21 11:45:27 -0700</bug_when>
    <thetext>This is the crash trace we get when opening the attached test case. The assert in SVGAnimateElementBase::calculateAnimatedValue() should happen before this crash in debug build.

SVGAnimatedLengthAnimator::calculateAnimatedValue(float, unsigned int, SVGAnimatedType*, WebCore::SVGAnimatedType*, WebCore::SVGAnimatedType*, WebCore::SVGAnimatedType*) + 60
WebCore::SVGAnimationElement::updateAnimation(float, unsigned int, WebCore::SVGSMILElement*) + 747
WebCore::SVGSMILElement::progress(WebCore::SMILTime, WebCore::SVGSMILElement*, bool) + 607
WebCore::SMILTimeContainer::updateAnimations(WebCore::SMILTime, bool) + 426</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087128</commentid>
    <comment_count>4</comment_count>
      <attachid>251250</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-04-21 12:09:09 -0700</bug_when>
    <thetext>Created attachment 251250
transform test case (will crash)

This is another test case with a different crash trace. However it happens because of the same reason mentioned above. In the debug build SVGAnimateElementBase::calculateAnimatedValue() asserts before this crash:

WebCore::SVGAnimatedTransformListAnimator::calculateAnimatedValue(float, unsigned int, WebCore::SVGAnimatedType*, WebCore::SVGAnimatedType*, WebCore::SVGAnimatedType*, WebCore::SVGAnimatedType*) + 34
WebCore::SVGAnimationElement::updateAnimation(float, unsigned int, WebCore::SVGSMILElement*) + 747
WebCore::SVGSMILElement::progress(WebCore::SMILTime, WebCore::SVGSMILElement*, bool) + 607
WebCore::SMILTimeContainer::updateAnimations(WebCore::SMILTime, bool) + 509</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087137</commentid>
    <comment_count>5</comment_count>
      <attachid>251255</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-04-21 12:26:58 -0700</bug_when>
    <thetext>Created attachment 251255
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087140</commentid>
    <comment_count>6</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-04-21 12:33:29 -0700</bug_when>
    <thetext>&lt;rdar://problem/18921450&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087183</commentid>
    <comment_count>7</comment_count>
      <attachid>251255</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2015-04-21 15:05:07 -0700</bug_when>
    <thetext>Comment on attachment 251255
Patch

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

&gt; LayoutTests/svg/animations/crash-reinsert-animate-length-same-limits.svg:19
&gt; +      }, 200);

Try to find a way to reduce or eliminate this timeout.

&gt; LayoutTests/svg/animations/crash-reinsert-animate-transform-same-limits.svg:19
&gt; +      }, 200);

Try to find a way to reduce or eliminate this timeout.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087202</commentid>
    <comment_count>8</comment_count>
      <attachid>251271</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-04-21 15:53:06 -0700</bug_when>
    <thetext>Created attachment 251271
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087203</commentid>
    <comment_count>9</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2015-04-21 15:58:53 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; Comment on attachment 251255 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=251255&amp;action=review
&gt; 
&gt; &gt; LayoutTests/svg/animations/crash-reinsert-animate-length-same-limits.svg:19
&gt; &gt; +      }, 200);
&gt; 
&gt; Try to find a way to reduce or eliminate this timeout.
&gt; 
&gt; &gt; LayoutTests/svg/animations/crash-reinsert-animate-transform-same-limits.svg:19
&gt; &gt; +      }, 200);
&gt; 
&gt; Try to find a way to reduce or eliminate this timeout.

The 200ms is now replaced by 0. The setTimeout(...,0); has to stay to ensure that the animation timer will fire at least once after reinserting the animating element and before the test ends.  I also confirmed that WebKit crashes with the modified tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087228</commentid>
    <comment_count>10</comment_count>
      <attachid>251271</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-04-21 17:15:03 -0700</bug_when>
    <thetext>Comment on attachment 251271
Patch

Clearing flags on attachment: 251271

Committed r183085: &lt;http://trac.webkit.org/changeset/183085&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087229</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-04-21 17:15:06 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>251234</attachid>
            <date>2015-04-21 09:10:20 -0700</date>
            <delta_ts>2015-04-21 09:10:20 -0700</delta_ts>
            <desc>Test case (will crash)</desc>
            <filename>crash-reinsert-animate-node-same-limits.svg</filename>
            <type>image/svg+xml</type>
            <size>598</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxjaXJjbGUgaWQ9Imxp
bWUtY2lyY2xlIiBmaWxsPSJsaW1lIiBjeD0iMTAwIiBjeT0iMTAwIiByPSI5MCIvPgogIDxjaXJj
bGUgaWQ9IndoaXRlLWNpcmNsZSIgZmlsbD0id2hpdGUiIGN4PSIxMDAiIGN5PSIxMDAiIHI9Ijkw
Ij4KICAgIDxhbmltYXRlIGF0dHJpYnV0ZU5hbWU9InIiIHZhbHVlcz0iOTA7IDMwIiBkdXI9IjJz
Ii8+CiAgPC9jaXJjbGU+CiAgPHRleHQgeD0iMTAwIiB5PSIxMDAiIHRleHQtYW5jaG9yPSJtaWRk
bGUiIGFsaWdubWVudC1iYXNlbGluZT0ibWlkZGxlIj5QQVNTPC90ZXh0PgogIDxzY3JpcHQ+CiAg
ICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7CiAgICAgIHZhciBsaW1lQ2lyY2xlID0gZG9jdW1lbnQu
Z2V0RWxlbWVudEJ5SWQoImxpbWUtY2lyY2xlIik7CiAgICAgIHZhciB3aGl0ZUNpcmNsZSA9IGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3aGl0ZS1jaXJjbGUiKTsKICAgICAgZG9jdW1lbnQuZG9j
dW1lbnRFbGVtZW50Lmluc2VydEJlZm9yZSh3aGl0ZUNpcmNsZSwgbGltZUNpcmNsZSk7CiAgICB9
LCAxMDAwKTsKICA8L3NjcmlwdD4KPC9zdmc+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251236</attachid>
            <date>2015-04-21 09:50:26 -0700</date>
            <delta_ts>2015-04-21 10:17:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-143994-20150421094923.patch</filename>
            <type>text/plain</type>
            <size>6451</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MzAzNSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI5IEBACisyMDE1LTA0LTIwICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgQ3Jhc2ggaW4g
U1ZHQW5pbWF0ZUVsZW1lbnRCYXNlOjpjYWxjdWxhdGVBbmltYXRlZFZhbHVlKCkgaGFwcGVucyB3
aGVuIHJlaW5zZXJ0aW5nIGFuIFNWRyBhbmltYXRpbmcgZWxlbWVudCB3aXRoaW4gdGhlIHNhbWUg
YW5pbWF0aW9uIGxpbWl0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTQzOTk0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisg
ICAgICAgIAorICAgICAgICBNYWtlIHN1cmUgdGhlIFNWRyBhbmltYXRpb24gdmFyaWFibGVzIGFy
ZSByZXNldCBjbGVhbmx5IHN1Y2ggdGhhdCBpZiB0aGUKKyAgICAgICAgYW5pbWF0aW9uIHJlc3Rh
cnRzIGl0IGNhbiByZWJ1aWxkIGl0cyB2YXJpYWJsZXMgcmVsaWFibHkgYW5kIGNvcnJlY3RseS4K
KworICAgICAgICBUZXN0OiBzdmcvYW5pbWF0aW9ucy9jcmFzaC1yZWluc2VydC1hbmltYXRlLW5v
ZGUtc2FtZS1saW1pdHMuc3ZnCisKKyAgICAgICAgKiBzdmcvU1ZHQW5pbWF0ZUVsZW1lbnRCYXNl
Lmg6CisgICAgICAgICogc3ZnL1NWR0FuaW1hdGVFbGVtZW50QmFzZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpTVkdBbmltYXRlRWxlbWVudEJhc2U6OnJlc2V0QW5pbWF0ZWRQcm9wZXJ0eVR5cGUp
OgorICAgICAgICBDYWxsIHRoZSBiYXNlIGNsYXNzIHJlc2V0QW5pbWF0ZWRQcm9wZXJ0eVR5cGUo
KSBmcm9tIHRoZSBkZXJpdmVkIGNsYXNzLgorCisgICAgICAgICogc3ZnL1NWR0FuaW1hdGlvbkVs
ZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHQW5pbWF0aW9uRWxlbWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTVkdBbmltYXRpb25FbGVtZW50OjpyZXNldEFuaW1hdGVkUHJvcGVydHlUeXBl
KToKKyAgICAgICAgTWFrZSByZXNldEFuaW1hdGVkUHJvcGVydHlUeXBlKCkgdmlydHVhbC4gVGhl
IGltcGxlbWVudGF0aW9uIG9mIHRoZSBiYXNlCisgICAgICAgIGNsYXNzIG9mIHRoaXMgZnVuY3Rp
b24gcmVzZXRzIHRoZSB2YWx1ZXMgb2YgdGhlIGFuaW1hdGlvbiBsaW1pdHMuIFdoZW4KKyAgICAg
ICAgdXBkYXRlQW5pbWF0aW9uKCkgaXMgY2FsbGVkLCBpdCB3aWxsIGJlIGZvcmNlZCB0byByZWNh
bGN1bGF0ZSB0aGUgYW5pbWF0aW9uCisgICAgICAgIGxpbWl0cyBieSBjYWxsaW5nIGNhbGN1bGF0
ZUZyb21BbmRUb1ZhbHVlcygpIGV2ZW4gaWYgdGhlIGxpbWl0cyBoYXZlIG5vdAorICAgICAgICBj
aGFuZ2VkLgorCiAyMDE1LTA0LTIwICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdl
YmtpdC5vcmc+CiAKICAgICAgICAgT3ZlcndyaXRlIGV4aXN0aW5nIGZpbGVzIHdpdGggbW92ZUZp
bGUuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZUVsZW1lbnRCYXNlLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZUVsZW1lbnRCYXNlLmNw
cAkocmV2aXNpb24gMTgzMDI2KQorKysgU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVFbGVt
ZW50QmFzZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQzMSw2ICs0MzEsNyBAQCB2b2lkIFNWR0Fu
aW1hdGVFbGVtZW50QmFzZTo6c2V0QXR0cmlidXRlCiAKIHZvaWQgU1ZHQW5pbWF0ZUVsZW1lbnRC
YXNlOjpyZXNldEFuaW1hdGVkUHJvcGVydHlUeXBlKCkKIHsKKyAgICBTVkdBbmltYXRpb25FbGVt
ZW50OjpyZXNldEFuaW1hdGVkUHJvcGVydHlUeXBlKCk7CiAgICAgQVNTRVJUKCFtX2FuaW1hdGVk
VHlwZSk7CiAgICAgbV9mcm9tVHlwZSA9IG51bGxwdHI7CiAgICAgbV90b1R5cGUgPSBudWxscHRy
OwpJbmRleDogU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVFbGVtZW50QmFzZS5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlRWxlbWVudEJhc2UuaAkocmV2
aXNpb24gMTgzMDI2KQorKysgU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVFbGVtZW50QmFz
ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01MywxMSArNTMsMTEgQEAgcHJvdGVjdGVkOgogCiAgICAg
dmlydHVhbCB2b2lkIHNldFRhcmdldEVsZW1lbnQoU1ZHRWxlbWVudCopIG92ZXJyaWRlOwogICAg
IHZpcnR1YWwgdm9pZCBzZXRBdHRyaWJ1dGVOYW1lKGNvbnN0IFF1YWxpZmllZE5hbWUmKSBvdmVy
cmlkZTsKKyAgICB2aXJ0dWFsIHZvaWQgcmVzZXRBbmltYXRlZFByb3BlcnR5VHlwZSgpIG92ZXJy
aWRlOwogCiAgICAgQW5pbWF0ZWRQcm9wZXJ0eVR5cGUgbV9hbmltYXRlZFByb3BlcnR5VHlwZTsK
IAogcHJpdmF0ZToKLSAgICB2b2lkIHJlc2V0QW5pbWF0ZWRQcm9wZXJ0eVR5cGUoKTsKICAgICBT
VkdBbmltYXRlZFR5cGVBbmltYXRvciogZW5zdXJlQW5pbWF0b3IoKTsKICAgICBib29sIGFuaW1h
dGVkUHJvcGVydHlUeXBlU3VwcG9ydHNBZGRpdGlvbigpIGNvbnN0OwogCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHQW5pbWF0aW9uRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGlvbkVsZW1lbnQuY3BwCShyZXZpc2lvbiAxODMwMjYpCisr
KyBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0aW9uRWxlbWVudC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTY3NCw2ICs2NzQsMTEgQEAgdm9pZCBTVkdBbmltYXRpb25FbGVtZW50OjpkZXRlcm1p
bmVQcm9wZQogICAgIGlmIChpbmhlcml0c0Zyb21Qcm9wZXJ0eSh0YXJnZXRFbGVtZW50LCBhdHRy
aWJ1dGVOYW1lLCB0bykpCiAgICAgICAgIG1fdG9Qcm9wZXJ0eVZhbHVlVHlwZSA9IEluaGVyaXRW
YWx1ZTsKIH0KK3ZvaWQgU1ZHQW5pbWF0aW9uRWxlbWVudDo6cmVzZXRBbmltYXRlZFByb3BlcnR5
VHlwZSgpCit7CisgICAgbV9sYXN0VmFsdWVzQW5pbWF0aW9uRnJvbSA9IFN0cmluZygpOworICAg
IG1fbGFzdFZhbHVlc0FuaW1hdGlvblRvID0gU3RyaW5nKCk7Cit9CiAKIHZvaWQgU1ZHQW5pbWF0
aW9uRWxlbWVudDo6c2V0VGFyZ2V0RWxlbWVudChTVkdFbGVtZW50KiB0YXJnZXQpCiB7CkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0aW9uRWxlbWVudC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRpb25FbGVtZW50LmgJKHJldmlzaW9uIDE4MzAy
NikKKysrIFNvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRpb25FbGVtZW50LmgJKHdvcmtpbmcg
Y29weSkKQEAgLTE2OCw2ICsxNjgsNyBAQCBwcm90ZWN0ZWQ6CiAKICAgICB2b2lkIGNvbXB1dGVD
U1NQcm9wZXJ0eVZhbHVlKFNWR0VsZW1lbnQqLCBDU1NQcm9wZXJ0eUlELCBTdHJpbmcmIHZhbHVl
KTsKICAgICB2aXJ0dWFsIHZvaWQgZGV0ZXJtaW5lUHJvcGVydHlWYWx1ZVR5cGVzKGNvbnN0IFN0
cmluZyYgZnJvbSwgY29uc3QgU3RyaW5nJiB0byk7CisgICAgdmlydHVhbCB2b2lkIHJlc2V0QW5p
bWF0ZWRQcm9wZXJ0eVR5cGUoKTsKIAogICAgIHN0YXRpYyBib29sIGlzU3VwcG9ydGVkQXR0cmli
dXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmKTsKICAgICB2aXJ0dWFsIHZvaWQgcGFyc2VBdHRyaWJ1
dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYsIGNvbnN0IEF0b21pY1N0cmluZyYpIG92ZXJyaWRlOwpJ
bmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0No
YW5nZUxvZwkocmV2aXNpb24gMTgzMDM1KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTUtMDQtMjAgIFNhaWQgQWJvdS1IYWxsYXdh
ICA8c2Fib3VoYWxsYXdhQGFwcGxlLmNvbT4KKworICAgICAgICBDcmFzaCBpbiBTVkdBbmltYXRl
RWxlbWVudEJhc2U6OmNhbGN1bGF0ZUFuaW1hdGVkVmFsdWUoKSBoYXBwZW5zIHdoZW4gcmVpbnNl
cnRpbmcgYW4gU1ZHIGFuaW1hdGluZyBlbGVtZW50IHdpdGhpbiB0aGUgc2FtZSBhbmltYXRpb24g
bGltaXRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NDM5OTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IHN2Zy9hbmltYXRpb25zL2NyYXNoLXJlaW5zZXJ0LWFuaW1hdGUtbm9kZS1zYW1lLWxpbWl0cy1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHN2Zy9hbmltYXRpb25zL2NyYXNoLXJlaW5z
ZXJ0LWFuaW1hdGUtbm9kZS1zYW1lLWxpbWl0cy5zdmc6IEFkZGVkLgorICAgICAgICBNYWtlIHN1
cmUgd2hlbiByZW1vdmluZyBhbiBTVkcgYW5pbWF0aW5nIGVsZW1lbnQgYW5kIHJlaW5zZXJ0aW5n
IGl0IGJhY2sKKyAgICAgICAgd2l0aGluIHRoZSBzYW1lIGFuaW1hdGlvbiBsaW1pdHMsIHdlIGRv
IG5vdCBjcmFzaC4KKwogMjAxNS0wNC0yMCAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWJvdWhhbGxh
d2FAYXBwbGUuY29tPgogCiAgICAgICAgIFNWR0ZpdFRvVmlld0JveDo6dmlld0JveFRvVmlld1Ry
YW5zZm9ybSgpIGhhcyB0byBjb3VudCBmb3IgemVybyBwaHlzaWNhbCB3aWR0aCBhbmQgaGVpZ2h0
IGJlZm9yZSBjYWxsaW5nIFNWR1ByZXNlcnZlQXNwZWN0UmF0aW86OmdldENUTSgpCkluZGV4OiBM
YXlvdXRUZXN0cy9zdmcvYW5pbWF0aW9ucy9jcmFzaC1yZWluc2VydC1hbmltYXRlLW5vZGUtc2Ft
ZS1saW1pdHMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3N2Zy9hbmlt
YXRpb25zL2NyYXNoLXJlaW5zZXJ0LWFuaW1hdGUtbm9kZS1zYW1lLWxpbWl0cy1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9zdmcvYW5pbWF0aW9ucy9jcmFzaC1yZWlu
c2VydC1hbmltYXRlLW5vZGUtc2FtZS1saW1pdHMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkp
CkBAIC0wLDAgKzEgQEAKK1BBU1MKSW5kZXg6IExheW91dFRlc3RzL3N2Zy9hbmltYXRpb25zL2Ny
YXNoLXJlaW5zZXJ0LWFuaW1hdGUtbm9kZS1zYW1lLWxpbWl0cy5zdmcKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvc3ZnL2FuaW1hdGlvbnMvY3Jhc2gtcmVpbnNlcnQtYW5pbWF0ZS1ub2RlLXNh
bWUtbGltaXRzLnN2ZwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3N2Zy9hbmltYXRpb25z
L2NyYXNoLXJlaW5zZXJ0LWFuaW1hdGUtbm9kZS1zYW1lLWxpbWl0cy5zdmcJKHdvcmtpbmcgY29w
eSkKQEAgLTAsMCArMSwxNiBAQAorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9z
dmciPgorICA8Y2lyY2xlIGlkPSJsaW1lLWNpcmNsZSIgZmlsbD0ibGltZSIgY3g9IjEwMCIgY3k9
IjEwMCIgcj0iOTAiLz4KKyAgPGNpcmNsZSBpZD0ieWVsbG93LWNpcmNsZSIgZmlsbD0ieWVsbG93
IiBjeD0iMTAwIiBjeT0iMTAwIiByPSI5MCI+CisgICAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0i
ciIgdmFsdWVzPSI5MDsgMzAiIGR1cj0iMnMiLz4KKyAgPC9jaXJjbGU+CisgIDx0ZXh0IHg9IjEw
MCIgeT0iMTAwIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBhbGlnbm1lbnQtYmFzZWxpbmU9Im1pZGRs
ZSI+UEFTUzwvdGV4dD4KKyAgPHNjcmlwdD4KKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisg
ICAgICB0ZXN0UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7
CisgICAgICB2YXIgbGltZUNpcmNsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsaW1lLWNp
cmNsZSIpOworICAgICAgdmFyIHllbGxvd0NpcmNsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJ5ZWxsb3ctY2lyY2xlIik7CisgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuaW5zZXJ0
QmVmb3JlKHllbGxvd0NpcmNsZSwgbGltZUNpcmNsZSk7CisgICAgfSwgMCk7CisgIDwvc2NyaXB0
PgorPC9zdmc+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251238</attachid>
            <date>2015-04-21 10:17:19 -0700</date>
            <delta_ts>2015-04-21 12:26:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-143994-20150421101617.patch</filename>
            <type>text/plain</type>
            <size>6611</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MzAzNSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI5IEBACisyMDE1LTA0LTIwICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgQ3Jhc2ggaW4g
U1ZHQW5pbWF0ZUVsZW1lbnRCYXNlOjpjYWxjdWxhdGVBbmltYXRlZFZhbHVlKCkgaGFwcGVucyB3
aGVuIHJlaW5zZXJ0aW5nIGFuIFNWRyBhbmltYXRpbmcgZWxlbWVudCB3aXRoaW4gdGhlIHNhbWUg
YW5pbWF0aW9uIGxpbWl0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTQzOTk0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisg
ICAgICAgIAorICAgICAgICBNYWtlIHN1cmUgdGhlIFNWRyBhbmltYXRpb24gdmFyaWFibGVzIGFy
ZSByZXNldCBjbGVhbmx5IHN1Y2ggdGhhdCBpZiB0aGUKKyAgICAgICAgYW5pbWF0aW9uIHJlc3Rh
cnRzIGl0IGNhbiByZWJ1aWxkIGl0cyB2YXJpYWJsZXMgcmVsaWFibHkgYW5kIGNvcnJlY3RseS4K
KworICAgICAgICBUZXN0OiBzdmcvYW5pbWF0aW9ucy9jcmFzaC1yZWluc2VydC1hbmltYXRlLW5v
ZGUtc2FtZS1saW1pdHMuc3ZnCisKKyAgICAgICAgKiBzdmcvU1ZHQW5pbWF0ZUVsZW1lbnRCYXNl
Lmg6CisgICAgICAgICogc3ZnL1NWR0FuaW1hdGVFbGVtZW50QmFzZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpTVkdBbmltYXRlRWxlbWVudEJhc2U6OnJlc2V0QW5pbWF0ZWRQcm9wZXJ0eVR5cGUp
OgorICAgICAgICBDYWxsIHRoZSBiYXNlIGNsYXNzIHJlc2V0QW5pbWF0ZWRQcm9wZXJ0eVR5cGUo
KSBmcm9tIHRoZSBkZXJpdmVkIGNsYXNzLgorCisgICAgICAgICogc3ZnL1NWR0FuaW1hdGlvbkVs
ZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHQW5pbWF0aW9uRWxlbWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTVkdBbmltYXRpb25FbGVtZW50OjpyZXNldEFuaW1hdGVkUHJvcGVydHlUeXBl
KToKKyAgICAgICAgTWFrZSByZXNldEFuaW1hdGVkUHJvcGVydHlUeXBlKCkgdmlydHVhbC4gVGhl
IGltcGxlbWVudGF0aW9uIG9mIHRoZSBiYXNlCisgICAgICAgIGNsYXNzIG9mIHRoaXMgZnVuY3Rp
b24gcmVzZXRzIHRoZSB2YWx1ZXMgb2YgdGhlIGFuaW1hdGlvbiBsaW1pdHMuIFdoZW4KKyAgICAg
ICAgdXBkYXRlQW5pbWF0aW9uKCkgaXMgY2FsbGVkLCBpdCB3aWxsIGJlIGZvcmNlZCB0byByZWNh
bGN1bGF0ZSB0aGUgYW5pbWF0aW9uCisgICAgICAgIGxpbWl0cyBieSBjYWxsaW5nIGNhbGN1bGF0
ZUZyb21BbmRUb1ZhbHVlcygpIGV2ZW4gaWYgdGhlIGxpbWl0cyBoYXZlIG5vdAorICAgICAgICBj
aGFuZ2VkLgorCiAyMDE1LTA0LTIwICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdl
YmtpdC5vcmc+CiAKICAgICAgICAgT3ZlcndyaXRlIGV4aXN0aW5nIGZpbGVzIHdpdGggbW92ZUZp
bGUuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZUVsZW1lbnRCYXNlLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZUVsZW1lbnRCYXNlLmNw
cAkocmV2aXNpb24gMTgzMDI2KQorKysgU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVFbGVt
ZW50QmFzZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQzMSw2ICs0MzEsNyBAQCB2b2lkIFNWR0Fu
aW1hdGVFbGVtZW50QmFzZTo6c2V0QXR0cmlidXRlCiAKIHZvaWQgU1ZHQW5pbWF0ZUVsZW1lbnRC
YXNlOjpyZXNldEFuaW1hdGVkUHJvcGVydHlUeXBlKCkKIHsKKyAgICBTVkdBbmltYXRpb25FbGVt
ZW50OjpyZXNldEFuaW1hdGVkUHJvcGVydHlUeXBlKCk7CiAgICAgQVNTRVJUKCFtX2FuaW1hdGVk
VHlwZSk7CiAgICAgbV9mcm9tVHlwZSA9IG51bGxwdHI7CiAgICAgbV90b1R5cGUgPSBudWxscHRy
OwpJbmRleDogU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVFbGVtZW50QmFzZS5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlRWxlbWVudEJhc2UuaAkocmV2
aXNpb24gMTgzMDI2KQorKysgU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVFbGVtZW50QmFz
ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01MywxMSArNTMsMTEgQEAgcHJvdGVjdGVkOgogCiAgICAg
dmlydHVhbCB2b2lkIHNldFRhcmdldEVsZW1lbnQoU1ZHRWxlbWVudCopIG92ZXJyaWRlOwogICAg
IHZpcnR1YWwgdm9pZCBzZXRBdHRyaWJ1dGVOYW1lKGNvbnN0IFF1YWxpZmllZE5hbWUmKSBvdmVy
cmlkZTsKKyAgICB2aXJ0dWFsIHZvaWQgcmVzZXRBbmltYXRlZFByb3BlcnR5VHlwZSgpIG92ZXJy
aWRlOwogCiAgICAgQW5pbWF0ZWRQcm9wZXJ0eVR5cGUgbV9hbmltYXRlZFByb3BlcnR5VHlwZTsK
IAogcHJpdmF0ZToKLSAgICB2b2lkIHJlc2V0QW5pbWF0ZWRQcm9wZXJ0eVR5cGUoKTsKICAgICBT
VkdBbmltYXRlZFR5cGVBbmltYXRvciogZW5zdXJlQW5pbWF0b3IoKTsKICAgICBib29sIGFuaW1h
dGVkUHJvcGVydHlUeXBlU3VwcG9ydHNBZGRpdGlvbigpIGNvbnN0OwogCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHQW5pbWF0aW9uRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGlvbkVsZW1lbnQuY3BwCShyZXZpc2lvbiAxODMwMjYpCisr
KyBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0aW9uRWxlbWVudC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTY3NCw2ICs2NzQsMTEgQEAgdm9pZCBTVkdBbmltYXRpb25FbGVtZW50OjpkZXRlcm1p
bmVQcm9wZQogICAgIGlmIChpbmhlcml0c0Zyb21Qcm9wZXJ0eSh0YXJnZXRFbGVtZW50LCBhdHRy
aWJ1dGVOYW1lLCB0bykpCiAgICAgICAgIG1fdG9Qcm9wZXJ0eVZhbHVlVHlwZSA9IEluaGVyaXRW
YWx1ZTsKIH0KK3ZvaWQgU1ZHQW5pbWF0aW9uRWxlbWVudDo6cmVzZXRBbmltYXRlZFByb3BlcnR5
VHlwZSgpCit7CisgICAgbV9sYXN0VmFsdWVzQW5pbWF0aW9uRnJvbSA9IFN0cmluZygpOworICAg
IG1fbGFzdFZhbHVlc0FuaW1hdGlvblRvID0gU3RyaW5nKCk7Cit9CiAKIHZvaWQgU1ZHQW5pbWF0
aW9uRWxlbWVudDo6c2V0VGFyZ2V0RWxlbWVudChTVkdFbGVtZW50KiB0YXJnZXQpCiB7CkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0aW9uRWxlbWVudC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRpb25FbGVtZW50LmgJKHJldmlzaW9uIDE4MzAy
NikKKysrIFNvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRpb25FbGVtZW50LmgJKHdvcmtpbmcg
Y29weSkKQEAgLTE2OCw2ICsxNjgsNyBAQCBwcm90ZWN0ZWQ6CiAKICAgICB2b2lkIGNvbXB1dGVD
U1NQcm9wZXJ0eVZhbHVlKFNWR0VsZW1lbnQqLCBDU1NQcm9wZXJ0eUlELCBTdHJpbmcmIHZhbHVl
KTsKICAgICB2aXJ0dWFsIHZvaWQgZGV0ZXJtaW5lUHJvcGVydHlWYWx1ZVR5cGVzKGNvbnN0IFN0
cmluZyYgZnJvbSwgY29uc3QgU3RyaW5nJiB0byk7CisgICAgdmlydHVhbCB2b2lkIHJlc2V0QW5p
bWF0ZWRQcm9wZXJ0eVR5cGUoKTsKIAogICAgIHN0YXRpYyBib29sIGlzU3VwcG9ydGVkQXR0cmli
dXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmKTsKICAgICB2aXJ0dWFsIHZvaWQgcGFyc2VBdHRyaWJ1
dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYsIGNvbnN0IEF0b21pY1N0cmluZyYpIG92ZXJyaWRlOwpJ
bmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0No
YW5nZUxvZwkocmV2aXNpb24gMTgzMDM1KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTUtMDQtMjAgIFNhaWQgQWJvdS1IYWxsYXdh
ICA8c2Fib3VoYWxsYXdhQGFwcGxlLmNvbT4KKworICAgICAgICBDcmFzaCBpbiBTVkdBbmltYXRl
RWxlbWVudEJhc2U6OmNhbGN1bGF0ZUFuaW1hdGVkVmFsdWUoKSBoYXBwZW5zIHdoZW4gcmVpbnNl
cnRpbmcgYW4gU1ZHIGFuaW1hdGluZyBlbGVtZW50IHdpdGhpbiB0aGUgc2FtZSBhbmltYXRpb24g
bGltaXRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NDM5OTQKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAq
IHN2Zy9hbmltYXRpb25zL2NyYXNoLXJlaW5zZXJ0LWFuaW1hdGUtbm9kZS1zYW1lLWxpbWl0cy1l
eHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHN2Zy9hbmltYXRpb25zL2NyYXNoLXJlaW5z
ZXJ0LWFuaW1hdGUtbm9kZS1zYW1lLWxpbWl0cy5zdmc6IEFkZGVkLgorICAgICAgICBNYWtlIHN1
cmUgd2hlbiByZW1vdmluZyBhbiBTVkcgYW5pbWF0aW5nIGVsZW1lbnQgYW5kIHJlaW5zZXJ0aW5n
IGl0IGJhY2sKKyAgICAgICAgd2l0aGluIHRoZSBzYW1lIGFuaW1hdGlvbiBsaW1pdHMsIHdlIGRv
IG5vdCBjcmFzaC4KKwogMjAxNS0wNC0yMCAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWJvdWhhbGxh
d2FAYXBwbGUuY29tPgogCiAgICAgICAgIFNWR0ZpdFRvVmlld0JveDo6dmlld0JveFRvVmlld1Ry
YW5zZm9ybSgpIGhhcyB0byBjb3VudCBmb3IgemVybyBwaHlzaWNhbCB3aWR0aCBhbmQgaGVpZ2h0
IGJlZm9yZSBjYWxsaW5nIFNWR1ByZXNlcnZlQXNwZWN0UmF0aW86OmdldENUTSgpCkluZGV4OiBM
YXlvdXRUZXN0cy9zdmcvYW5pbWF0aW9ucy9jcmFzaC1yZWluc2VydC1hbmltYXRlLW5vZGUtc2Ft
ZS1saW1pdHMtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3N2Zy9hbmlt
YXRpb25zL2NyYXNoLXJlaW5zZXJ0LWFuaW1hdGUtbm9kZS1zYW1lLWxpbWl0cy1leHBlY3RlZC50
eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9zdmcvYW5pbWF0aW9ucy9jcmFzaC1yZWlu
c2VydC1hbmltYXRlLW5vZGUtc2FtZS1saW1pdHMtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkp
CkBAIC0wLDAgKzEgQEAKK1BBU1MKSW5kZXg6IExheW91dFRlc3RzL3N2Zy9hbmltYXRpb25zL2Ny
YXNoLXJlaW5zZXJ0LWFuaW1hdGUtbm9kZS1zYW1lLWxpbWl0cy5zdmcKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
TGF5b3V0VGVzdHMvc3ZnL2FuaW1hdGlvbnMvY3Jhc2gtcmVpbnNlcnQtYW5pbWF0ZS1ub2RlLXNh
bWUtbGltaXRzLnN2ZwkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3RzL3N2Zy9hbmltYXRpb25z
L2NyYXNoLXJlaW5zZXJ0LWFuaW1hdGUtbm9kZS1zYW1lLWxpbWl0cy5zdmcJKHdvcmtpbmcgY29w
eSkKQEAgLTAsMCArMSwyMiBAQAorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9z
dmciPgorICA8Y2lyY2xlIGlkPSJsaW1lLWNpcmNsZSIgZmlsbD0ibGltZSIgY3g9IjEwMCIgY3k9
IjEwMCIgcj0iOTAiLz4KKyAgPGNpcmNsZSBpZD0ieWVsbG93LWNpcmNsZSIgZmlsbD0ieWVsbG93
IiBjeD0iMTAwIiBjeT0iMTAwIiByPSI5MCI+CisgICAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0i
ciIgdmFsdWVzPSI5MDsgMzAiIGR1cj0iMnMiLz4KKyAgPC9jaXJjbGU+CisgIDx0ZXh0IHg9IjEw
MCIgeT0iMTAwIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBhbGlnbm1lbnQtYmFzZWxpbmU9Im1pZGRs
ZSI+UEFTUzwvdGV4dD4KKyAgPHNjcmlwdD4KKyAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsK
KyAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOworICAgICAgdGVzdFJ1bm5lci53YWl0VW50
aWxEb25lKCk7CisgICAgfQorICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CisgICAgICB2YXIg
bGltZUNpcmNsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsaW1lLWNpcmNsZSIpOworICAg
ICAgdmFyIHllbGxvd0NpcmNsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ5ZWxsb3ctY2ly
Y2xlIik7CisgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuaW5zZXJ0QmVmb3JlKHllbGxv
d0NpcmNsZSwgbGltZUNpcmNsZSk7CisgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAg
ICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlE
b25lKCk7CisgICAgICB9LCAyMDApOworICAgIH0sIDApOworICA8L3NjcmlwdD4KKzwvc3ZnPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>251250</attachid>
            <date>2015-04-21 12:09:09 -0700</date>
            <delta_ts>2015-04-21 12:09:09 -0700</delta_ts>
            <desc>transform test case (will crash)</desc>
            <filename>crash-reinsert-animate-transform-same-limits.svg</filename>
            <type>image/svg+xml</type>
            <size>774</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgogIDxjaXJjbGUgaWQ9Imxp
bWUtY2lyY2xlIiBmaWxsPSJsaW1lIiBjeD0iMTAwIiBjeT0iMTAwIiByPSI0NSIvPgogIDxjaXJj
bGUgaWQ9InllbGxvdy1jaXJjbGUiIGZpbGw9InllbGxvdyIgY3g9IjEwMCIgY3k9IjEwMCIgcj0i
OTAiPgogICAgPGFuaW1hdGVUcmFuc2Zvcm0gYXR0cmlidXRlTmFtZT0idHJhbnNmb3JtIgogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZVR5cGU9IlhNTCIKICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB0eXBlPSJzY2FsZSIKICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB2YWx1ZXM9IjE7IDAuNTsgMSIgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZHVyPSIy
cyIvPgogIDwvY2lyY2xlPgogIDx0ZXh0IHg9IjEwMCIgeT0iMTAwIiB0ZXh0LWFuY2hvcj0ibWlk
ZGxlIiBhbGlnbm1lbnQtYmFzZWxpbmU9Im1pZGRsZSI+UEFTUzwvdGV4dD4KICA8c2NyaXB0Pgog
ICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgdmFyIGxpbWVDaXJjbGUgPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgibGltZS1jaXJjbGUiKTsKICAgICAgdmFyIHllbGxvd0NpcmNsZSA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ5ZWxsb3ctY2lyY2xlIik7CiAgICAgIGRvY3VtZW50
LmRvY3VtZW50RWxlbWVudC5pbnNlcnRCZWZvcmUoeWVsbG93Q2lyY2xlLCBsaW1lQ2lyY2xlKTsK
ICAgIH0sIDEwMDApOwogIDwvc2NyaXB0Pgo8L3N2Zz4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251255</attachid>
            <date>2015-04-21 12:26:58 -0700</date>
            <delta_ts>2015-04-21 15:53:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-143994-20150421122555.patch</filename>
            <type>text/plain</type>
            <size>8418</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MzA2OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMwIEBACisyMDE1LTA0LTIxICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgU1ZHQW5pbWF0
ZUVsZW1lbnRCYXNlOjpjYWxjdWxhdGVBbmltYXRlZFZhbHVlKCkgYXNzZXJ0cyB3aGVuIHJlaW5z
ZXJ0aW5nIGFuIFNWRyBhbmltYXRpbmcgZWxlbWVudCB3aXRoaW4gdGhlIHNhbWUgYW5pbWF0aW9u
IGxpbWl0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTQzOTk0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
TWFrZSBzdXJlIHRoZSBTVkcgYW5pbWF0aW9uIHZhcmlhYmxlcyBhcmUgcmVzZXQgY2xlYW5seSBz
dWNoIHRoYXQgaWYgdGhlCisgICAgICAgIGFuaW1hdGlvbiByZXN0YXJ0cyBpdCBjYW4gcmVidWls
ZCBpdHMgbGltaXQgdmFsdWVzIHJlbGlhYmx5IGFuZCBjb3JyZWN0bHkuCisKKyAgICAgICAgVGVz
dHM6IHN2Zy9hbmltYXRpb25zL2NyYXNoLXJlaW5zZXJ0LWFuaW1hdGUtbGVuZ3RoLXNhbWUtbGlt
aXRzLnN2ZworICAgICAgICAgICAgICAgc3ZnL2FuaW1hdGlvbnMvY3Jhc2gtcmVpbnNlcnQtYW5p
bWF0ZS10cmFuc2Zvcm0tc2FtZS1saW1pdHMuc3ZnCisKKyAgICAgICAgKiBzdmcvU1ZHQW5pbWF0
ZUVsZW1lbnRCYXNlLmg6CisgICAgICAgICogc3ZnL1NWR0FuaW1hdGVFbGVtZW50QmFzZS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTVkdBbmltYXRlRWxlbWVudEJhc2U6OnJlc2V0QW5pbWF0ZWRQ
cm9wZXJ0eVR5cGUpOgorICAgICAgICBDYWxsIHRoZSBiYXNlIGNsYXNzIHJlc2V0QW5pbWF0ZWRQ
cm9wZXJ0eVR5cGUoKSBmcm9tIHRoZSBkZXJpdmVkIGNsYXNzLgorCisgICAgICAgICogc3ZnL1NW
R0FuaW1hdGlvbkVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHQW5pbWF0aW9uRWxlbWVudC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdBbmltYXRpb25FbGVtZW50OjpyZXNldEFuaW1hdGVk
UHJvcGVydHlUeXBlKToKKyAgICAgICAgTWFrZSByZXNldEFuaW1hdGVkUHJvcGVydHlUeXBlKCkg
dmlydHVhbC4gVGhlIGltcGxlbWVudGF0aW9uIG9mIHRoZSBiYXNlCisgICAgICAgIGNsYXNzIG9m
IHRoaXMgZnVuY3Rpb24gcmVzZXRzIHRoZSB2YWx1ZXMgb2YgdGhlIGFuaW1hdGlvbiBsaW1pdHMu
IFdoZW4KKyAgICAgICAgdXBkYXRlQW5pbWF0aW9uKCkgaXMgY2FsbGVkLCBpdCB3aWxsIGJlIGZv
cmNlZCB0byByZWNhbGN1bGF0ZSB0aGUgYW5pbWF0aW9uCisgICAgICAgIGxpbWl0cyBieSBjYWxs
aW5nIGNhbGN1bGF0ZUZyb21BbmRUb1ZhbHVlcygpIGV2ZW4gaWYgdGhlIGxpbWl0cyBoYXZlIG5v
dAorICAgICAgICBjaGFuZ2VkLgorCiAyMDE1LTA0LTIxICBDaHJpcyBEdW1leiAgPGNkdW1lekBh
cHBsZS5jb20+CiAKICAgICAgICAgTWFrZSBWZWN0b3IoY29uc3QgVmVjdG9yPFQsIG90aGVyQ2Fw
YWNpdHksIG90aGVyT3ZlcmZsb3dCZWhhdmlvdXI+JikgY29uc3RydWN0b3IgZXhwbGljaXQKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlRWxlbWVudEJhc2UuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlRWxlbWVudEJhc2UuY3BwCShyZXZp
c2lvbiAxODMwMjYpCisrKyBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZUVsZW1lbnRCYXNl
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDMxLDYgKzQzMSw3IEBAIHZvaWQgU1ZHQW5pbWF0ZUVs
ZW1lbnRCYXNlOjpzZXRBdHRyaWJ1dGUKIAogdm9pZCBTVkdBbmltYXRlRWxlbWVudEJhc2U6OnJl
c2V0QW5pbWF0ZWRQcm9wZXJ0eVR5cGUoKQogeworICAgIFNWR0FuaW1hdGlvbkVsZW1lbnQ6OnJl
c2V0QW5pbWF0ZWRQcm9wZXJ0eVR5cGUoKTsKICAgICBBU1NFUlQoIW1fYW5pbWF0ZWRUeXBlKTsK
ICAgICBtX2Zyb21UeXBlID0gbnVsbHB0cjsKICAgICBtX3RvVHlwZSA9IG51bGxwdHI7CkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZUVsZW1lbnRCYXNlLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVFbGVtZW50QmFzZS5oCShyZXZpc2lvbiAx
ODMwMjYpCisrKyBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZUVsZW1lbnRCYXNlLmgJKHdv
cmtpbmcgY29weSkKQEAgLTUzLDExICs1MywxMSBAQCBwcm90ZWN0ZWQ6CiAKICAgICB2aXJ0dWFs
IHZvaWQgc2V0VGFyZ2V0RWxlbWVudChTVkdFbGVtZW50Kikgb3ZlcnJpZGU7CiAgICAgdmlydHVh
bCB2b2lkIHNldEF0dHJpYnV0ZU5hbWUoY29uc3QgUXVhbGlmaWVkTmFtZSYpIG92ZXJyaWRlOwor
ICAgIHZpcnR1YWwgdm9pZCByZXNldEFuaW1hdGVkUHJvcGVydHlUeXBlKCkgb3ZlcnJpZGU7CiAK
ICAgICBBbmltYXRlZFByb3BlcnR5VHlwZSBtX2FuaW1hdGVkUHJvcGVydHlUeXBlOwogCiBwcml2
YXRlOgotICAgIHZvaWQgcmVzZXRBbmltYXRlZFByb3BlcnR5VHlwZSgpOwogICAgIFNWR0FuaW1h
dGVkVHlwZUFuaW1hdG9yKiBlbnN1cmVBbmltYXRvcigpOwogICAgIGJvb2wgYW5pbWF0ZWRQcm9w
ZXJ0eVR5cGVTdXBwb3J0c0FkZGl0aW9uKCkgY29uc3Q7CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdBbmltYXRpb25FbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHQW5pbWF0aW9uRWxlbWVudC5jcHAJKHJldmlzaW9uIDE4MzAyNikKKysrIFNvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRpb25FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAt
Njc0LDYgKzY3NCwxMSBAQCB2b2lkIFNWR0FuaW1hdGlvbkVsZW1lbnQ6OmRldGVybWluZVByb3Bl
CiAgICAgaWYgKGluaGVyaXRzRnJvbVByb3BlcnR5KHRhcmdldEVsZW1lbnQsIGF0dHJpYnV0ZU5h
bWUsIHRvKSkKICAgICAgICAgbV90b1Byb3BlcnR5VmFsdWVUeXBlID0gSW5oZXJpdFZhbHVlOwog
fQordm9pZCBTVkdBbmltYXRpb25FbGVtZW50OjpyZXNldEFuaW1hdGVkUHJvcGVydHlUeXBlKCkK
K3sKKyAgICBtX2xhc3RWYWx1ZXNBbmltYXRpb25Gcm9tID0gU3RyaW5nKCk7CisgICAgbV9sYXN0
VmFsdWVzQW5pbWF0aW9uVG8gPSBTdHJpbmcoKTsKK30KIAogdm9pZCBTVkdBbmltYXRpb25FbGVt
ZW50OjpzZXRUYXJnZXRFbGVtZW50KFNWR0VsZW1lbnQqIHRhcmdldCkKIHsKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRpb25FbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGlvbkVsZW1lbnQuaAkocmV2aXNpb24gMTgzMDI2KQorKysg
U291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGlvbkVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpA
QCAtMTY4LDYgKzE2OCw3IEBAIHByb3RlY3RlZDoKIAogICAgIHZvaWQgY29tcHV0ZUNTU1Byb3Bl
cnR5VmFsdWUoU1ZHRWxlbWVudCosIENTU1Byb3BlcnR5SUQsIFN0cmluZyYgdmFsdWUpOwogICAg
IHZpcnR1YWwgdm9pZCBkZXRlcm1pbmVQcm9wZXJ0eVZhbHVlVHlwZXMoY29uc3QgU3RyaW5nJiBm
cm9tLCBjb25zdCBTdHJpbmcmIHRvKTsKKyAgICB2aXJ0dWFsIHZvaWQgcmVzZXRBbmltYXRlZFBy
b3BlcnR5VHlwZSgpOwogCiAgICAgc3RhdGljIGJvb2wgaXNTdXBwb3J0ZWRBdHRyaWJ1dGUoY29u
c3QgUXVhbGlmaWVkTmFtZSYpOwogICAgIHZpcnR1YWwgdm9pZCBwYXJzZUF0dHJpYnV0ZShjb25z
dCBRdWFsaWZpZWROYW1lJiwgY29uc3QgQXRvbWljU3RyaW5nJikgb3ZlcnJpZGU7CkluZGV4OiBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAxODMwNjkpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29w
eSkKQEAgLTEsMyArMSwxNyBAQAorMjAxNS0wNC0yMSAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWJv
dWhhbGxhd2FAYXBwbGUuY29tPgorCisgICAgICAgIFNWR0FuaW1hdGVFbGVtZW50QmFzZTo6Y2Fs
Y3VsYXRlQW5pbWF0ZWRWYWx1ZSgpIGFzc2VydHMgd2hlbiByZWluc2VydGluZyBhbiBTVkcgYW5p
bWF0aW5nIGVsZW1lbnQgd2l0aGluIHRoZSBzYW1lIGFuaW1hdGlvbiBsaW1pdHMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0Mzk5NAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogc3ZnL2FuaW1hdGlvbnMv
Y3Jhc2gtcmVpbnNlcnQtYW5pbWF0ZS1sZW5ndGgtc2FtZS1saW1pdHMtZXhwZWN0ZWQudHh0OiBB
ZGRlZC4KKyAgICAgICAgKiBzdmcvYW5pbWF0aW9ucy9jcmFzaC1yZWluc2VydC1hbmltYXRlLWxl
bmd0aC1zYW1lLWxpbWl0cy5zdmc6IEFkZGVkLgorICAgICAgICAqIHN2Zy9hbmltYXRpb25zL2Ny
YXNoLXJlaW5zZXJ0LWFuaW1hdGUtdHJhbnNmb3JtLXNhbWUtbGltaXRzLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogc3ZnL2FuaW1hdGlvbnMvY3Jhc2gtcmVpbnNlcnQtYW5pbWF0ZS10
cmFuc2Zvcm0tc2FtZS1saW1pdHMuc3ZnOiBBZGRlZC4KKyAgICAgICAgTWFrZSBzdXJlIHdoZW4g
cmVtb3ZpbmcgYW4gU1ZHIGFuaW1hdGluZyBlbGVtZW50IGFuZCByZWluc2VydGluZyBpdCBiYWNr
CisgICAgICAgIHdpdGhpbiB0aGUgc2FtZSBhbmltYXRpb24gbGVuZ3RoIG9yIHRyYW5zZm9ybSBs
aW1pdHMsIHdlIGRvIG5vdCBjcmFzaC4KKwogMjAxNS0wNC0yMSAgTWljaGFlbCBTYWJvZmYgIDxt
c2Fib2ZmQGFwcGxlLmNvbT4KIAogICAgICAgICBDcmFzaCBpbiBKU0M6OkludGVycHJldGVyOjpl
eGVjdXRlCkluZGV4OiBMYXlvdXRUZXN0cy9zdmcvYW5pbWF0aW9ucy9jcmFzaC1yZWluc2VydC1h
bmltYXRlLWxlbmd0aC1zYW1lLWxpbWl0cy1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvc3ZnL2FuaW1hdGlvbnMvY3Jhc2gtcmVpbnNlcnQtYW5pbWF0ZS1sZW5ndGgtc2Ft
ZS1saW1pdHMtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvc3ZnL2Fu
aW1hdGlvbnMvY3Jhc2gtcmVpbnNlcnQtYW5pbWF0ZS1sZW5ndGgtc2FtZS1saW1pdHMtZXhwZWN0
ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEgQEAKK1BBU1MKSW5kZXg6IExheW91dFRl
c3RzL3N2Zy9hbmltYXRpb25zL2NyYXNoLXJlaW5zZXJ0LWFuaW1hdGUtbGVuZ3RoLXNhbWUtbGlt
aXRzLnN2Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9zdmcvYW5pbWF0aW9ucy9jcmFzaC1y
ZWluc2VydC1hbmltYXRlLWxlbmd0aC1zYW1lLWxpbWl0cy5zdmcJKHJldmlzaW9uIDApCisrKyBM
YXlvdXRUZXN0cy9zdmcvYW5pbWF0aW9ucy9jcmFzaC1yZWluc2VydC1hbmltYXRlLWxlbmd0aC1z
YW1lLWxpbWl0cy5zdmcJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyMiBAQAorPHN2ZyB4bWxu
cz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorICA8Y2lyY2xlIGlkPSJsaW1lLWNpcmNs
ZSIgZmlsbD0ibGltZSIgY3g9IjEwMCIgY3k9IjEwMCIgcj0iOTAiLz4KKyAgPGNpcmNsZSBpZD0i
eWVsbG93LWNpcmNsZSIgZmlsbD0ieWVsbG93IiBjeD0iMTAwIiBjeT0iMTAwIiByPSI5MCI+Cisg
ICAgPGFuaW1hdGUgYXR0cmlidXRlTmFtZT0iciIgdmFsdWVzPSI5MDsgMzAiIGR1cj0iMnMiLz4K
KyAgPC9jaXJjbGU+CisgIDx0ZXh0IHg9IjEwMCIgeT0iMTAwIiB0ZXh0LWFuY2hvcj0ibWlkZGxl
IiBhbGlnbm1lbnQtYmFzZWxpbmU9Im1pZGRsZSI+UEFTUzwvdGV4dD4KKyAgPHNjcmlwdD4KKyAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OworICAgICAgdGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CisgICAgfQorICAgIHNldFRpbWVv
dXQoZnVuY3Rpb24oKSB7CisgICAgICB2YXIgbGltZUNpcmNsZSA9IGRvY3VtZW50LmdldEVsZW1l
bnRCeUlkKCJsaW1lLWNpcmNsZSIpOworICAgICAgdmFyIHllbGxvd0NpcmNsZSA9IGRvY3VtZW50
LmdldEVsZW1lbnRCeUlkKCJ5ZWxsb3ctY2lyY2xlIik7CisgICAgICBkb2N1bWVudC5kb2N1bWVu
dEVsZW1lbnQuaW5zZXJ0QmVmb3JlKHllbGxvd0NpcmNsZSwgbGltZUNpcmNsZSk7CisgICAgICBz
ZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisg
ICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgICB9LCAyMDApOworICAgIH0s
IDApOworICA8L3NjcmlwdD4KKzwvc3ZnPgpJbmRleDogTGF5b3V0VGVzdHMvc3ZnL2FuaW1hdGlv
bnMvY3Jhc2gtcmVpbnNlcnQtYW5pbWF0ZS10cmFuc2Zvcm0tc2FtZS1saW1pdHMtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3N2Zy9hbmltYXRpb25zL2NyYXNoLXJlaW5z
ZXJ0LWFuaW1hdGUtdHJhbnNmb3JtLXNhbWUtbGltaXRzLWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL3N2Zy9hbmltYXRpb25zL2NyYXNoLXJlaW5zZXJ0LWFuaW1hdGUt
dHJhbnNmb3JtLXNhbWUtbGltaXRzLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCww
ICsxIEBACitQQVNTCkluZGV4OiBMYXlvdXRUZXN0cy9zdmcvYW5pbWF0aW9ucy9jcmFzaC1yZWlu
c2VydC1hbmltYXRlLXRyYW5zZm9ybS1zYW1lLWxpbWl0cy5zdmcKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvc3ZnL2FuaW1hdGlvbnMvY3Jhc2gtcmVpbnNlcnQtYW5pbWF0ZS10cmFuc2Zvcm0t
c2FtZS1saW1pdHMuc3ZnCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvc3ZnL2FuaW1hdGlv
bnMvY3Jhc2gtcmVpbnNlcnQtYW5pbWF0ZS10cmFuc2Zvcm0tc2FtZS1saW1pdHMuc3ZnCSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsMjIgQEAKKzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3Jn
LzIwMDAvc3ZnIj4KKyAgPGNpcmNsZSBpZD0ibGltZS1jaXJjbGUiIGZpbGw9ImxpbWUiIGN4PSIx
MDAiIGN5PSIxMDAiIHI9IjQ1Ii8+CisgIDxjaXJjbGUgaWQ9InllbGxvdy1jaXJjbGUiIGZpbGw9
InllbGxvdyIgY3g9IjEwMCIgY3k9IjEwMCIgcj0iOTAiPgorICAgIDxhbmltYXRlVHJhbnNmb3Jt
IGF0dHJpYnV0ZU5hbWU9InRyYW5zZm9ybSIgdHlwZT0ic2NhbGUiIHZhbHVlcz0iMTsgMC41OyAx
IiBkdXI9IjJzIi8+CisgIDwvY2lyY2xlPgorICA8dGV4dCB4PSIxMDAiIHk9IjEwMCIgdGV4dC1h
bmNob3I9Im1pZGRsZSIgYWxpZ25tZW50LWJhc2VsaW5lPSJtaWRkbGUiPlBBU1M8L3RleHQ+Cisg
IDxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICB0ZXN0UnVubmVy
LmR1bXBBc1RleHQoKTsKKyAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgIH0K
KyAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgdmFyIGxpbWVDaXJjbGUgPSBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgibGltZS1jaXJjbGUiKTsKKyAgICAgIHZhciB5ZWxsb3dDaXJj
bGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgieWVsbG93LWNpcmNsZSIpOworICAgICAgZG9j
dW1lbnQuZG9jdW1lbnRFbGVtZW50Lmluc2VydEJlZm9yZSh5ZWxsb3dDaXJjbGUsIGxpbWVDaXJj
bGUpOworICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAgICAgICAgaWYgKHdpbmRvdy50
ZXN0UnVubmVyKQorICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgICAgfSwg
MjAwKTsKKyAgICB9LCAwKTsKKyAgPC9zY3JpcHQ+Cis8L3N2Zz4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251271</attachid>
            <date>2015-04-21 15:53:06 -0700</date>
            <delta_ts>2015-04-21 17:15:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-143994-20150421155203.patch</filename>
            <type>text/plain</type>
            <size>8662</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MzA2OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMwIEBACisyMDE1LTA0LTIxICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgU1ZHQW5pbWF0
ZUVsZW1lbnRCYXNlOjpjYWxjdWxhdGVBbmltYXRlZFZhbHVlKCkgYXNzZXJ0cyB3aGVuIHJlaW5z
ZXJ0aW5nIGFuIFNWRyBhbmltYXRpbmcgZWxlbWVudCB3aXRoaW4gdGhlIHNhbWUgYW5pbWF0aW9u
IGxpbWl0cworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTQzOTk0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgorCisgICAgICAgIE1h
a2Ugc3VyZSB0aGUgU1ZHIGFuaW1hdGlvbiB2YXJpYWJsZXMgYXJlIHJlc2V0IGNsZWFubHkgc3Vj
aCB0aGF0IGlmIHRoZQorICAgICAgICBhbmltYXRpb24gcmVzdGFydHMgaXQgY2FuIHJlYnVpbGQg
aXRzIGxpbWl0IHZhbHVlcyByZWxpYWJseSBhbmQgY29ycmVjdGx5LgorCisgICAgICAgIFRlc3Rz
OiBzdmcvYW5pbWF0aW9ucy9jcmFzaC1yZWluc2VydC1hbmltYXRlLWxlbmd0aC1zYW1lLWxpbWl0
cy5zdmcKKyAgICAgICAgICAgICAgIHN2Zy9hbmltYXRpb25zL2NyYXNoLXJlaW5zZXJ0LWFuaW1h
dGUtdHJhbnNmb3JtLXNhbWUtbGltaXRzLnN2ZworCisgICAgICAgICogc3ZnL1NWR0FuaW1hdGVF
bGVtZW50QmFzZS5oOgorICAgICAgICAqIHN2Zy9TVkdBbmltYXRlRWxlbWVudEJhc2UuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6U1ZHQW5pbWF0ZUVsZW1lbnRCYXNlOjpyZXNldEFuaW1hdGVkUHJv
cGVydHlUeXBlKToKKyAgICAgICAgQ2FsbCB0aGUgYmFzZSBjbGFzcyByZXNldEFuaW1hdGVkUHJv
cGVydHlUeXBlKCkgZnJvbSB0aGUgZGVyaXZlZCBjbGFzcy4KKworICAgICAgICAqIHN2Zy9TVkdB
bmltYXRpb25FbGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR0FuaW1hdGlvbkVsZW1lbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U1ZHQW5pbWF0aW9uRWxlbWVudDo6cmVzZXRBbmltYXRlZFBy
b3BlcnR5VHlwZSk6CisgICAgICAgIE1ha2UgcmVzZXRBbmltYXRlZFByb3BlcnR5VHlwZSgpIHZp
cnR1YWwuIFRoZSBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgYmFzZQorICAgICAgICBjbGFzcyBvZiB0
aGlzIGZ1bmN0aW9uIHJlc2V0cyB0aGUgdmFsdWVzIG9mIHRoZSBhbmltYXRpb24gbGltaXRzLiBX
aGVuCisgICAgICAgIHVwZGF0ZUFuaW1hdGlvbigpIGlzIGNhbGxlZCwgaXQgd2lsbCBiZSBmb3Jj
ZWQgdG8gcmVjYWxjdWxhdGUgdGhlIGFuaW1hdGlvbgorICAgICAgICBsaW1pdHMgYnkgY2FsbGlu
ZyBjYWxjdWxhdGVGcm9tQW5kVG9WYWx1ZXMoKSBldmVuIGlmIHRoZSBsaW1pdHMgaGF2ZSBub3QK
KyAgICAgICAgY2hhbmdlZC4KKwogMjAxNS0wNC0yMSAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBw
bGUuY29tPgogCiAgICAgICAgIE1ha2UgVmVjdG9yKGNvbnN0IFZlY3RvcjxULCBvdGhlckNhcGFj
aXR5LCBvdGhlck92ZXJmbG93QmVoYXZpb3VyPiYpIGNvbnN0cnVjdG9yIGV4cGxpY2l0CkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZUVsZW1lbnRCYXNlLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQW5pbWF0ZUVsZW1lbnRCYXNlLmNwcAkocmV2aXNp
b24gMTgzMDI2KQorKysgU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVFbGVtZW50QmFzZS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTQzMSw2ICs0MzEsNyBAQCB2b2lkIFNWR0FuaW1hdGVFbGVt
ZW50QmFzZTo6c2V0QXR0cmlidXRlCiAKIHZvaWQgU1ZHQW5pbWF0ZUVsZW1lbnRCYXNlOjpyZXNl
dEFuaW1hdGVkUHJvcGVydHlUeXBlKCkKIHsKKyAgICBTVkdBbmltYXRpb25FbGVtZW50OjpyZXNl
dEFuaW1hdGVkUHJvcGVydHlUeXBlKCk7CiAgICAgQVNTRVJUKCFtX2FuaW1hdGVkVHlwZSk7CiAg
ICAgbV9mcm9tVHlwZSA9IG51bGxwdHI7CiAgICAgbV90b1R5cGUgPSBudWxscHRyOwpJbmRleDog
U291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVFbGVtZW50QmFzZS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRlRWxlbWVudEJhc2UuaAkocmV2aXNpb24gMTgz
MDI2KQorKysgU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FuaW1hdGVFbGVtZW50QmFzZS5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC01MywxMSArNTMsMTEgQEAgcHJvdGVjdGVkOgogCiAgICAgdmlydHVhbCB2
b2lkIHNldFRhcmdldEVsZW1lbnQoU1ZHRWxlbWVudCopIG92ZXJyaWRlOwogICAgIHZpcnR1YWwg
dm9pZCBzZXRBdHRyaWJ1dGVOYW1lKGNvbnN0IFF1YWxpZmllZE5hbWUmKSBvdmVycmlkZTsKKyAg
ICB2aXJ0dWFsIHZvaWQgcmVzZXRBbmltYXRlZFByb3BlcnR5VHlwZSgpIG92ZXJyaWRlOwogCiAg
ICAgQW5pbWF0ZWRQcm9wZXJ0eVR5cGUgbV9hbmltYXRlZFByb3BlcnR5VHlwZTsKIAogcHJpdmF0
ZToKLSAgICB2b2lkIHJlc2V0QW5pbWF0ZWRQcm9wZXJ0eVR5cGUoKTsKICAgICBTVkdBbmltYXRl
ZFR5cGVBbmltYXRvciogZW5zdXJlQW5pbWF0b3IoKTsKICAgICBib29sIGFuaW1hdGVkUHJvcGVy
dHlUeXBlU3VwcG9ydHNBZGRpdGlvbigpIGNvbnN0OwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHQW5pbWF0aW9uRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
c3ZnL1NWR0FuaW1hdGlvbkVsZW1lbnQuY3BwCShyZXZpc2lvbiAxODMwMjYpCisrKyBTb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHQW5pbWF0aW9uRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY3
NCw2ICs2NzQsMTEgQEAgdm9pZCBTVkdBbmltYXRpb25FbGVtZW50OjpkZXRlcm1pbmVQcm9wZQog
ICAgIGlmIChpbmhlcml0c0Zyb21Qcm9wZXJ0eSh0YXJnZXRFbGVtZW50LCBhdHRyaWJ1dGVOYW1l
LCB0bykpCiAgICAgICAgIG1fdG9Qcm9wZXJ0eVZhbHVlVHlwZSA9IEluaGVyaXRWYWx1ZTsKIH0K
K3ZvaWQgU1ZHQW5pbWF0aW9uRWxlbWVudDo6cmVzZXRBbmltYXRlZFByb3BlcnR5VHlwZSgpCit7
CisgICAgbV9sYXN0VmFsdWVzQW5pbWF0aW9uRnJvbSA9IFN0cmluZygpOworICAgIG1fbGFzdFZh
bHVlc0FuaW1hdGlvblRvID0gU3RyaW5nKCk7Cit9CiAKIHZvaWQgU1ZHQW5pbWF0aW9uRWxlbWVu
dDo6c2V0VGFyZ2V0RWxlbWVudChTVkdFbGVtZW50KiB0YXJnZXQpCiB7CkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHQW5pbWF0aW9uRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdBbmltYXRpb25FbGVtZW50LmgJKHJldmlzaW9uIDE4MzAyNikKKysrIFNv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdBbmltYXRpb25FbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAg
LTE2OCw2ICsxNjgsNyBAQCBwcm90ZWN0ZWQ6CiAKICAgICB2b2lkIGNvbXB1dGVDU1NQcm9wZXJ0
eVZhbHVlKFNWR0VsZW1lbnQqLCBDU1NQcm9wZXJ0eUlELCBTdHJpbmcmIHZhbHVlKTsKICAgICB2
aXJ0dWFsIHZvaWQgZGV0ZXJtaW5lUHJvcGVydHlWYWx1ZVR5cGVzKGNvbnN0IFN0cmluZyYgZnJv
bSwgY29uc3QgU3RyaW5nJiB0byk7CisgICAgdmlydHVhbCB2b2lkIHJlc2V0QW5pbWF0ZWRQcm9w
ZXJ0eVR5cGUoKTsKIAogICAgIHN0YXRpYyBib29sIGlzU3VwcG9ydGVkQXR0cmlidXRlKGNvbnN0
IFF1YWxpZmllZE5hbWUmKTsKICAgICB2aXJ0dWFsIHZvaWQgcGFyc2VBdHRyaWJ1dGUoY29uc3Qg
UXVhbGlmaWVkTmFtZSYsIGNvbnN0IEF0b21pY1N0cmluZyYpIG92ZXJyaWRlOwpJbmRleDogTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwko
cmV2aXNpb24gMTgzMDY5KQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkp
CkBAIC0xLDMgKzEsMTcgQEAKKzIwMTUtMDQtMjEgIFNhaWQgQWJvdS1IYWxsYXdhICA8c2Fib3Vo
YWxsYXdhQGFwcGxlLmNvbT4KKworICAgICAgICBTVkdBbmltYXRlRWxlbWVudEJhc2U6OmNhbGN1
bGF0ZUFuaW1hdGVkVmFsdWUoKSBhc3NlcnRzIHdoZW4gcmVpbnNlcnRpbmcgYW4gU1ZHIGFuaW1h
dGluZyBlbGVtZW50IHdpdGhpbiB0aGUgc2FtZSBhbmltYXRpb24gbGltaXRzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDM5OTQKKworICAgICAgICBS
ZXZpZXdlZCBieSBTaW1vbiBGcmFzZXIuCisKKyAgICAgICAgKiBzdmcvYW5pbWF0aW9ucy9jcmFz
aC1yZWluc2VydC1hbmltYXRlLWxlbmd0aC1zYW1lLWxpbWl0cy1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIHN2Zy9hbmltYXRpb25zL2NyYXNoLXJlaW5zZXJ0LWFuaW1hdGUtbGVuZ3Ro
LXNhbWUtbGltaXRzLnN2ZzogQWRkZWQuCisgICAgICAgICogc3ZnL2FuaW1hdGlvbnMvY3Jhc2gt
cmVpbnNlcnQtYW5pbWF0ZS10cmFuc2Zvcm0tc2FtZS1saW1pdHMtZXhwZWN0ZWQudHh0OiBBZGRl
ZC4KKyAgICAgICAgKiBzdmcvYW5pbWF0aW9ucy9jcmFzaC1yZWluc2VydC1hbmltYXRlLXRyYW5z
Zm9ybS1zYW1lLWxpbWl0cy5zdmc6IEFkZGVkLgorICAgICAgICBNYWtlIHN1cmUgd2hlbiByZW1v
dmluZyBhbiBTVkcgYW5pbWF0aW5nIGVsZW1lbnQgYW5kIHJlaW5zZXJ0aW5nIGl0IGJhY2sKKyAg
ICAgICAgd2l0aGluIHRoZSBzYW1lIGFuaW1hdGlvbiBsZW5ndGggb3IgdHJhbnNmb3JtIGxpbWl0
cywgd2UgZG8gbm90IGNyYXNoLgorCiAyMDE1LTA0LTIxICBNaWNoYWVsIFNhYm9mZiAgPG1zYWJv
ZmZAYXBwbGUuY29tPgogCiAgICAgICAgIENyYXNoIGluIEpTQzo6SW50ZXJwcmV0ZXI6OmV4ZWN1
dGUKSW5kZXg6IExheW91dFRlc3RzL3N2Zy9hbmltYXRpb25zL2NyYXNoLXJlaW5zZXJ0LWFuaW1h
dGUtbGVuZ3RoLXNhbWUtbGltaXRzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRU
ZXN0cy9zdmcvYW5pbWF0aW9ucy9jcmFzaC1yZWluc2VydC1hbmltYXRlLWxlbmd0aC1zYW1lLWxp
bWl0cy1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9zdmcvYW5pbWF0
aW9ucy9jcmFzaC1yZWluc2VydC1hbmltYXRlLWxlbmd0aC1zYW1lLWxpbWl0cy1leHBlY3RlZC50
eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSBAQAorUEFTUwpJbmRleDogTGF5b3V0VGVzdHMv
c3ZnL2FuaW1hdGlvbnMvY3Jhc2gtcmVpbnNlcnQtYW5pbWF0ZS1sZW5ndGgtc2FtZS1saW1pdHMu
c3ZnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3N2Zy9hbmltYXRpb25zL2NyYXNoLXJlaW5z
ZXJ0LWFuaW1hdGUtbGVuZ3RoLXNhbWUtbGltaXRzLnN2ZwkocmV2aXNpb24gMCkKKysrIExheW91
dFRlc3RzL3N2Zy9hbmltYXRpb25zL2NyYXNoLXJlaW5zZXJ0LWFuaW1hdGUtbGVuZ3RoLXNhbWUt
bGltaXRzLnN2Zwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDI0IEBACis8c3ZnIHhtbG5zPSJo
dHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CisgIDxjaXJjbGUgaWQ9ImxpbWUtY2lyY2xlIiBm
aWxsPSJsaW1lIiBjeD0iMTAwIiBjeT0iMTAwIiByPSI5MCIvPgorICA8Y2lyY2xlIGlkPSJ5ZWxs
b3ctY2lyY2xlIiBmaWxsPSJ5ZWxsb3ciIGN4PSIxMDAiIGN5PSIxMDAiIHI9IjkwIj4KKyAgICA8
YW5pbWF0ZSBhdHRyaWJ1dGVOYW1lPSJyIiB2YWx1ZXM9IjkwOyAzMCIgZHVyPSIycyIvPgorICA8
L2NpcmNsZT4KKyAgPHRleHQgeD0iMTAwIiB5PSIxMDAiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGFs
aWdubWVudC1iYXNlbGluZT0ibWlkZGxlIj5QQVNTPC90ZXh0PgorICA8c2NyaXB0PgorICAgIGlm
ICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgdGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Cisg
ICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICB9CisgICAgc2V0VGltZW91dChm
dW5jdGlvbigpIHsKKyAgICAgIHZhciBsaW1lQ2lyY2xlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImxpbWUtY2lyY2xlIik7CisgICAgICB2YXIgeWVsbG93Q2lyY2xlID0gZG9jdW1lbnQuZ2V0
RWxlbWVudEJ5SWQoInllbGxvdy1jaXJjbGUiKTsKKyAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxl
bWVudC5pbnNlcnRCZWZvcmUoeWVsbG93Q2lyY2xlLCBsaW1lQ2lyY2xlKTsKKyAgICAgIC8vIFRo
aXMgdGltZW91dCBpcyBuZWVkZWQgdG8gZW5zdXJlIHRoYXQgdGhlIGFuaW1hdGlvbiB0aW1lciBp
cyBmaXJlZCBhdAorICAgICAgLy8gbGVhc3Qgb25jZSBiZWZvcmUgdGhlIHRlc3QgaXMgZG9uZS4K
KyAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICAgIH0sIDApOwor
ICAgIH0sIDApOworICA8L3NjcmlwdD4KKzwvc3ZnPgpJbmRleDogTGF5b3V0VGVzdHMvc3ZnL2Fu
aW1hdGlvbnMvY3Jhc2gtcmVpbnNlcnQtYW5pbWF0ZS10cmFuc2Zvcm0tc2FtZS1saW1pdHMtZXhw
ZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3N2Zy9hbmltYXRpb25zL2NyYXNo
LXJlaW5zZXJ0LWFuaW1hdGUtdHJhbnNmb3JtLXNhbWUtbGltaXRzLWV4cGVjdGVkLnR4dAkocmV2
aXNpb24gMCkKKysrIExheW91dFRlc3RzL3N2Zy9hbmltYXRpb25zL2NyYXNoLXJlaW5zZXJ0LWFu
aW1hdGUtdHJhbnNmb3JtLXNhbWUtbGltaXRzLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtMCwwICsxIEBACitQQVNTCkluZGV4OiBMYXlvdXRUZXN0cy9zdmcvYW5pbWF0aW9ucy9jcmFz
aC1yZWluc2VydC1hbmltYXRlLXRyYW5zZm9ybS1zYW1lLWxpbWl0cy5zdmcKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gTGF5b3V0VGVzdHMvc3ZnL2FuaW1hdGlvbnMvY3Jhc2gtcmVpbnNlcnQtYW5pbWF0ZS10cmFu
c2Zvcm0tc2FtZS1saW1pdHMuc3ZnCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvc3ZnL2Fu
aW1hdGlvbnMvY3Jhc2gtcmVpbnNlcnQtYW5pbWF0ZS10cmFuc2Zvcm0tc2FtZS1saW1pdHMuc3Zn
CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjQgQEAKKzxzdmcgeG1sbnM9Imh0dHA6Ly93d3cu
dzMub3JnLzIwMDAvc3ZnIj4KKyAgPGNpcmNsZSBpZD0ibGltZS1jaXJjbGUiIGZpbGw9ImxpbWUi
IGN4PSIxMDAiIGN5PSIxMDAiIHI9IjQ1Ii8+CisgIDxjaXJjbGUgaWQ9InllbGxvdy1jaXJjbGUi
IGZpbGw9InllbGxvdyIgY3g9IjEwMCIgY3k9IjEwMCIgcj0iOTAiPgorICAgIDxhbmltYXRlVHJh
bnNmb3JtIGF0dHJpYnV0ZU5hbWU9InRyYW5zZm9ybSIgdHlwZT0ic2NhbGUiIHZhbHVlcz0iMTsg
MC41OyAxIiBkdXI9IjJzIi8+CisgIDwvY2lyY2xlPgorICA8dGV4dCB4PSIxMDAiIHk9IjEwMCIg
dGV4dC1hbmNob3I9Im1pZGRsZSIgYWxpZ25tZW50LWJhc2VsaW5lPSJtaWRkbGUiPlBBU1M8L3Rl
eHQ+CisgIDxzY3JpcHQ+CisgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICB0ZXN0
UnVubmVyLmR1bXBBc1RleHQoKTsKKyAgICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOwor
ICAgIH0KKyAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAgdmFyIGxpbWVDaXJjbGUg
PSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibGltZS1jaXJjbGUiKTsKKyAgICAgIHZhciB5ZWxs
b3dDaXJjbGUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgieWVsbG93LWNpcmNsZSIpOworICAg
ICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Lmluc2VydEJlZm9yZSh5ZWxsb3dDaXJjbGUsIGxp
bWVDaXJjbGUpOworICAgICAgLy8gVGhpcyB0aW1lb3V0IGlzIG5lZWRlZCB0byBlbnN1cmUgdGhh
dCB0aGUgYW5pbWF0aW9uIHRpbWVyIGlzIGZpcmVkIGF0CisgICAgICAvLyBsZWFzdCBvbmNlIGJl
Zm9yZSB0aGUgdGVzdCBpcyBkb25lLgorICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKKyAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5
RG9uZSgpOworICAgICAgfSwgMCk7CisgICAgfSwgMCk7CisgIDwvc2NyaXB0PgorPC9zdmc+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>