aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Yong-Hwan Baek <meisterdevhwan@gmail.com>2018-04-20 21:44:43 +0900
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-04-22 14:42:01 +0000
commit701a3ca157c85935988e82cd630828babc46b460 (patch)
tree7228991a45a183349cfeaf1d38613e36b33a21ff
parent20f8bd7711196a83789c8e5286501b4711b845c4 (diff)
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 <mtklein@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
-rw-r--r--AUTHORS3
-rw-r--r--include/core/SkVertices.h2
-rw-r--r--src/core/SkVertices.cpp5
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 <plesner@t.undra.org>
Marco Alesiani <marco.diiga@gmail.com>
Adobe Systems Incorporated <*@adobe.com>
Yandex LLC <*@yandex-team.ru>
-Kaloyan Donev <kdonev@gmail.com> \ No newline at end of file
+Kaloyan Donev <kdonev@gmail.com>
+Yong-Hwan Baek <meisterdevhwan@gmail.com>
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<SkVertices>;
- void operator delete(void* p) { ::operator delete(p); }
+ void operator delete(void* p);
static sk_sp<SkVertices> 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> SkVertices::Decode(const void* data, size_t length) {
}
return builder.detach();
}
+
+void SkVertices::operator delete(void* p)
+{
+ ::operator delete(p);
+}