<?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>175308</bug_id>
          
          <creation_ts>2017-08-07 17:17:17 -0700</creation_ts>
          <short_desc>Add a fast path for rotate() and rotateZ() transform parsing</short_desc>
          <delta_ts>2017-08-07 19:54:51 -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>New Bugs</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>dino</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1336274</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-08-07 17:17:17 -0700</bug_when>
    <thetext>Add a fast path for rotate() and rotateZ() transform parsing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1336275</commentid>
    <comment_count>1</comment_count>
      <attachid>317517</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-08-07 17:19:02 -0700</bug_when>
    <thetext>Created attachment 317517
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1336326</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2017-08-07 19:54:24 -0700</bug_when>
    <thetext>https://trac.webkit.org/r220382</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1336331</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-08-07 19:54:51 -0700</bug_when>
    <thetext>&lt;rdar://problem/33768184&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>317517</attachid>
            <date>2017-08-07 17:19:02 -0700</date>
            <delta_ts>2017-08-07 19:24:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-175308-20170807171902.patch</filename>
            <type>text/plain</type>
            <size>5964</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIwMzQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTRhZTNhY2YxMjBhYmVj
NWU2NGU2MzhiNGViZDY5ZjhmMWY1NmMzMy4uYzc4ZjU2MTcyNzA0NjAyNWJhNGMzOTk4MzA4NzA0
YmZjZTliNTEyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDIxIEBACiAyMDE3LTA4LTA3ICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCisgICAgICAgIEFkZCBhIGZhc3Qg
cGF0aCBmb3Igcm90YXRlKCkgYW5kIHJvdGF0ZVooKSB0cmFuc2Zvcm0gcGFyc2luZworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc1MzA4CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRmFzdCBwYXRocyBvbmx5
IGV4aXN0ZWQgZm9yIHRyYW5zbGF0ZS1yZWxhdGVkIGZ1bmN0aW9ucywgbWF0cml4M2QoKSBhbmQg
c2NhbGUzZCgpLiBBZGQKKyAgICAgICAgcm90YXRlKCkgYW5kIHJvdGF0ZVgoKSwgd2hpY2ggZ2l2
ZXMgYSBzbWFsbCBib29zdCB0byBvbmUgb2YgdGhlIE1vdGlvbk1hcmsgdGVzdHMuCisKKyAgICAg
ICAgKiBjc3MvcGFyc2VyL0NTU1BhcnNlckZhc3RQYXRocy5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpwYXJzZVNpbXBsZUFuZ2xlKToKKyAgICAgICAgKFdlYkNvcmU6OnBhcnNlVHJhbnNmb3JtQW5n
bGVBcmd1bWVudCk6CisgICAgICAgIChXZWJDb3JlOjpwYXJzZVNpbXBsZVRyYW5zZm9ybVZhbHVl
KToKKyAgICAgICAgKFdlYkNvcmU6OnRyYW5zZm9ybUNhbkxpa2VseVVzZUZhc3RQYXRoKToKKwor
MjAxNy0wOC0wNyAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KKwogICAg
ICAgICBSZS1vcmRlciB0aGUgdGVzdHMgaW4gUmVuZGVyTGF5ZXJDb21wb3NpdG9yOjpyZXF1aXJl
c0NvbXBvc2l0aW5nTGF5ZXIoKSBmb3IgcGVyZm9ybWFuY2UKICAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3NTMwNgogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvcGFyc2VyL0NTU1BhcnNlckZhc3RQYXRocy5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvcGFyc2VyL0NTU1BhcnNlckZhc3RQYXRocy5jcHAKaW5kZXggNDdhNDdlYjNjODU4NDA4
OWMxNjJjNDg3YmJiNGJjNTA0MmQwOTUxOS4uNWNhNmE0ZjhmMDkzNDA1NjkwOTE1YWI4MzU4MWRi
MGIwMDYwY2QyZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQYXJz
ZXJGYXN0UGF0aHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9wYXJzZXIvQ1NTUGFyc2Vy
RmFzdFBhdGhzLmNwcApAQCAtMTE1LDYgKzExNSwzMiBAQCBzdGF0aWMgaW5saW5lIGJvb2wgcGFy
c2VTaW1wbGVMZW5ndGgoY29uc3QgQ2hhcmFjdGVyVHlwZSogY2hhcmFjdGVycywgdW5zaWduZWQg
bAogICAgIHJldHVybiB0cnVlOwogfQogCit0ZW1wbGF0ZSA8dHlwZW5hbWUgQ2hhcmFjdGVyVHlw
ZT4KK3N0YXRpYyBpbmxpbmUgYm9vbCBwYXJzZVNpbXBsZUFuZ2xlKGNvbnN0IENoYXJhY3RlclR5
cGUqIGNoYXJhY3RlcnMsIHVuc2lnbmVkIGxlbmd0aCwgQ1NTUHJpbWl0aXZlVmFsdWU6OlVuaXRU
eXBlJiB1bml0LCBkb3VibGUmIG51bWJlcikKK3sKKyAgICAvLyBKdXN0IHN1cHBvcnQgZGVnIGFu
ZCByYWQgZm9yIG5vdy4KKyAgICBpZiAobGVuZ3RoIDwgNCkKKyAgICAgICAgcmV0dXJuIGZhbHNl
OworCisgICAgaWYgKChjaGFyYWN0ZXJzW2xlbmd0aCAtIDNdIHwgMHgyMCkgPT0gJ2QnICYmIChj
aGFyYWN0ZXJzW2xlbmd0aCAtIDJdIHwgMHgyMCkgPT0gJ2UnICYmIChjaGFyYWN0ZXJzW2xlbmd0
aCAtIDFdIHwgMHgyMCkgPT0gJ2cnKSB7CisgICAgICAgIGxlbmd0aCAtPSAzOworICAgICAgICB1
bml0ID0gQ1NTUHJpbWl0aXZlVmFsdWU6OlVuaXRUeXBlOjpDU1NfREVHOworICAgIH0gZWxzZSBp
ZiAoKGNoYXJhY3RlcnNbbGVuZ3RoIC0gM10gfCAweDIwKSA9PSAncicgJiYgKGNoYXJhY3RlcnNb
bGVuZ3RoIC0gMl0gfCAweDIwKSA9PSAnYScgJiYgKGNoYXJhY3RlcnNbbGVuZ3RoIC0gMV0gfCAw
eDIwKSA9PSAnZCcpIHsKKyAgICAgICAgbGVuZ3RoIC09IDM7CisgICAgICAgIHVuaXQgPSBDU1NQ
cmltaXRpdmVWYWx1ZTo6VW5pdFR5cGU6OkNTU19SQUQ7CisgICAgfSBlbHNlCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKworICAgIC8vIFdlIHJlbHkgb24gY2hhcmFjdGVyc1RvRG91YmxlIGZvciB2
YWxpZGF0aW9uIGFzIHdlbGwuIFRoZSBmdW5jdGlvbgorICAgIC8vIHdpbGwgc2V0ICJvayIgdG8g
ImZhbHNlIiBpZiB0aGUgZW50aXJlIHBhc3NlZC1pbiBjaGFyYWN0ZXIgcmFuZ2UgZG9lcworICAg
IC8vIG5vdCByZXByZXNlbnQgYSBkb3VibGUuCisgICAgYm9vbCBvazsKKyAgICBudW1iZXIgPSBj
aGFyYWN0ZXJzVG9Eb3VibGUoY2hhcmFjdGVycywgbGVuZ3RoLCAmb2spOworICAgIGlmICghb2sp
CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwogc3RhdGljIFJl
ZlB0cjxDU1NWYWx1ZT4gcGFyc2VTaW1wbGVMZW5ndGhWYWx1ZShDU1NQcm9wZXJ0eUlEIHByb3Bl
cnR5SWQsIGNvbnN0IFN0cmluZyYgc3RyaW5nLCBDU1NQYXJzZXJNb2RlIGNzc1BhcnNlck1vZGUp
CiB7CiAgICAgQVNTRVJUKCFzdHJpbmcuaXNFbXB0eSgpKTsKQEAgLTEwNTAsNiArMTA3NiwyNyBA
QCBzdGF0aWMgYm9vbCBwYXJzZVRyYW5zZm9ybVRyYW5zbGF0ZUFyZ3VtZW50cyhDaGFyVHlwZSom
IHBvcywgQ2hhclR5cGUqIGVuZCwgdW5zaQogfQogCiB0ZW1wbGF0ZSA8dHlwZW5hbWUgQ2hhclR5
cGU+CitzdGF0aWMgYm9vbCBwYXJzZVRyYW5zZm9ybUFuZ2xlQXJndW1lbnQoQ2hhclR5cGUqJiBw
b3MsIENoYXJUeXBlKiBlbmQsIENTU0Z1bmN0aW9uVmFsdWUqIHRyYW5zZm9ybVZhbHVlKQorewor
ICAgIHNpemVfdCBkZWxpbWl0ZXIgPSBXVEY6OmZpbmQocG9zLCBlbmQgLSBwb3MsICcpJyk7Cisg
ICAgaWYgKGRlbGltaXRlciA9PSBub3RGb3VuZCkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisg
ICAgdW5zaWduZWQgYXJndW1lbnRMZW5ndGggPSBzdGF0aWNfY2FzdDx1bnNpZ25lZD4oZGVsaW1p
dGVyKTsKKyAgICBDU1NQcmltaXRpdmVWYWx1ZTo6VW5pdFR5cGUgdW5pdCA9IENTU1ByaW1pdGl2
ZVZhbHVlOjpVbml0VHlwZTo6Q1NTX05VTUJFUjsKKyAgICBkb3VibGUgbnVtYmVyOworICAgIGlm
ICghcGFyc2VTaW1wbGVBbmdsZShwb3MsIGFyZ3VtZW50TGVuZ3RoLCB1bml0LCBudW1iZXIpKQor
ICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgaWYgKCFudW1iZXIgJiYgdW5pdCA9PSBDU1NQcmlt
aXRpdmVWYWx1ZTo6Q1NTX05VTUJFUikKKyAgICAgICAgdW5pdCA9IENTU1ByaW1pdGl2ZVZhbHVl
OjpVbml0VHlwZTo6Q1NTX0RFRzsKKworICAgIHRyYW5zZm9ybVZhbHVlLT5hcHBlbmQoQ1NTUHJp
bWl0aXZlVmFsdWU6OmNyZWF0ZShudW1iZXIsIHVuaXQpKTsKKyAgICBwb3MgKz0gYXJndW1lbnRM
ZW5ndGggKyAxOworCisgICAgcmV0dXJuIHRydWU7Cit9CisKK3RlbXBsYXRlIDx0eXBlbmFtZSBD
aGFyVHlwZT4KIHN0YXRpYyBib29sIHBhcnNlVHJhbnNmb3JtTnVtYmVyQXJndW1lbnRzKENoYXJU
eXBlKiYgcG9zLCBDaGFyVHlwZSogZW5kLCB1bnNpZ25lZCBleHBlY3RlZENvdW50LCBDU1NGdW5j
dGlvblZhbHVlKiB0cmFuc2Zvcm1WYWx1ZSkKIHsKICAgICB3aGlsZSAoZXhwZWN0ZWRDb3VudCkg
ewpAQCAtMTEwNSw5ICsxMTUyLDkgQEAgc3RhdGljIFJlZlB0cjxDU1NGdW5jdGlvblZhbHVlPiBw
YXJzZVNpbXBsZVRyYW5zZm9ybVZhbHVlKENoYXJUeXBlKiYgcG9zLCBDaGFyVHkKICAgICAgICAg
ICAgIHRyYW5zZm9ybVR5cGUgPSBDU1NWYWx1ZVRyYW5zbGF0ZTNkOwogICAgICAgICAgICAgZXhw
ZWN0ZWRBcmd1bWVudENvdW50ID0gMzsKICAgICAgICAgICAgIGFyZ3VtZW50U3RhcnQgPSAxMjsK
LSAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgfSBlbHNlCiAgICAgICAgICAgICByZXR1cm4gbnVs
bHB0cjsKLSAgICAgICAgfQorCiAgICAgICAgIHBvcyArPSBhcmd1bWVudFN0YXJ0OwogICAgICAg
ICBSZWZQdHI8Q1NTRnVuY3Rpb25WYWx1ZT4gdHJhbnNmb3JtVmFsdWUgPSBDU1NGdW5jdGlvblZh
bHVlOjpjcmVhdGUodHJhbnNmb3JtVHlwZSk7CiAgICAgICAgIGlmICghcGFyc2VUcmFuc2Zvcm1U
cmFuc2xhdGVBcmd1bWVudHMocG9zLCBlbmQsIGV4cGVjdGVkQXJndW1lbnRDb3VudCwgdHJhbnNm
b3JtVmFsdWUuZ2V0KCkpKQpAQCAtMTE1MCw2ICsxMTk3LDMyIEBAIHN0YXRpYyBSZWZQdHI8Q1NT
RnVuY3Rpb25WYWx1ZT4gcGFyc2VTaW1wbGVUcmFuc2Zvcm1WYWx1ZShDaGFyVHlwZSomIHBvcywg
Q2hhclR5CiAgICAgICAgIHJldHVybiB0cmFuc2Zvcm1WYWx1ZTsKICAgICB9CiAKKyAgICBjb25z
dCBib29sIGlzUm90YXRlID0gdG9BU0NJSUxvd2VyKHBvc1swXSkgPT0gJ3InCisgICAgICAgICYm
IHRvQVNDSUlMb3dlcihwb3NbMV0pID09ICdvJworICAgICAgICAmJiB0b0FTQ0lJTG93ZXIocG9z
WzJdKSA9PSAndCcKKyAgICAgICAgJiYgdG9BU0NJSUxvd2VyKHBvc1szXSkgPT0gJ2EnCisgICAg
ICAgICYmIHRvQVNDSUlMb3dlcihwb3NbNF0pID09ICd0JworICAgICAgICAmJiB0b0FTQ0lJTG93
ZXIocG9zWzVdKSA9PSAnZSc7CisKKyAgICBpZiAoaXNSb3RhdGUpIHsKKyAgICAgICAgQ1NTVmFs
dWVJRCB0cmFuc2Zvcm1UeXBlOworICAgICAgICB1bnNpZ25lZCBhcmd1bWVudFN0YXJ0ID0gNzsK
KyAgICAgICAgQ2hhclR5cGUgYzYgPSB0b0FTQ0lJTG93ZXIocG9zWzZdKTsKKyAgICAgICAgaWYg
KGM2ID09ICcoJykgeworICAgICAgICAgICAgdHJhbnNmb3JtVHlwZSA9IENTU1ZhbHVlUm90YXRl
OworICAgICAgICB9IGVsc2UgaWYgKGM2ID09ICd6JyAmJiBwb3NbN10gPT0gJygnKSB7CisgICAg
ICAgICAgICB0cmFuc2Zvcm1UeXBlID0gQ1NTVmFsdWVSb3RhdGVaOworICAgICAgICAgICAgYXJn
dW1lbnRTdGFydCA9IDg7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CisKKyAgICAgICAgcG9zICs9IGFyZ3VtZW50U3RhcnQ7CisgICAgICAgIFJlZlB0cjxDU1NG
dW5jdGlvblZhbHVlPiB0cmFuc2Zvcm1WYWx1ZSA9IENTU0Z1bmN0aW9uVmFsdWU6OmNyZWF0ZSh0
cmFuc2Zvcm1UeXBlKTsKKyAgICAgICAgaWYgKCFwYXJzZVRyYW5zZm9ybUFuZ2xlQXJndW1lbnQo
cG9zLCBlbmQsIHRyYW5zZm9ybVZhbHVlLmdldCgpKSkKKyAgICAgICAgICAgIHJldHVybiBudWxs
cHRyOworICAgICAgICByZXR1cm4gdHJhbnNmb3JtVmFsdWU7CisgICAgfQorCiAgICAgcmV0dXJu
IG51bGxwdHI7CiB9CiAKQEAgLTExODcsNiArMTI2MCwxNiBAQCBzdGF0aWMgYm9vbCB0cmFuc2Zv
cm1DYW5MaWtlbHlVc2VGYXN0UGF0aChjb25zdCBDaGFyVHlwZSogY2hhcnMsIHVuc2lnbmVkIGxl
bmd0aAogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICAgICAgIGkgKz0gNzsK
ICAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlICdyJzoKKyAgICAgICAgICAgIC8vIHJv
dGF0ZS4KKyAgICAgICAgICAgIGlmICh0b0FTQ0lJTG93ZXIoY2hhcnNbaSArIDVdKSAhPSAnZScp
CisgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICAgICAgaSArPSA2OworICAg
ICAgICAgICAgLy8gcm90YXRlWgorICAgICAgICAgICAgaWYgKHRvQVNDSUlMb3dlcihjaGFyc1tp
ICsgNl0pID09ICd6JykKKyAgICAgICAgICAgICAgICArK2k7CisgICAgICAgICAgICBicmVhazsK
KwogICAgICAgICBkZWZhdWx0OgogICAgICAgICAgICAgLy8gQWxsIG90aGVyIHRoaW5ncywgZXgu
IHJvdGF0ZS4KICAgICAgICAgICAgIHJldHVybiBmYWxzZTsK
</data>
<flag name="review"
          id="338061"
          type_id="1"
          status="+"
          setter="zalan"
    />
          </attachment>
      

    </bug>

</bugzilla>