From 701a3ca157c85935988e82cd630828babc46b460 Mon Sep 17 00:00:00 2001 From: Yong-Hwan Baek Date: Fri, 20 Apr 2018 21:44:43 +0900 Subject: Fixed SkVertices crashing on Windows DLL builds SkVertices::Builder uses custom new operator but not exposed to dll. While delete operator in SkVertices.h could be inlined, it causes crash on Windows DLL builds. This patch fixes this issue. Change-Id: I8b635ad3aa4a3f496a392ce7840417947999e4b0 Reviewed-on: https://skia-review.googlesource.com/122480 Commit-Queue: Mike Klein Reviewed-by: Mike Klein --- AUTHORS | 3 ++- include/core/SkVertices.h | 2 +- src/core/SkVertices.cpp | 5 +++++ 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/AUTHORS b/AUTHORS index 0d33ce12e4..016e05a93b 100644 --- a/AUTHORS +++ b/AUTHORS @@ -49,4 +49,5 @@ Christian Plesner Hansen Marco Alesiani Adobe Systems Incorporated <*@adobe.com> Yandex LLC <*@yandex-team.ru> -Kaloyan Donev \ No newline at end of file +Kaloyan Donev +Yong-Hwan Baek diff --git a/include/core/SkVertices.h b/include/core/SkVertices.h index db1764e57e..9224eebd21 100644 --- a/include/core/SkVertices.h +++ b/include/core/SkVertices.h @@ -115,7 +115,7 @@ private: // these are needed since we've manually sized our allocation (see Builder::init) friend class SkNVRefCnt; - void operator delete(void* p) { ::operator delete(p); } + void operator delete(void* p); static sk_sp Alloc(int vCount, int iCount, uint32_t builderFlags, size_t* arraySize); diff --git a/src/core/SkVertices.cpp b/src/core/SkVertices.cpp index 7253109a82..900247d29b 100644 --- a/src/core/SkVertices.cpp +++ b/src/core/SkVertices.cpp @@ -235,3 +235,8 @@ sk_sp SkVertices::Decode(const void* data, size_t length) { } return builder.detach(); } + +void SkVertices::operator delete(void* p) +{ + ::operator delete(p); +} -- cgit v1.2.3