<?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>186127</bug_id>
          
          <creation_ts>2018-05-30 23:58:02 -0700</creation_ts>
          <short_desc>[iOS] Transformation matrix not preserved when pausing complex animation with Bézier timing function</short_desc>
          <delta_ts>2020-06-26 07:38:03 -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>Animations</component>
          <version>Safari 12</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>iOS 13</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://github.com/web-platform-tests/wpt/pull/11279</see_also>
          <bug_file_loc>https://codepen.io/anon/pen/bWGobG</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>170784</dependson>
    
    <dependson>186045</dependson>
    
    <dependson>186129</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Frédéric Wang Nélar">fred.wang</reporter>
          <assigned_to name="Frédéric Wang Nélar">fred.wang</assigned_to>
          <cc>dino</cc>
    
    <cc>graouts</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1428763</commentid>
    <comment_count>0</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2018-05-30 23:58:02 -0700</bug_when>
    <thetext>Extracted from bug 170784. With the patch for bug 170784, http://codepen.io/anon/pen/bWGobG can be paused but the rotation angle is lost.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1428764</commentid>
    <comment_count>1</comment_count>
      <attachid>341645</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2018-05-31 00:00:36 -0700</bug_when>
    <thetext>Created attachment 341645
Testcase

Compare animations with linear timing function VS steps timing function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1428817</commentid>
    <comment_count>2</comment_count>
      <attachid>341659</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2018-05-31 05:11:01 -0700</bug_when>
    <thetext>Created attachment 341659
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1428852</commentid>
    <comment_count>3</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2018-05-31 09:07:29 -0700</bug_when>
    <thetext>Submitted web-platform-tests pull request: https://github.com/web-platform-tests/wpt/pull/11279</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1431171</commentid>
    <comment_count>4</comment_count>
      <attachid>342247</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2018-06-08 02:42:07 -0700</bug_when>
    <thetext>Created attachment 342247
Patch

Improved test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1432679</commentid>
    <comment_count>5</comment_count>
      <attachid>342666</attachid>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2018-06-13 09:51:04 -0700</bug_when>
    <thetext>Created attachment 342666
Another testcase

So I tried to compare what happens on macOS and iOS and basically they both use CALayer&apos;s addAnimation to add two animations (translate and rotate) and later replace them by a zero-speed copy. Below are the output in PlatformCALayerCocoa::addAnimationForKey and PlatformCAAnimationRemote&apos;s addAnimationToLayer for the attached testcase. I don&apos;t see any obvious difference so my guess would be a bug in the iOS-implementation of the CALayer classes.

== macOS ==

(lldb)  p propertyAnimation.valueFunction.name
(__NSCFConstantString *) $30 = 0x00007fffadc428c0 @&quot;translate&quot;
(lldb) po propertyAnimation
&lt;CABasicAnimation:0x7f8ba545a2c0; delegate = &lt;WebAnimationDelegate: 0x7f8ba5630530&gt;; toValue = (
    90,
    0,
    0
); fromValue = (
    0,
    0,
    0
); valueFunction = &lt;CAValueFunction: 0x7f8ba562ea20&gt;; timingFunction = linear; additive = 0; removedOnCompletion = 0; fillMode = forwards; autoreverses = 0; repeatCount = 1; timeOffset = 2.30686; speed = 0; duration = 5; WKPlatformCAAnimationExplicitBeginTimeFlag = false; beginTime = 4023.49; keyPath = transform&gt;

(lldb)  p propertyAnimation.valueFunction.name
(__NSCFConstantString *) $34 = 0x00007fffadc42800 @&quot;rotateZ&quot;
(lldb) po propertyAnimation
&lt;CABasicAnimation:0x7f8ba560c010; delegate = &lt;WebAnimationDelegate: 0x7f8ba5630530&gt;; toValue = 3.1415927410125732; fromValue = 0.0; valueFunction = &lt;CAValueFunction: 0x7f8ba562ead0&gt;; timingFunction = linear; additive = 1; removedOnCompletion = 0; fillMode = forwards; autoreverses = 0; repeatCount = 1; timeOffset = 2.30686; speed = 0; duration = 5; WKPlatformCAAnimationExplicitBeginTimeFlag = false; beginTime = 4023.49; keyPath = transform&gt;

== iOS ==

(lldb) p properties.valueFunction
(const ValueFunctionType) $10 = Translate
(lldb) po caAnimation.get()
&lt;CABasicAnimation:0x7fd694f9fd50; delegate = &lt;WKAnimationDelegate: 0x7fd694eded40&gt;; valueFunction = &lt;CAValueFunction: 0x7fd694fd4d70&gt;; fillMode = forwards; additive = 0; removedOnCompletion = 0; autoreverses = 0; speed = 0; repeatCount = 1; timeOffset = 2.30493; duration = 5; beginTime = 4494.56; timingFunction = linear; toValue = (
    90,
    0,
    0
); fromValue = (
    0,
    0,
    0
); keyPath = transform&gt;

(lldb) p properties.valueFunction
(const ValueFunctionType) $12 = RotateZ
(lldb) po caAnimation.get()
&lt;CABasicAnimation:0x7fd694feb1c0; delegate = &lt;WKAnimationDelegate: 0x7fd694eded40&gt;; valueFunction = &lt;CAValueFunction: 0x7fd694fd43d0&gt;; fillMode = forwards; additive = 1; removedOnCompletion = 0; autoreverses = 0; speed = 0; repeatCount = 1; timeOffset = 2.30493; duration = 5; beginTime = 4494.56; timingFunction = linear; toValue = 3.1415927410125732; fromValue = 0.0; keyPath = transform&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1438909</commentid>
    <comment_count>6</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2018-07-03 11:47:22 -0700</bug_when>
    <thetext>Just tried again after https://trac.webkit.org/changeset/233460/webkit and animations of the testcases can be paused but the rotation angle is lost. I&apos;m testing a trunk build on the iOS simulator using the public SDK. As said in comment 5, I don&apos;t see any difference between iOS and macOS regarding how animations are set on the CALayer, so I wonder whether the issue is actually in proprietary code.

