aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Florin Malita <fmalita@chromium.org>2018-06-19 11:27:20 -0400
committerGravatar Kevin Lubick <kjlubick@google.com>2018-06-19 18:23:30 +0000
commit80452bee11ebe6708ea459ea34e526a44c04bdb0 (patch)
tree2e74fe66a6554f81909188b423f7ce4055cdaea3
parent96aa535b782f31df0f063213c2958acba32a808d (diff)
Fold SkJSON into Skia/utils
It's a tiny, core-ish component -- might as well treat as such to simplify dependencies. Change-Id: I6f31ce2d151f9a629d88bfc7f15d64891d5150c0 Reviewed-on: https://skia-review.googlesource.com/135780 Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: Kevin Lubick <kjlubick@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
-rw-r--r--BUILD.gn6
-rw-r--r--bench/JSONBench.cpp (renamed from modules/skjson/src/SkJSONBench.cpp)0
-rw-r--r--fuzz/fuzz.cpp31
-rw-r--r--fuzz/oss_fuzz/FuzzJSON.cpp (renamed from modules/skjson/src/FuzzSkJSON.cpp)4
-rw-r--r--gn/bench.gni1
-rw-r--r--gn/tests.gni1
-rw-r--r--gn/utils.gni2
-rw-r--r--modules/skjson/BUILD.gn86
-rw-r--r--modules/skottie/BUILD.gn1
-rw-r--r--src/utils/SkJSON.cpp (renamed from modules/skjson/src/SkJSON.cpp)0
-rw-r--r--src/utils/SkJSON.h (renamed from modules/skjson/include/SkJSON.h)0
-rw-r--r--tests/JSONTest.cpp (renamed from modules/skjson/src/SkJSONTest.cpp)6
12 files changed, 21 insertions, 117 deletions
diff --git a/BUILD.gn b/BUILD.gn
index 529a74f6b0..26cd616631 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -1392,7 +1392,6 @@ if (skia_enable_tools) {
]
public_deps = [
":gpu_tool_utils", # Test.h #includes headers from this target.
- "modules/skjson:tests",
]
}
@@ -1407,9 +1406,6 @@ if (skia_enable_tools) {
":skia",
":tool_utils",
]
- public_deps = [
- "modules/skjson:bench",
- ]
}
test_lib("experimental_svg_model") {
@@ -1736,6 +1732,7 @@ if (skia_enable_tools) {
"fuzz/oss_fuzz/FuzzAnimatedImage.cpp",
"fuzz/oss_fuzz/FuzzImage.cpp",
"fuzz/oss_fuzz/FuzzImageFilterDeserialize.cpp",
+ "fuzz/oss_fuzz/FuzzJSON.cpp",
"fuzz/oss_fuzz/FuzzPathDeserialize.cpp",
"fuzz/oss_fuzz/FuzzRegionDeserialize.cpp",
"fuzz/oss_fuzz/FuzzRegionSetPath.cpp",
@@ -1750,7 +1747,6 @@ if (skia_enable_tools) {
":flags",
":gpu_tool_utils",
":skia",
- "modules/skjson:fuzz",
"modules/skottie:fuzz",
"//third_party/jsoncpp",
"//third_party/libpng",
diff --git a/modules/skjson/src/SkJSONBench.cpp b/bench/JSONBench.cpp
index 4ef1d6c01b..4ef1d6c01b 100644
--- a/modules/skjson/src/SkJSONBench.cpp
+++ b/bench/JSONBench.cpp
diff --git a/fuzz/fuzz.cpp b/fuzz/fuzz.cpp
index 96d2a25daa..a71a386820 100644
--- a/fuzz/fuzz.cpp
+++ b/fuzz/fuzz.cpp
@@ -53,13 +53,11 @@ static constexpr char g_type_message[] = "How to interpret --bytes, one of:\n"
"image_decode\n"
"image_mode\n"
"image_scale\n"
+ "json\n"
"path_deserialize\n"
"pipe\n"
"region_deserialize\n"
"region_set_path\n"
-#if defined(SK_ENABLE_SKJSON)
- "skjson\n"
-#endif
"skp\n"
"sksl2glsl\n"
#if defined(SK_ENABLE_SKOTTIE)
@@ -79,6 +77,7 @@ static void fuzz_filter_fuzz(sk_sp<SkData>);
static void fuzz_img2(sk_sp<SkData>);
static void fuzz_animated_img(sk_sp<SkData>);
static void fuzz_img(sk_sp<SkData>, uint8_t, uint8_t);
+static void fuzz_json(sk_sp<SkData>);
static void fuzz_path_deserialize(sk_sp<SkData>);
static void fuzz_region_deserialize(sk_sp<SkData>);
static void fuzz_region_set_path(sk_sp<SkData>);
@@ -92,10 +91,6 @@ static void print_api_names();
static void fuzz_sksl2glsl(sk_sp<SkData>);
#endif
-#if defined(SK_ENABLE_SKJSON)
-static void fuzz_skjson(sk_sp<SkData>);
-#endif
-
#if defined(SK_ENABLE_SKOTTIE)
static void fuzz_skottie_json(sk_sp<SkData>);
#endif
@@ -156,6 +151,10 @@ static int fuzz_file(SkString path, SkString type) {
fuzz_color_deserialize(bytes);
return 0;
}
+ if (type.equals("filter_fuzz")) {
+ fuzz_filter_fuzz(bytes);
+ return 0;
+ }
if (type.equals("image_decode")) {
fuzz_img2(bytes);
return 0;
@@ -170,8 +169,8 @@ static int fuzz_file(SkString path, SkString type) {
fuzz_img(bytes, 0, option);
return 0;
}
- if (type.equals("filter_fuzz")) {
- fuzz_filter_fuzz(bytes);
+ if (type.equals("json")) {
+ fuzz_json(bytes);
return 0;
}
if (type.equals("path_deserialize")) {
@@ -190,12 +189,6 @@ static int fuzz_file(SkString path, SkString type) {
fuzz_skpipe(bytes);
return 0;
}
-#if defined(SK_ENABLE_SKJSON)
- if (type.equals("skjson")) {
- fuzz_skjson(bytes);
- return 0;
- }
-#endif
#if defined(SK_ENABLE_SKOTTIE)
if (type.equals("skottie_json")) {
fuzz_skottie_json(bytes);
@@ -281,14 +274,12 @@ static SkString try_auto_detect(SkString path, SkString* name) {
return SkString("");
}
-#if defined(SK_ENABLE_SKJSON)
-void FuzzSkJSON(sk_sp<SkData> bytes);
+void FuzzJSON(sk_sp<SkData> bytes);
-static void fuzz_skjson(sk_sp<SkData> bytes){
- FuzzSkJSON(bytes);
+static void fuzz_json(sk_sp<SkData> bytes){
+ FuzzJSON(bytes);
SkDebugf("[terminated] Done parsing!\n");
}
-#endif
#if defined(SK_ENABLE_SKOTTIE)
void FuzzSkottieJSON(sk_sp<SkData> bytes);
diff --git a/modules/skjson/src/FuzzSkJSON.cpp b/fuzz/oss_fuzz/FuzzJSON.cpp
index 2e971ce249..d6d3cf8d34 100644
--- a/modules/skjson/src/FuzzSkJSON.cpp
+++ b/fuzz/oss_fuzz/FuzzJSON.cpp
@@ -9,7 +9,7 @@
#include "SkJSON.h"
#include "SkStream.h"
-void FuzzSkJSON(sk_sp<SkData> bytes) {
+void FuzzJSON(sk_sp<SkData> bytes) {
skjson::DOM dom(static_cast<const char*>(bytes->data()), bytes->size());
SkDynamicMemoryWStream wstream;
dom.write(&wstream);
@@ -18,7 +18,7 @@ void FuzzSkJSON(sk_sp<SkData> bytes) {
#if defined(IS_FUZZING_WITH_LIBFUZZER)
extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
auto bytes = SkData::MakeWithoutCopy(data, size);
- FuzzSkJSON(bytes);
+ FuzzJSON(bytes);
return 0;
}
#endif
diff --git a/gn/bench.gni b/gn/bench.gni
index e73a973ccb..ab1870308c 100644
--- a/gn/bench.gni
+++ b/gn/bench.gni
@@ -63,6 +63,7 @@ bench_sources = [
"$_bench/ImageFilterCollapse.cpp",
"$_bench/ImageFilterDAGBench.cpp",
"$_bench/InterpBench.cpp",
+ "$_bench/JSONBench.cpp",
"$_bench/LightingBench.cpp",
"$_bench/LineBench.cpp",
"$_bench/MagnifierBench.cpp",
diff --git a/gn/tests.gni b/gn/tests.gni
index 5f028e8f45..32c3337adc 100644
--- a/gn/tests.gni
+++ b/gn/tests.gni
@@ -123,6 +123,7 @@ tests_sources = [
"$_tests/InterpolatorTest.cpp",
"$_tests/InvalidIndexedPngTest.cpp",
"$_tests/IsClosedSingleContourTest.cpp",
+ "$_tests/JSONTest.cpp",
"$_tests/LayerDrawLooperTest.cpp",
"$_tests/LazyProxyTest.cpp",
"$_tests/LListTest.cpp",
diff --git a/gn/utils.gni b/gn/utils.gni
index ff8f60a56c..63b063bf46 100644
--- a/gn/utils.gni
+++ b/gn/utils.gni
@@ -38,6 +38,8 @@ skia_utils_sources = [
"$_src/utils/SkFloatToDecimal.h",
"$_src/utils/SkFloatUtils.h",
"$_src/utils/SkInterpolator.cpp",
+ "$_src/utils/SkJSON.cpp",
+ "$_src/utils/SkJSON.h",
"$_src/utils/SkJSONWriter.cpp",
"$_src/utils/SkJSONWriter.h",
"$_src/utils/SkMatrix22.cpp",
diff --git a/modules/skjson/BUILD.gn b/modules/skjson/BUILD.gn
deleted file mode 100644
index dd8ca65973..0000000000
--- a/modules/skjson/BUILD.gn
+++ /dev/null
@@ -1,86 +0,0 @@
-# Copyright 2018 Google Inc.
-#
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-declare_args() {
- skia_enable_skjson = true
-}
-
-config("public_config") {
- if (skia_enable_skjson) {
- defines = [ "SK_ENABLE_SKJSON" ]
- include_dirs = [ "include" ]
- }
-}
-
-source_set("skjson") {
- if (skia_enable_skjson) {
- public_configs = [ ":public_config" ]
- public = [
- "include/SkJSON.h",
- ]
- sources = [
- "src/SkJSON.cpp",
- ]
- configs += [ "../../:skia_private" ]
- deps = [
- "../..:skia",
- ]
- }
-}
-
-source_set("tests") {
- if (skia_enable_skjson) {
- testonly = true
-
- configs += [
- "../..:skia_private",
- "../..:tests_config",
- ]
- sources = [
- "src/SkJSONTest.cpp",
- ]
-
- deps = [
- ":skjson",
- "../..:gpu_tool_utils",
- "../..:skia",
- ]
- }
-}
-
-source_set("bench") {
- if (skia_enable_skjson) {
- testonly = true
-
- configs += [
- "../..:bench_config",
- "../..:skia_private",
- ]
- sources = [
- "src/SkJSONBench.cpp",
- ]
-
- deps = [
- ":skjson",
- "../..:skia",
- ]
- }
-}
-
-source_set("fuzz") {
- if (skia_enable_skjson) {
- testonly = true
-
- configs += [ "../..:skia_private" ]
- sources = [
- "src/FuzzSkJSON.cpp",
- ]
-
- deps = [
- ":skjson",
- "../..:skia",
- ]
- }
-}
diff --git a/modules/skottie/BUILD.gn b/modules/skottie/BUILD.gn
index 9442592968..afa2769add 100644
--- a/modules/skottie/BUILD.gn
+++ b/modules/skottie/BUILD.gn
@@ -34,7 +34,6 @@ source_set("skottie") {
configs += [ "../../:skia_private" ]
deps = [
"../..:skia",
- "../skjson",
"../sksg",
]
}
diff --git a/modules/skjson/src/SkJSON.cpp b/src/utils/SkJSON.cpp
index 2548f4ef41..2548f4ef41 100644
--- a/modules/skjson/src/SkJSON.cpp
+++ b/src/utils/SkJSON.cpp
diff --git a/modules/skjson/include/SkJSON.h b/src/utils/SkJSON.h
index 8baf9fb8fc..8baf9fb8fc 100644
--- a/modules/skjson/include/SkJSON.h
+++ b/src/utils/SkJSON.h
diff --git a/modules/skjson/src/SkJSONTest.cpp b/tests/JSONTest.cpp
index df04ac3529..72c71e3f56 100644
--- a/modules/skjson/src/SkJSONTest.cpp
+++ b/tests/JSONTest.cpp
@@ -14,7 +14,7 @@
using namespace skjson;
-DEF_TEST(SkJSON_Parse, reporter) {
+DEF_TEST(JSON_Parse, reporter) {
static constexpr struct {
const char* in;
const char* out;
@@ -155,7 +155,7 @@ static void check_string(skiatest::Reporter* reporter, const Value& v, const cha
}
}
-DEF_TEST(SkJSON_DOM_visit, reporter) {
+DEF_TEST(JSON_DOM_visit, reporter) {
static constexpr char json[] = "{ \n\
\"k1\": null, \n\
\"k2\": false, \n\
@@ -302,7 +302,7 @@ void check_value(skiatest::Reporter* reporter, const Value& v, const char* expec
REPORTER_ASSERT(reporter, 0 == strcmp(expected_string, vstr.c_str()));
}
-DEF_TEST(SkJSON_DOM_build, reporter) {
+DEF_TEST(JSON_DOM_build, reporter) {
SkArenaAlloc alloc(4096);
const auto v0 = NullValue();