diff options
author | 2014-11-14 09:22:40 -0800 | |
---|---|---|
committer | 2014-11-14 09:22:40 -0800 | |
commit | d4897591fddf8f2a4860066449fb7dd8b0cc7b77 (patch) | |
tree | da215b78e52e601ee48d296b639a3c224c9234e7 /tests | |
parent | 36e6e266b882b7687fb526dc13eeb23ffbc2b85e (diff) |
Don't pass null to memcmp.
This will allow us to add nonnull-attribute to the UBSAN bot.
We are in fact hitting a case where one of the arguments is null and the other
not, which seems dicey. I think the scenario is comparing the empty pathref
with another path ref that's just been COWed, without any verbs or points yet.
BUG=skia:
Review URL: https://codereview.chromium.org/732643002
Diffstat (limited to 'tests')
-rw-r--r-- | tests/PathTest.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/tests/PathTest.cpp b/tests/PathTest.cpp index bc3a3d7bdb..94b91d261b 100644 --- a/tests/PathTest.cpp +++ b/tests/PathTest.cpp @@ -3435,7 +3435,11 @@ static void compare_dump(skiatest::Reporter* reporter, const SkPath& path, bool path.dump(&wStream, force, dumpAsHex); SkAutoDataUnref data(wStream.copyToData()); REPORTER_ASSERT(reporter, data->size() == strlen(str)); - REPORTER_ASSERT(reporter, !memcmp(data->data(), str, strlen(str))); + if (strlen(str) > 0) { + REPORTER_ASSERT(reporter, !memcmp(data->data(), str, strlen(str))); + } else { + REPORTER_ASSERT(reporter, data->data() == NULL || !memcmp(data->data(), str, strlen(str))); + } } static void test_dump(skiatest::Reporter* reporter) { |