OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2012 Google Inc. | 2 * Copyright 2012 Google Inc. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 #include "PathOpsExtendedTest.h" | 7 #include "PathOpsExtendedTest.h" |
8 #include "PathOpsTestCommon.h" | 8 #include "PathOpsTestCommon.h" |
9 | 9 |
10 class PathTest_Private { | 10 class PathTest_Private { |
(...skipping 7897 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7908 path.quadTo(SkBits2Float(0xf35c4ad5), SkBits2Float(0x0692f251), SkBits2Float(0x6
9632126), SkBits2Float(0xb927af67)); // -1.74534e+31f, 5.52751e-35f, 1.71614e+2
5f, -0.000159917f | 7908 path.quadTo(SkBits2Float(0xf35c4ad5), SkBits2Float(0x0692f251), SkBits2Float(0x6
9632126), SkBits2Float(0xb927af67)); // -1.74534e+31f, 5.52751e-35f, 1.71614e+2
5f, -0.000159917f |
7909 path.moveTo(SkBits2Float(0x6534bff9), SkBits2Float(0x434a9986)); // 5.3348e+22f
, 202.6f | 7909 path.moveTo(SkBits2Float(0x6534bff9), SkBits2Float(0x434a9986)); // 5.3348e+22f
, 202.6f |
7910 path.quadTo(SkBits2Float(0x37c603e5), SkBits2Float(0xa0683953), SkBits2Float(0x7
51915e4), SkBits2Float(0x831c911a)); // 2.36053e-05f, -1.96701e-19f, 1.94059e+3
2f, -4.60108e-37f | 7910 path.quadTo(SkBits2Float(0x37c603e5), SkBits2Float(0xa0683953), SkBits2Float(0x7
51915e4), SkBits2Float(0x831c911a)); // 2.36053e-05f, -1.96701e-19f, 1.94059e+3
2f, -4.60108e-37f |
7911 path.cubicTo(SkBits2Float(0xba4f10f1), SkBits2Float(0x5a7571df), SkBits2Float(0x
4ec67459), SkBits2Float(0x33c58827), SkBits2Float(0x10b78ccb), SkBits2Float(0xed
bd2748)); // -0.000789895f, 1.72716e+16f, 1.66476e+09f, 9.19829e-08f, 7.23977e-
29f, -7.31752e+27f | 7911 path.cubicTo(SkBits2Float(0xba4f10f1), SkBits2Float(0x5a7571df), SkBits2Float(0x
4ec67459), SkBits2Float(0x33c58827), SkBits2Float(0x10b78ccb), SkBits2Float(0xed
bd2748)); // -0.000789895f, 1.72716e+16f, 1.66476e+09f, 9.19829e-08f, 7.23977e-
29f, -7.31752e+27f |
7912 path.cubicTo(SkBits2Float(0x6d06f06a), SkBits2Float(0xe30465cf), SkBits2Float(0x
c5458fe7), SkBits2Float(0xca488dc4), SkBits2Float(0x38f9021c), SkBits2Float(0x3e
8d58db)); // 2.6101e+27f, -2.44231e+21f, -3160.99f, -3.28587e+06f, 0.000118736f
, 0.276069f | 7912 path.cubicTo(SkBits2Float(0x6d06f06a), SkBits2Float(0xe30465cf), SkBits2Float(0x
c5458fe7), SkBits2Float(0xca488dc4), SkBits2Float(0x38f9021c), SkBits2Float(0x3e
8d58db)); // 2.6101e+27f, -2.44231e+21f, -3160.99f, -3.28587e+06f, 0.000118736f
, 0.276069f |
7913 | 7913 |
7914 SkPath path2(path); | 7914 SkPath path2(path); |
7915 testPathOpFuzz(reporter, path1, path2, (SkPathOp) 4, filename); | 7915 testPathOpFuzz(reporter, path1, path2, (SkPathOp) 4, filename); |
7916 } | 7916 } |
7917 | 7917 |
| 7918 static void fuzz763_44(skiatest::Reporter* reporter, const char* filename) { |
| 7919 SkPath path; |
| 7920 path.setFillType((SkPath::FillType) 1); |
| 7921 path.moveTo(SkBits2Float(0x7c223bab), SkBits2Float(0x7cf35966)); // 3.36945e+36
f, 1.01083e+37f |
| 7922 path.quadTo(SkBits2Float(0x00000000), SkBits2Float(0x7ccaca6d), SkBits2Float(0x0
0000000), SkBits2Float(0x00000000)); // 0, 8.4236e+36f, 0, 0 |
| 7923 path.lineTo(SkBits2Float(0x7d7d7d7d), SkBits2Float(0x00000000)); // 2.10591e+37
f, 0 |
| 7924 path.quadTo(SkBits2Float(0x7ccacab0), SkBits2Float(0x7d1817f4), SkBits2Float(0x7
c223bab), SkBits2Float(0x7cf35966)); // 8.42364e+36f, 1.26354e+37f, 3.36945e+36
f, 1.01083e+37f |
| 7925 path.close(); |
| 7926 |
| 7927 SkPath path1(path); |
| 7928 path.reset(); |
| 7929 path.setFillType((SkPath::FillType) 0); |
| 7930 path.moveTo(SkBits2Float(0x109d0000), SkBits2Float(0xff7bc000)); // 6.19256e-29
f, -3.34633e+38f |
| 7931 path.conicTo(SkBits2Float(0x979797ed), SkBits2Float(0x3a214797), SkBits2Float(0x
28aa217a), SkBits2Float(0x01007272), SkBits2Float(0x00000072)); // -9.7965e-25f
, 0.000615233f, 1.88883e-14f, 2.3592e-38f, 1.59748e-43f |
| 7932 path.quadTo(SkBits2Float(0x72728302), SkBits2Float(0x8b727272), SkBits2Float(0x7
2727272), SkBits2Float(0xc00308f6)); // 4.80344e+30f, -4.66936e-32f, 4.80216e+3
0f, -2.04742f |
| 7933 path.conicTo(SkBits2Float(0x7f52753a), SkBits2Float(0x8072ffff), SkBits2Float(0x
67af2103), SkBits2Float(0x7d2a6847), SkBits2Float(0x7d7d7d7d)); // 2.79747e+38f
, -1.05611e-38f, 1.65405e+24f, 1.41569e+37f, 2.10591e+37f |
| 7934 |
| 7935 SkPath path2(path); |
| 7936 testPathOpFuzz(reporter, path1, path2, (SkPathOp) 3, filename); |
| 7937 } |
| 7938 |
7918 static struct TestDesc failTests[] = { | 7939 static struct TestDesc failTests[] = { |
| 7940 TEST(fuzz763_44), |
7919 TEST(fuzz763_43), | 7941 TEST(fuzz763_43), |
7920 TEST(fuzz763_42), | 7942 TEST(fuzz763_42), |
7921 TEST(fuzz763_41), | 7943 TEST(fuzz763_41), |
7922 TEST(fuzz763_40), | 7944 TEST(fuzz763_40), |
7923 TEST(fuzz763_39), | 7945 TEST(fuzz763_39), |
7924 TEST(fuzz763_38), | 7946 TEST(fuzz763_38), |
7925 TEST(fuzz763_37), | 7947 TEST(fuzz763_37), |
7926 TEST(fuzz763_36), | 7948 TEST(fuzz763_36), |
7927 TEST(fuzz763_35), | 7949 TEST(fuzz763_35), |
7928 TEST(fuzz763_34), | 7950 TEST(fuzz763_34), |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
7990 } | 8012 } |
7991 | 8013 |
7992 static struct TestDesc repTests[] = { | 8014 static struct TestDesc repTests[] = { |
7993 TEST(fuzz763_5a), | 8015 TEST(fuzz763_5a), |
7994 }; | 8016 }; |
7995 | 8017 |
7996 DEF_TEST(PathOpsRepOp, reporter) { | 8018 DEF_TEST(PathOpsRepOp, reporter) { |
7997 for (int index = 0; index < 1; ++index) | 8019 for (int index = 0; index < 1; ++index) |
7998 RunTestSet(reporter, repTests, SK_ARRAY_COUNT(repTests), nullptr, nullptr, n
ullptr, false); | 8020 RunTestSet(reporter, repTests, SK_ARRAY_COUNT(repTests), nullptr, nullptr, n
ullptr, false); |
7999 } | 8021 } |
OLD | NEW |