@Antoine Quint: Do you see the same bug with your setup? Do you think it&apos;s fixable in WebKit (maybe with a hack like the bug7311367Workaround function in GraphicsLayerCA)?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468597</commentid>
    <comment_count>7</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-10-12 14:35:28 -0700</bug_when>
    <thetext>&lt;rdar://problem/45237786&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468599</commentid>
    <comment_count>8</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2018-10-12 14:35:53 -0700</bug_when>
    <thetext>https://codepen.io/anon/pen/bWGobG still shows this bug on iOS.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1468600</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-10-12 14:36:21 -0700</bug_when>
    <thetext>&lt;rdar://problem/45237815&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1499493</commentid>
    <comment_count>10</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2019-01-29 03:07:43 -0800</bug_when>
    <thetext>(In reply to Simon Fraser (smfr) from comment #8)
&gt; https://codepen.io/anon/pen/bWGobG still shows this bug on iOS.

The bug still happens with the latest beta iOS 12.2 (January 24).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537080</commentid>
    <comment_count>11</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2019-05-17 04:08:14 -0700</bug_when>
    <thetext>(In reply to Frédéric Wang (:fredw) from comment #10)
&gt; (In reply to Simon Fraser (smfr) from comment #8)
&gt; &gt; https://codepen.io/anon/pen/bWGobG still shows this bug on iOS.
&gt; 
&gt; The bug still happens with the latest beta iOS 12.2 (January 24).

Same in iOS beta 12.3 (May 13)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537170</commentid>
    <comment_count>12</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2019-05-17 11:21:21 -0700</bug_when>
    <thetext>Doesn&apos;t seem to reproduce in Safari Tech Preview 82.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1537191</commentid>
    <comment_count>13</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2019-05-17 12:02:32 -0700</bug_when>
    <thetext>(In reply to Simon Fraser (smfr) from comment #12)
&gt; Doesn&apos;t seem to reproduce in Safari Tech Preview 82.

You mean macOS? This bug is iOS-specific</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1548369</commentid>
    <comment_count>14</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2019-06-26 23:02:14 -0700</bug_when>
    <thetext>In iOS 13 beta 2, the rotation angle seems to be preserved but the translation is lost.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1593327</commentid>
    <comment_count>15</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2019-11-24 23:17:15 -0800</bug_when>
    <thetext>(In reply to Frédéric Wang (:fredw) from comment #14)
&gt; In iOS 13 beta 2, the rotation angle seems to be preserved but the
&gt; translation is lost.

Same in iOS 13 beta 3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1666427</commentid>
    <comment_count>16</comment_count>
    <who name="Frédéric Wang Nélar">fred.wang</who>
    <bug_when>2020-06-26 07:38:03 -0700</bug_when>
    <thetext>(In reply to Frédéric Wang (:fredw) from comment #15)
&gt; (In reply to Frédéric Wang (:fredw) from comment #14)
&gt; &gt; In iOS 13 beta 2, the rotation angle seems to be preserved but the
&gt; &gt; translation is lost.
&gt; 
&gt; Same in iOS 13 beta 3

This bug is fixed in iOS 14 beta (18A5301v).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>341645</attachid>
            <date>2018-05-31 00:00:36 -0700</date>
            <delta_ts>2018-05-31 00:00:36 -0700</delta_ts>
            <desc>Testcase</desc>
            <filename>set-animation-play-state-to-paused-002.html</filename>
            <type>text/html</type>
            <size>2959</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sIGNsYXNzPSJyZWZ0ZXN0LXdhaXQiPgogIDxoZWFkPgogICAg
PG1ldGEgY2hhcnNldD0idXRmLTgiPgogICAgPHRpdGxlPkR5bmFtaWNhbGx5IHNldCBhbmltYXRp
b24tcGxheS1zdGF0ZSB0byBwYXVzZWQ8L3RpdGxlPgogICAgPGxpbmsgcmVsPSJhdXRob3IiIHRp
dGxlPSJJZ2FsaWEgUy5MLiIgaHJlZj0iaHR0cHM6Ly93d3cuaWdhbGlhLmNvbS8iPgogICAgPGxp
bmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLWFuaW1hdGlv
bnMtMS8jYW5pbWF0aW9uLXBsYXktc3RhdGUiPgogICAgPG1ldGEgbmFtZT0iYXNzZXJ0IiBjb250
ZW50PSJWaXN1YWxseSBjaGVjayB0aGF0IGNvbXBsZXggYW5pbWF0aW9ucyBzdG9wCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHdoZW4gYW5pbWF0aW9uLXBsYXktc3RhdGUgaXMgc2V0
IHRvIHBhdXNlZCI+CiAgICA8bGluayByZWw9Im1hdGNoIiBocmVmPSJzZXQtYW5pbWF0aW9uLXBs
YXktc3RhdGUtdG8tcGF1c2VkLTAwMi1yZWYuaHRtbCI+CiAgICA8c3R5bGU+CiAgICAgICNjb250
YWluZXIgewogICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICAgICAgICBsZWZ0OiAwOwogICAg
ICAgIHRvcDogM2VtOwogICAgICB9CiAgICAgICNsaW5lTGluZWFyLCAjbGluZVN0ZXBzICB7CiAg
ICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGJhY2tncm91bmQ6IHJlZDsKICAgICAg
ICB3aWR0aDogMTBweDsKICAgICAgICBoZWlnaHQ6IDUwcHg7CiAgICAgICAgbGVmdDogOTVweDsK
ICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMCU7CiAgICAgIH0KICAgICAgI2NvdmVyaW5n
UmVjdExpbmVhciwgI2NvdmVyaW5nUmVjdFN0ZXBzIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1
dGU7CiAgICAgICAgYmFja2dyb3VuZDogbGlnaHRncmVlbjsKICAgICAgICB3aWR0aDogNDBweDsK
ICAgICAgICBoZWlnaHQ6IDcwcHg7CiAgICAgICAgbGVmdDogODBweDsKICAgICAgICB0cmFuc2Zv
cm0tb3JpZ2luOiA1MCUgMTAlOwogICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDM2cHgsIDAp
IHJvdGF0ZSgxNDRkZWcpOwogICAgICB9CiAgICAgICNjb3ZlcmluZ1JlY3RMaW5lYXIsICNsaW5l
TGluZWFyIHsKICAgICAgICB0b3A6IDUwcHg7CiAgICAgIH0KICAgICAgI2NvdmVyaW5nUmVjdFN0
ZXBzLCAjbGluZVN0ZXBzIHsKICAgICAgICB0b3A6IDE1MHB4OwogICAgICB9CiAgICAgICNsaW5l
TGluZWFyIHsKICAgICAgICBhbmltYXRpb246IHJvdGF0ZSAycyBsaW5lYXI7CiAgICAgIH0KICAg
ICAgI2xpbmVTdGVwcyB7CiAgICAgICAgYW5pbWF0aW9uOiByb3RhdGUgMnMgc3RlcHMoMzYwLCBl
bmQpOwogICAgICB9CiAgICAgIC5wYXVzZSB7CiAgICAgICAgb3BhY2l0eTogMC42OwogICAgICAg
IGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBwYXVzZWQgIWltcG9ydGFudDsKICAgICAgfQogICAgICBA
a2V5ZnJhbWVzIHJvdGF0ZQogICAgICB7CiAgICAgICAgMTAwJSB7CiAgICAgICAgICB0cmFuc2Zv
cm06IHRyYW5zbGF0ZSg5MHB4LCAwKSByb3RhdGUoMzYwZGVnKTsKICAgICAgICB9CiAgICAgIH0K
ICAgIDwvc3R5bGU+CiAgICA8c2NyaXB0PgogICAgICB2YXIgc3RhcnQgPSBudWxsOwogICAgICB2
YXIgYW5pbWF0aW9uRHVyYXRpb24gPSAyMDAwOwogICAgICB2YXIgY292ZXJpbmdSZWN0QW5nbGUg
PSAxNDQ7CiAgICAgIHZhciByZWN0RmluYWxBbmdsZSA9IDM2MDsKICAgICAgZnVuY3Rpb24gc3Rl
cCh0aW1lc3RhbXApIHsKICAgICAgICBpZiAoIXN0YXJ0KSBzdGFydCA9IHRpbWVzdGFtcDsKICAg
ICAgICB2YXIgcHJvZ3Jlc3MgPSB0aW1lc3RhbXAgLSBzdGFydDsKCiAgICAgICAgLy8gUGF1c2Ug
dGhlIGFuaW1hdGlvbnMgd2hlbiB0aGUgc3F1YXJlcyBwYXNzIHVuZGVyIHRoZSBjb3ZlcmluZyBy
ZWN0LgogICAgICAgIHZhciB0YXJnZXRQcm9ncmVzcyA9IGFuaW1hdGlvbkR1cmF0aW9uICogY292
ZXJpbmdSZWN0QW5nbGUgLyByZWN0RmluYWxBbmdsZTsKICAgICAgICBpZiAocHJvZ3Jlc3MgPj0g
dGFyZ2V0UHJvZ3Jlc3MpIHsKICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsaW5l
TGluZWFyIikuY2xhc3NMaXN0LmFkZCgicGF1c2UiKTsKICAgICAgICAgIGRvY3VtZW50LmdldEVs
ZW1lbnRCeUlkKCJsaW5lU3RlcHMiKS5jbGFzc0xpc3QuYWRkKCJwYXVzZSIpOwogICAgICAgIH0K
CiAgICAgICAgLy8gV2FpdCBhIGJpdCBzbyB0aGF0IHRoZSBzcXVhcmVzIHBhc3MgdGhlIGNvdmVy
aW5nIHJlY3QgaWYgdGhlCiAgICAgICAgLy8gYW5pbWF0aW9uIGZhaWxzIHRvIGJlIHBhdXNlZC4K
ICAgICAgICB2YXIgZGVsdGEgPSAyMDA7CiAgICAgICAgaWYgKHByb2dyZXNzIDwgdGFyZ2V0UHJv
Z3Jlc3MgKyBkZWx0YSkKICAgICAgICAgIHdpbmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoc3Rl
cCkKICAgICAgICBlbHNlCiAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NM
aXN0LnJlbW92ZSgicmVmdGVzdC13YWl0Iik7CiAgICAgIH0KICAgICAgZnVuY3Rpb24gcnVuVGVz
dCgpIHsKICAgICAgICB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKHN0ZXApOwogICAgICB9
CiAgICA8L3NjcmlwdD4KICA8L2hlYWQ+CiAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCkiPgogICAg
PHA+VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIHR3byByb3RhdGVkIGdyZWVuIHJlY3Rhbmds
ZXMgYW5kIG5vIHJlZC48L3A+CiAgICA8ZGl2IGlkPSJjb250YWluZXIiPgogICAgICA8ZGl2IGlk
PSJsaW5lTGluZWFyIj48L2Rpdj4KICAgICAgPGRpdiBpZD0iY292ZXJpbmdSZWN0TGluZWFyIj48
L2Rpdj4KICAgICAgPGRpdiBpZD0ibGluZVN0ZXBzIj48L2Rpdj4KICAgICAgPGRpdiBpZD0iY292
ZXJpbmdSZWN0U3RlcHMiPjwvZGl2PgogICAgPC9kaXY+CiAgPC9ib2R5Pgo8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>341659</attachid>
            <date>2018-05-31 05:11:01 -0700</date>
            <delta_ts>2018-06-08 02:42:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-186127-20180531141100.patch</filename>
            <type>text/plain</type>
            <size>5916</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMyMjg4CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBv
cnRlZC93M2MvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL0NoYW5nZUxvZwpp
bmRleCA1ZjNlZWZmYmU3NjQ1NzYwZGUxNTJlYTdkYzM0YWFkMjAyYTliNmRiLi4xZWFiM2EzM2M1
MjY1NDk0ZWY0MzliMThjMWIwNzhhZTg3YTk1MWRkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9p
bXBvcnRlZC93M2MvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL2ltcG9ydGVkL3czYy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxOC0wNS0zMSAgRnJlZGVyaWMgV2FuZyAgPGZ3YW5n
QGlnYWxpYS5jb20+CisKKyAgICAgICAgW2lPU10gVHJhbmZvcm1hdGlvbiBtYXRyaXggbm90IHBy
ZXNlcnZlZCB3aGVuIHBhdXNpbmcgY29tcGxleCBhbmltYXRpb24gd2l0aCBCw6l6aWVyIHRpbWlu
ZyBmdW5jdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTg2MTI3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgQWRkIGEgdGVzdCB0byB2aXN1YWxseSB2ZXJpZnkgcGF1c2luZyBvZiBhIGNvbXBsZXggYW5p
bWF0aW9uICh0cmFuc2xhdGlvbityb3RhdGlvbikuCisKKyAgICAgICAgKiB3ZWItcGxhdGZvcm0t
dGVzdHMvY3NzL2Nzcy1hbmltYXRpb25zL3NldC1hbmltYXRpb24tcGxheS1zdGF0ZS10by1wYXVz
ZWQtMDAyLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAqIHdlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWFuaW1hdGlvbnMvc2V0LWFuaW1hdGlvbi1wbGF5LXN0YXRlLXRvLXBhdXNlZC0w
MDIuaHRtbDogQWRkZWQuCisKIDIwMTgtMDUtMjkgIEZyZWRlcmljIFdhbmcgIDxmd2FuZ0BpZ2Fs
aWEuY29tPgogCiAgICAgICAgIEltcG9ydCBXUFQgdGVzdHMgZm9yIENTUyBhbmltYXRpb25zCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nz
cy9jc3MtYW5pbWF0aW9ucy9zZXQtYW5pbWF0aW9uLXBsYXktc3RhdGUtdG8tcGF1c2VkLTAwMi1l
eHBlY3RlZC5odG1sIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9jc3MvY3NzLWFuaW1hdGlvbnMvc2V0LWFuaW1hdGlvbi1wbGF5LXN0YXRlLXRvLXBhdXNlZC0w
MDItZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xNmJjYjIxMmM0MTA0ODVkZGI2MTRjNzMzZWY5
MDQxZWExZDE5MDRmCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvaW1wb3J0ZWQvdzNj
L3dlYi1wbGF0Zm9ybS10ZXN0cy9jc3MvY3NzLWFuaW1hdGlvbnMvc2V0LWFuaW1hdGlvbi1wbGF5
LXN0YXRlLXRvLXBhdXNlZC0wMDItZXhwZWN0ZWQuaHRtbApAQCAtMCwwICsxLDM2IEBACis8IURP
Q1RZUEUgaHRtbD4KKzxodG1sPgorICA8aGVhZD4KKyAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCI+
CisgICAgPHRpdGxlPkR5bmFtaWNhbGx5IHNldCBhbmltYXRpb24tcGxheS1zdGF0ZSB0byBwYXVz
ZWQgKHJlZmVyZW5jZSk8L3RpdGxlPgorICAgIDxzdHlsZT4KKyAgICAgICNjb250YWluZXIgewor
ICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgIGxlZnQ6IDA7CisgICAgICAgIHRv
cDogM2VtOworICAgICAgfQorICAgICAgI2NvdmVyaW5nUmVjdExpbmVhciwgI2NvdmVyaW5nUmVj
dFN0ZXBzIHsKKyAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgICBiYWNrZ3JvdW5k
OiBsaWdodGdyZWVuOworICAgICAgICB3aWR0aDogNDBweDsKKyAgICAgICAgaGVpZ2h0OiA3MHB4
OworICAgICAgICBsZWZ0OiA4MHB4OworICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAl
OworICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzNnB4LCAwKSByb3RhdGUoMTQ0ZGVnKTsK
KyAgICAgIH0KKyAgICAgICNjb3ZlcmluZ1JlY3RMaW5lYXIgeworICAgICAgICB0b3A6IDUwcHg7
CisgICAgICB9CisgICAgICAjY292ZXJpbmdSZWN0U3RlcHMgeworICAgICAgICB0b3A6IDE1MHB4
OworICAgICAgfQorICAgIDwvc3R5bGU+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+VGhp
cyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIHR3byByb3RhdGVkIGdyZWVuIHJlY3RhbmdsZXMgYW5k
IG5vIHJlZC48L3A+CisgICAgPGRpdiBpZD0iY29udGFpbmVyIj4KKyAgICAgIDxkaXYgaWQ9ImNv
dmVyaW5nUmVjdExpbmVhciI+PC9kaXY+CisgICAgICA8ZGl2IGlkPSJjb3ZlcmluZ1JlY3RTdGVw
cyI+PC9kaXY+CisgICAgPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2ltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvY3NzL2Nzcy1hbmltYXRp
b25zL3NldC1hbmltYXRpb24tcGxheS1zdGF0ZS10by1wYXVzZWQtMDAyLmh0bWwgYi9MYXlvdXRU
ZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5pbWF0aW9ucy9z
ZXQtYW5pbWF0aW9uLXBsYXktc3RhdGUtdG8tcGF1c2VkLTAwMi5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIx
MGQwMjc0Yjg1OTQ4ZjFhNWFmNjQ3MGM0MjIxMTA3OTZiM2ZkYzEKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2Nzcy9jc3MtYW5p
bWF0aW9ucy9zZXQtYW5pbWF0aW9uLXBsYXktc3RhdGUtdG8tcGF1c2VkLTAwMi5odG1sCkBAIC0w
LDAgKzEsOTUgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWwgY2xhc3M9InJlZnRlc3Qtd2FpdCI+
CisgIDxoZWFkPgorICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04Ij4KKyAgICA8dGl0bGU+RHluYW1p
Y2FsbHkgc2V0IGFuaW1hdGlvbi1wbGF5LXN0YXRlIHRvIHBhdXNlZDwvdGl0bGU+CisgICAgPGxp
bmsgcmVsPSJhdXRob3IiIHRpdGxlPSJJZ2FsaWEgUy5MLiIgaHJlZj0iaHR0cHM6Ly93d3cuaWdh
bGlhLmNvbS8iPgorICAgIDxsaW5rIHJlbD0iaGVscCIgaHJlZj0iaHR0cHM6Ly9kcmFmdHMuY3Nz
d2cub3JnL2Nzcy1hbmltYXRpb25zLTEvI2FuaW1hdGlvbi1wbGF5LXN0YXRlIj4KKyAgICA8bWV0
YSBuYW1lPSJhc3NlcnQiIGNvbnRlbnQ9IlZpc3VhbGx5IGNoZWNrIHRoYXQgY29tcGxleCBhbmlt
YXRpb25zIHN0b3AKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoZW4gYW5pbWF0
aW9uLXBsYXktc3RhdGUgaXMgc2V0IHRvIHBhdXNlZCI+CisgICAgPGxpbmsgcmVsPSJtYXRjaCIg
aHJlZj0ic2V0LWFuaW1hdGlvbi1wbGF5LXN0YXRlLXRvLXBhdXNlZC0wMDItcmVmLmh0bWwiPgor
ICAgIDxzdHlsZT4KKyAgICAgICNjb250YWluZXIgeworICAgICAgICBwb3NpdGlvbjogYWJzb2x1
dGU7CisgICAgICAgIGxlZnQ6IDA7CisgICAgICAgIHRvcDogM2VtOworICAgICAgfQorICAgICAg
I2xpbmVMaW5lYXIsICNsaW5lU3RlcHMgIHsKKyAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwor
ICAgICAgICBiYWNrZ3JvdW5kOiByZWQ7CisgICAgICAgIHdpZHRoOiAxMHB4OworICAgICAgICBo
ZWlnaHQ6IDUwcHg7CisgICAgICAgIGxlZnQ6IDk1cHg7CisgICAgICAgIHRyYW5zZm9ybS1vcmln
aW46IDUwJSAwJTsKKyAgICAgIH0KKyAgICAgICNjb3ZlcmluZ1JlY3RMaW5lYXIsICNjb3Zlcmlu
Z1JlY3RTdGVwcyB7CisgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgYmFja2dy
b3VuZDogbGlnaHRncmVlbjsKKyAgICAgICAgd2lkdGg6IDQwcHg7CisgICAgICAgIGhlaWdodDog
NzBweDsKKyAgICAgICAgbGVmdDogODBweDsKKyAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAl
IDEwJTsKKyAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMzZweCwgMCkgcm90YXRlKDE0NGRl
Zyk7CisgICAgICB9CisgICAgICAjY292ZXJpbmdSZWN0TGluZWFyLCAjbGluZUxpbmVhciB7Cisg
ICAgICAgIHRvcDogNTBweDsKKyAgICAgIH0KKyAgICAgICNjb3ZlcmluZ1JlY3RTdGVwcywgI2xp
bmVTdGVwcyB7CisgICAgICAgIHRvcDogMTUwcHg7CisgICAgICB9CisgICAgICAjbGluZUxpbmVh
ciB7CisgICAgICAgIGFuaW1hdGlvbjogcm90YXRlIDJzIGxpbmVhcjsKKyAgICAgIH0KKyAgICAg
ICNsaW5lU3RlcHMgeworICAgICAgICBhbmltYXRpb246IHJvdGF0ZSAycyBzdGVwcygzNjAsIGVu
ZCk7CisgICAgICB9CisgICAgICAucGF1c2UgeworICAgICAgICBvcGFjaXR5OiAwLjY7CisgICAg
ICAgIGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBwYXVzZWQgIWltcG9ydGFudDsKKyAgICAgIH0KKyAg
ICAgIEBrZXlmcmFtZXMgcm90YXRlCisgICAgICB7CisgICAgICAgIDEwMCUgeworICAgICAgICAg
IHRyYW5zZm9ybTogdHJhbnNsYXRlKDkwcHgsIDApIHJvdGF0ZSgzNjBkZWcpOworICAgICAgICB9
CisgICAgICB9CisgICAgPC9zdHlsZT4KKyAgICA8c2NyaXB0PgorICAgICAgdmFyIHN0YXJ0ID0g
bnVsbDsKKyAgICAgIHZhciBhbmltYXRpb25EdXJhdGlvbiA9IDIwMDA7CisgICAgICB2YXIgY292
ZXJpbmdSZWN0QW5nbGUgPSAxNDQ7CisgICAgICB2YXIgcmVjdEZpbmFsQW5nbGUgPSAzNjA7Cisg
ICAgICBmdW5jdGlvbiBzdGVwKHRpbWVzdGFtcCkgeworICAgICAgICBpZiAoIXN0YXJ0KSBzdGFy
dCA9IHRpbWVzdGFtcDsKKyAgICAgICAgdmFyIHByb2dyZXNzID0gdGltZXN0YW1wIC0gc3RhcnQ7
CisKKyAgICAgICAgLy8gUGF1c2UgdGhlIGFuaW1hdGlvbnMgd2hlbiB0aGUgc3F1YXJlcyBwYXNz
IHVuZGVyIHRoZSBjb3ZlcmluZyByZWN0LgorICAgICAgICB2YXIgdGFyZ2V0UHJvZ3Jlc3MgPSBh
bmltYXRpb25EdXJhdGlvbiAqIGNvdmVyaW5nUmVjdEFuZ2xlIC8gcmVjdEZpbmFsQW5nbGU7Cisg
ICAgICAgIGlmIChwcm9ncmVzcyA+PSB0YXJnZXRQcm9ncmVzcykgeworICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRCeUlkKCJsaW5lTGluZWFyIikuY2xhc3NMaXN0LmFkZCgicGF1c2UiKTsK
KyAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibGluZVN0ZXBzIikuY2xhc3NMaXN0
LmFkZCgicGF1c2UiKTsKKyAgICAgICAgfQorCisgICAgICAgIC8vIFdhaXQgYSBiaXQgc28gdGhh
dCB0aGUgc3F1YXJlcyBwYXNzIHRoZSBjb3ZlcmluZyByZWN0IGlmIHRoZQorICAgICAgICAvLyBh
bmltYXRpb24gZmFpbHMgdG8gYmUgcGF1c2VkLgorICAgICAgICB2YXIgZGVsdGEgPSAyMDA7Cisg
ICAgICAgIGlmIChwcm9ncmVzcyA8IHRhcmdldFByb2dyZXNzICsgZGVsdGEpCisgICAgICAgICAg
d2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZShzdGVwKQorICAgICAgICBlbHNlCisgICAgICAg
ICAgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5yZW1vdmUoInJlZnRlc3Qtd2Fp
dCIpOworICAgICAgfQorICAgICAgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICAgICAgd2luZG93
LnJlcXVlc3RBbmltYXRpb25GcmFtZShzdGVwKTsKKyAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAg
PC9oZWFkPgorICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+CisgICAgPHA+VGhpcyB0ZXN0IHBh
c3NlcyBpZiB5b3Ugc2VlIHR3byByb3RhdGVkIGdyZWVuIHJlY3RhbmdsZXMgYW5kIG5vIHJlZC48
L3A+CisgICAgPGRpdiBpZD0iY29udGFpbmVyIj4KKyAgICAgIDxkaXYgaWQ9ImxpbmVMaW5lYXIi
PjwvZGl2PgorICAgICAgPGRpdiBpZD0iY292ZXJpbmdSZWN0TGluZWFyIj48L2Rpdj4KKyAgICAg
IDxkaXYgaWQ9ImxpbmVTdGVwcyI+PC9kaXY+CisgICAgICA8ZGl2IGlkPSJjb3ZlcmluZ1JlY3RT
dGVwcyI+PC9kaXY+CisgICAgPC9kaXY+CisgIDwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>342247</attachid>
            <date>2018-06-08 02:42:07 -0700</date>
            <delta_ts>2018-06-08 02:42:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>0001-iOS-Tranformation-matrix-not-preserved-when-pausing-.patch</filename>
            <type>text/plain</type>
            <size>5906</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">RnJvbSA5NWQwZTA0ZTU4OTYyOWRmMjlkZDQwMmJjZWM2NDdmNmJiYTVmMTk0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBGcmVkZXJpYyBXYW5nIDxmd2FuZ0BpZ2FsaWEuY29tPgpEYXRl
OiBGcmksIDggSnVuIDIwMTggMTE6Mzc6MjAgKzAyMDAKU3ViamVjdDogW1BBVENIIHhzZXJ2ZXJd
ID0/VVRGLTg/cT9baU9TXT0yMFRyYW5mb3JtYXRpb249MjBtYXRyaXg9MjBub3Q9MjA/PQogPT9V
VEYtOD9xP3ByZXNlcnZlZD0yMHdoZW49MjBwYXVzaW5nPTIwY29tcGxleD0yMGFuaW1hdGlvbj0y
MHdpdGg9MjBCPz0KID0/VVRGLTg/cT89QzM9QTl6aWVyPTIwdGltaW5nPTIwZnVuY3Rpb24/PQpN
SU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgK
Q29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAoKLS0tCiAuLi5pb24tcGxheS1zdGF0ZS10
by1wYXVzZWQtMDAyLWV4cGVjdGVkLmh0bWwgfCAgMzcgKysrKysrKwogLi4uZXQtYW5pbWF0aW9u
LXBsYXktc3RhdGUtdG8tcGF1c2VkLTAwMi5odG1sIHwgMTAzICsrKysrKysrKysrKysrKysrKwog
MiBmaWxlcyBjaGFuZ2VkLCAxNDAgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IExh
eW91dFRlc3RzL2h0dHAvd3B0L2Nzcy9jc3MtYW5pbWF0aW9ucy9zZXQtYW5pbWF0aW9uLXBsYXkt
c3RhdGUtdG8tcGF1c2VkLTAwMi1leHBlY3RlZC5odG1sCiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5
b3V0VGVzdHMvaHR0cC93cHQvY3NzL2Nzcy1hbmltYXRpb25zL3NldC1hbmltYXRpb24tcGxheS1z
dGF0ZS10by1wYXVzZWQtMDAyLmh0bWwKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9odHRwL3dw
dC9jc3MvY3NzLWFuaW1hdGlvbnMvc2V0LWFuaW1hdGlvbi1wbGF5LXN0YXRlLXRvLXBhdXNlZC0w
MDItZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL2h0dHAvd3B0L2Nzcy9jc3MtYW5pbWF0aW9u
cy9zZXQtYW5pbWF0aW9uLXBsYXktc3RhdGUtdG8tcGF1c2VkLTAwMi1leHBlY3RlZC5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5iODEwNjZjMTgzMAotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2h0dHAvd3B0L2Nzcy9jc3MtYW5pbWF0aW9ucy9zZXQt
YW5pbWF0aW9uLXBsYXktc3RhdGUtdG8tcGF1c2VkLTAwMi1leHBlY3RlZC5odG1sCkBAIC0wLDAg
KzEsMzcgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgIDxoZWFkPgorICAgIDxtZXRhIGNo
YXJzZXQ9InV0Zi04Ij4KKyAgICA8dGl0bGU+RHluYW1pY2FsbHkgc2V0IGFuaW1hdGlvbi1wbGF5
LXN0YXRlIHRvIHBhdXNlZCAocmVmZXJlbmNlKTwvdGl0bGU+CisgICAgPHN0eWxlPgorICAgICAg
I2NvbnRhaW5lckxpbmVhciwgI2NvbnRhaW5lclN0ZXBzIHsKKyAgICAgICAgcG9zaXRpb246IGFi
c29sdXRlOworICAgICAgICBsZWZ0OiAxMDBweDsKKyAgICAgIH0KKyAgICAgICNjb250YWluZXJM
aW5lYXIgeworICAgICAgICB0b3A6IDEwMHB4OworICAgICAgfQorICAgICAgI2NvbnRhaW5lclN0
ZXBzIHsKKyAgICAgICAgdG9wOiAyMDBweDsKKyAgICAgIH0KKyAgICAgICNjb3ZlcmluZ1JlY3RM
aW5lYXIsICNjb3ZlcmluZ1JlY3RTdGVwcyB7CisgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsK
KyAgICAgICAgYmFja2dyb3VuZDogbGlnaHRncmVlbjsKKyAgICAgICAgbGVmdDogLTIwcHg7Cisg
ICAgICAgIHdpZHRoOiA0MHB4OworICAgICAgICB0b3A6IC01MHB4OworICAgICAgICBoZWlnaHQ6
IDEwMHB4OworICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg0NXB4LCAwKSByb3RhdGUoOTBk
ZWcpOworICAgICAgfQorICAgIDwvc3R5bGU+CisgIDwvaGVhZD4KKyAgPGJvZHk+CisgICAgPHA+
VGhpcyB0ZXN0IHBhc3NlcyBpZiB5b3Ugc2VlIHR3byBncmVlbiByZWN0YW5nbGVzIGFuZCBubyBy
ZWQuPC9wPgorICAgIDxkaXYgaWQ9ImNvbnRhaW5lckxpbmVhciI+CisgICAgICA8ZGl2IGlkPSJj
b3ZlcmluZ1JlY3RMaW5lYXIiPjwvZGl2PgorICAgIDwvZGl2PgorICAgIDxkaXYgaWQ9ImNvbnRh
aW5lclN0ZXBzIj4KKyAgICAgIDxkaXYgaWQ9ImNvdmVyaW5nUmVjdFN0ZXBzIj48L2Rpdj4KKyAg
ICA8L2Rpdj4KKyAgPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaHR0
cC93cHQvY3NzL2Nzcy1hbmltYXRpb25zL3NldC1hbmltYXRpb24tcGxheS1zdGF0ZS10by1wYXVz
ZWQtMDAyLmh0bWwgYi9MYXlvdXRUZXN0cy9odHRwL3dwdC9jc3MvY3NzLWFuaW1hdGlvbnMvc2V0
LWFuaW1hdGlvbi1wbGF5LXN0YXRlLXRvLXBhdXNlZC0wMDIuaHRtbApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMC4uN2RiYzYxMjliMzQKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9odHRwL3dwdC9jc3MvY3NzLWFuaW1hdGlvbnMvc2V0LWFuaW1hdGlvbi1wbGF5
LXN0YXRlLXRvLXBhdXNlZC0wMDIuaHRtbApAQCAtMCwwICsxLDEwMyBAQAorPCFET0NUWVBFIGh0
bWw+Cis8aHRtbD4KKyAgPGhlYWQ+CisgICAgPG1ldGEgY2hhcnNldD0idXRmLTgiPgorICAgIDx0
aXRsZT5EeW5hbWljYWxseSBzZXQgYW5pbWF0aW9uLXBsYXktc3RhdGUgdG8gcGF1c2VkPC90aXRs
ZT4KKyAgICA8bGluayByZWw9ImF1dGhvciIgdGl0bGU9IklnYWxpYSBTLkwuIiBocmVmPSJodHRw
czovL3d3dy5pZ2FsaWEuY29tLyI+CisgICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJodHRwczov
L2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLWFuaW1hdGlvbnMtMS8jYW5pbWF0aW9uLXBsYXktc3RhdGUi
PgorICAgIDxtZXRhIG5hbWU9ImFzc2VydCIgY29udGVudD0iVmlzdWFsbHkgY2hlY2sgdGhhdCBj
b21wbGV4IGFuaW1hdGlvbnMgc3RvcAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
d2hlbiBhbmltYXRpb24tcGxheS1zdGF0ZSBpcyBzZXQgdG8gcGF1c2VkIj4KKyAgICA8bGluayBy
ZWw9Im1hdGNoIiBocmVmPSJzZXQtYW5pbWF0aW9uLXBsYXktc3RhdGUtdG8tcGF1c2VkLTAwMi1y
ZWYuaHRtbCI+CisgICAgPHN0eWxlPgorICAgICAgI2NvbnRhaW5lckxpbmVhciwgI2NvbnRhaW5l
clN0ZXBzIHsKKyAgICAgICAgcG9zaXRpb246IGFic29sdXRlOworICAgICAgICBsZWZ0OiAxMDBw
eDsKKyAgICAgIH0KKyAgICAgICNjb250YWluZXJMaW5lYXIgeworICAgICAgICB0b3A6IDEwMHB4
OworICAgICAgfQorICAgICAgI2NvbnRhaW5lclN0ZXBzIHsKKyAgICAgICAgdG9wOiAyMDBweDsK
KyAgICAgIH0KKyAgICAgICNsaW5lTGluZWFyLCAjbGluZVN0ZXBzICB7CisgICAgICAgIHBvc2l0
aW9uOiBhYnNvbHV0ZTsKKyAgICAgICAgYmFja2dyb3VuZDogcmVkOworICAgICAgICBsZWZ0OiAt
MXB4OworICAgICAgICB3aWR0aDogMnB4OworICAgICAgICB0b3A6IC00MHB4OworICAgICAgICBo
ZWlnaHQ6IDgwcHg7CisgICAgICB9CisgICAgICAjY292ZXJpbmdSZWN0TGluZWFyLCAjY292ZXJp
bmdSZWN0U3RlcHMgeworICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgICAgIGJhY2tn
cm91bmQ6IGxpZ2h0Z3JlZW47CisgICAgICAgIGxlZnQ6IC0yMHB4OworICAgICAgICB3aWR0aDog
NDBweDsKKyAgICAgICAgdG9wOiAtNTBweDsKKyAgICAgICAgaGVpZ2h0OiAxMDBweDsKKyAgICAg
ICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNDVweCwgMCkgcm90YXRlKDkwZGVnKTsKKyAgICAgIH0K
KyAgICAgICNsaW5lTGluZWFyIHsKKyAgICAgICAgYW5pbWF0aW9uOiByb3RhdGUgMnMgbGluZWFy
OworICAgICAgfQorICAgICAgI2xpbmVTdGVwcyB7CisgICAgICAgIGFuaW1hdGlvbjogcm90YXRl
IDJzIHN0ZXBzKDM2MCwgZW5kKTsKKyAgICAgIH0KKyAgICAgIC5wYXVzZSB7CisgICAgICAgIG9w
YWNpdHk6IDAuNjsKKyAgICAgICAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZCAhaW1wb3J0
YW50OworICAgICAgfQorICAgICAgQGtleWZyYW1lcyByb3RhdGUKKyAgICAgIHsKKyAgICAgICAg
MTAwJSB7CisgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTgwcHgsIDApIHJvdGF0ZSgz
NjBkZWcpOworICAgICAgICB9CisgICAgICB9CisgICAgPC9zdHlsZT4KKyAgICA8c2NyaXB0Pgor
ICAgICAgdmFyIHN0YXJ0ID0gbnVsbDsKKyAgICAgIHZhciBhbmltYXRpb25EdXJhdGlvbiA9IDIw
MDA7CisgICAgICBmdW5jdGlvbiBzaGlmdChpZCkKKyAgICAgIHsKKyAgICAgICAgdmFyIHRyYW5z
Zm9ybSA9IHdpbmRvdy5nZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlk
KSkudHJhbnNmb3JtOworICAgICAgICBpZiAodHJhbnNmb3JtID09PSAibm9uZSIpCisgICAgICAg
ICAgcmV0dXJuIDA7CisgICAgICAgIC8vIFNlZSBodHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvY3Nz
LXRyYW5zZm9ybXMtMi8jc2VyaWFsaXphdGlvbi1vZi10aGUtY29tcHV0ZWQtdmFsdWUKKyAgICAg
ICAgcmV0dXJuIHBhcnNlRmxvYXQodHJhbnNmb3JtLnNwbGl0KC8sXHMqLylbNF0pOworICAgICAg
fQorICAgICAgZnVuY3Rpb24gc3RlcCh0aW1lc3RhbXApIHsKKyAgICAgICAgLy8gRm9yIGVhY2gg
bGluZSwgcGF1c2UgdGhlIGFuaW1hdGlvbiBhcyBzb29uIGFzIGl0IHBhc3NlcyB1bmRlciB0aGUg
Y292ZXJpbmcgcmVjdC4KKyAgICAgICAgdmFyIHRpbWVFcnJvciA9IDEwMDsKKyAgICAgICAgdmFy
IG1heFNoaWZ0ID0gMTgwOworICAgICAgICB2YXIgZXBzaWxvbiA9IG1heFNoaWZ0ICogdGltZUVy
cm9yIC8gYW5pbWF0aW9uRHVyYXRpb247CisgICAgICAgIFsiTGluZWFyIiwgIlN0ZXBzIl0uZm9y
RWFjaCgoaWQpID0+IHsKKyAgICAgICAgICBpZiAoTWF0aC5hYnMoc2hpZnQoYGNvdmVyaW5nUmVj
dCR7aWR9YCkgLSBzaGlmdChgbGluZSR7aWR9YCkpIDwgZXBzaWxvbikKKyAgICAgICAgICAgIGRv
Y3VtZW50LmdldEVsZW1lbnRCeUlkKGBsaW5lJHtpZH1gKS5jbGFzc0xpc3QuYWRkKCJwYXVzZSIp
OworICAgICAgICB9KTsKKworICAgICAgICAvLyBTdG9wIHRoZSByZWZ0ZXN0IGFmdGVyIHRoZSB0
aW1lIHdoZW4gdGhlIGFuaW1hdGlvbnMgd291bGQgaGF2ZSBzdG9wLgorICAgICAgICAvLyBJZiBw
YXVzaW5nIGZhaWxlZCBmb3Igc29tZSByZWFzb24sIHRoZSBsaW5lcyB3aWxsIGJlIHZpc2libGUu
CisgICAgICAgIGlmICghc3RhcnQpIHN0YXJ0ID0gdGltZXN0YW1wOworICAgICAgICBpZiAodGlt
ZXN0YW1wIC0gc3RhcnQgPCBhbmltYXRpb25EdXJhdGlvbikKKyAgICAgICAgICB3aW5kb3cucmVx
dWVzdEFuaW1hdGlvbkZyYW1lKHN0ZXApOworICAgICAgICBlbHNlIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICAgIH0KKyAgICAg
IGZ1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICAgICAgICB0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgd2luZG93LnJlcXVl
c3RBbmltYXRpb25GcmFtZShzdGVwKTsKKyAgICAgIH0KKyAgICA8L3NjcmlwdD4KKyAgPC9oZWFk
PgorICA8Ym9keSBvbmxvYWQ9InJ1blRlc3QoKSI+CisgICAgPHA+VGhpcyB0ZXN0IHBhc3NlcyBp
ZiB5b3Ugc2VlIHR3byBncmVlbiByZWN0YW5nbGVzIGFuZCBubyByZWQuPC9wPgorICAgIDxkaXYg
aWQ9ImNvbnRhaW5lckxpbmVhciI+CisgICAgICA8ZGl2IGlkPSJsaW5lTGluZWFyIj48L2Rpdj4K
KyAgICAgIDxkaXYgaWQ9ImNvdmVyaW5nUmVjdExpbmVhciI+PC9kaXY+CisgICAgPC9kaXY+Cisg
ICAgPGRpdiBpZD0iY29udGFpbmVyU3RlcHMiPgorICAgICAgPGRpdiBpZD0ibGluZVN0ZXBzIj48
L2Rpdj4KKyAgICAgIDxkaXYgaWQ9ImNvdmVyaW5nUmVjdFN0ZXBzIj48L2Rpdj4KKyAgICA8L2Rp
dj4KKyAgPC9ib2R5PgorPC9odG1sPgotLSAKMi4xNy4wCgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>342666</attachid>
            <date>2018-06-13 09:51:04 -0700</date>
            <delta_ts>2018-06-13 09:51:04 -0700</delta_ts>
            <desc>Another testcase</desc>
            <filename>testcase.html</filename>
            <type>text/html</type>
            <size>2817</size>
            <attacher name="Frédéric Wang Nélar">fred.wang</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgogIDxoZWFkPgogICAgPG1ldGEgY2hhcnNldD0idXRmLTgi
PgogICAgPHRpdGxlPkR5bmFtaWNhbGx5IHNldCBhbmltYXRpb24tcGxheS1zdGF0ZSB0byBwYXVz
ZWQ8L3RpdGxlPgogICAgPGxpbmsgcmVsPSJhdXRob3IiIHRpdGxlPSJJZ2FsaWEgUy5MLiIgaHJl
Zj0iaHR0cHM6Ly93d3cuaWdhbGlhLmNvbS8iPgogICAgPGxpbmsgcmVsPSJoZWxwIiBocmVmPSJo
dHRwczovL2RyYWZ0cy5jc3N3Zy5vcmcvY3NzLWFuaW1hdGlvbnMtMS8jYW5pbWF0aW9uLXBsYXkt
c3RhdGUiPgogICAgPG1ldGEgbmFtZT0iYXNzZXJ0IiBjb250ZW50PSJWaXN1YWxseSBjaGVjayB0
aGF0IGNvbXBsZXggYW5pbWF0aW9ucyBzdG9wCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHdoZW4gYW5pbWF0aW9uLXBsYXktc3RhdGUgaXMgc2V0IHRvIHBhdXNlZCI+CiAgICA8bGlu
ayByZWw9Im1hdGNoIiBocmVmPSJzZXQtYW5pbWF0aW9uLXBsYXktc3RhdGUtdG8tcGF1c2VkLTAw
Mi1yZWYuaHRtbCI+CiAgICA8c3R5bGU+CiAgICAgICNjb250YWluZXJMaW5lYXIsICNjb250YWlu
ZXJTdGVwcyB7CiAgICAgICAgcG9zaXRpb246IGFic29sdXRlOwogICAgICAgIGxlZnQ6IDEwMHB4
OwogICAgICB9CiAgICAgICNjb250YWluZXJMaW5lYXIgewogICAgICAgIHRvcDogMTAwcHg7CiAg
ICAgIH0KICAgICAgI2xpbmVMaW5lYXIgIHsKICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7CiAg
ICAgICAgYmFja2dyb3VuZDogcmVkOwogICAgICAgIGxlZnQ6IC0xcHg7CiAgICAgICAgd2lkdGg6
IDJweDsKICAgICAgICB0b3A6IC00MHB4OwogICAgICAgIGhlaWdodDogODBweDsKICAgICAgfQog
ICAgICAjY292ZXJpbmdSZWN0TGluZWFyIHsKCQlvcGFjaXR5OiAuNTsKICAgICAgICBwb3NpdGlv
bjogYWJzb2x1dGU7CiAgICAgICAgYmFja2dyb3VuZDogbGlnaHRncmVlbjsKICAgICAgICBsZWZ0
OiAtMjBweDsKICAgICAgICB3aWR0aDogNDBweDsKICAgICAgICB0b3A6IC01MHB4OwogICAgICAg
IGhlaWdodDogMTAwcHg7CiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNDVweCwgMCkgcm90
YXRlKDkwZGVnKTsKICAgICAgfQogICAgICAjbGluZUxpbmVhciB7CiAgICAgICAgYW5pbWF0aW9u
OiByb3RhdGUgNXMgbGluZWFyOwogICAgICB9CiAgICAgIC5wYXVzZSB7CiAgICAgICAgb3BhY2l0
eTogMC42OwogICAgICAgIGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBwYXVzZWQgIWltcG9ydGFudDsK
ICAgICAgfQogICAgICBAa2V5ZnJhbWVzIHJvdGF0ZQogICAgICB7CiAgICAgICAgMTAwJSB7CiAg
ICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg5MHB4LCAwKSByb3RhdGUoMTgwZGVnKTsKICAg
ICAgICB9CiAgICAgIH0KICAgIDwvc3R5bGU+CiAgICA8c2NyaXB0PgogICAgICB2YXIgc3RhcnQg
PSBudWxsOwogICAgICB2YXIgYW5pbWF0aW9uRHVyYXRpb24gPSA1MDAwOwogICAgICBmdW5jdGlv
biBzaGlmdChpZCkKICAgICAgewogICAgICAgIHZhciB0cmFuc2Zvcm0gPSB3aW5kb3cuZ2V0Q29t
cHV0ZWRTdHlsZShkb2N1bWVudC5nZXRFbGVtZW50QnlJZChpZCkpLnRyYW5zZm9ybTsKICAgICAg
ICBpZiAodHJhbnNmb3JtID09PSAibm9uZSIpCiAgICAgICAgICByZXR1cm4gMDsKICAgICAgICAv
LyBTZWUgaHR0cHM6Ly9kcmFmdHMuY3Nzd2cub3JnL2Nzcy10cmFuc2Zvcm1zLTIvI3NlcmlhbGl6
YXRpb24tb2YtdGhlLWNvbXB1dGVkLXZhbHVlCiAgICAgICAgcmV0dXJuIHBhcnNlRmxvYXQodHJh
bnNmb3JtLnNwbGl0KC8sXHMqLylbNF0pOwogICAgICB9CiAgICAgIGZ1bmN0aW9uIHN0ZXAodGlt
ZXN0YW1wKSB7CiAgICAgICAgLy8gRm9yIGVhY2ggbGluZSwgcGF1c2UgdGhlIGFuaW1hdGlvbiBh
cyBzb29uIGFzIGl0IHBhc3NlcyB1bmRlciB0aGUgY292ZXJpbmcgcmVjdC4KICAgICAgICB2YXIg
dGltZUVycm9yID0gMTAwOwogICAgICAgIHZhciBtYXhTaGlmdCA9IDE4MDsKICAgICAgICB2YXIg
ZXBzaWxvbiA9IG1heFNoaWZ0ICogdGltZUVycm9yIC8gYW5pbWF0aW9uRHVyYXRpb247CiAgICAg
ICAgWyJMaW5lYXIiXS5mb3JFYWNoKChpZCkgPT4gewogICAgICAgICAgaWYgKE1hdGguYWJzKHNo
aWZ0KGBjb3ZlcmluZ1JlY3Qke2lkfWApIC0gc2hpZnQoYGxpbmUke2lkfWApKSA8IGVwc2lsb24p
CiAgICAgICAgICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGBsaW5lJHtpZH1gKS5jbGFzc0xp
c3QuYWRkKCJwYXVzZSIpOwogICAgICAgIH0pOwoKICAgICAgICAvLyBTdG9wIHRoZSByZWZ0ZXN0
IGFmdGVyIHRoZSB0aW1lIHdoZW4gdGhlIGFuaW1hdGlvbnMgd291bGQgaGF2ZSBzdG9wLgogICAg
ICAgIC8vIElmIHBhdXNpbmcgZmFpbGVkIGZvciBzb21lIHJlYXNvbiwgdGhlIGxpbmVzIHdpbGwg
YmUgdmlzaWJsZS4KICAgICAgICBpZiAoIXN0YXJ0KSBzdGFydCA9IHRpbWVzdGFtcDsKICAgICAg
ICBpZiAodGltZXN0YW1wIC0gc3RhcnQgPCBhbmltYXRpb25EdXJhdGlvbikKICAgICAgICAgIHdp
bmRvdy5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoc3RlcCk7CiAgICAgIH0KICAgICAgZnVuY3Rpb24g
cnVuVGVzdCgpIHsKICAgICAgICB3aW5kb3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKHN0ZXApOwog
ICAgICB9CiAgICA8L3NjcmlwdD4KICA8L2hlYWQ+CiAgPGJvZHkgb25sb2FkPSJydW5UZXN0KCki
PgogICAgPGRpdiBpZD0iY29udGFpbmVyTGluZWFyIj4KICAgICAgPGRpdiBpZD0ibGluZUxpbmVh
ciI+PC9kaXY+CiAgICAgIDxkaXYgaWQ9ImNvdmVyaW5nUmVjdExpbmVhciI+PC9kaXY+CiAgICA8
L2Rpdj4KICA8L2JvZHk+CjwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>