aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--include/core/SkPath.h1
-rw-r--r--src/core/SkPath.cpp9
2 files changed, 4 insertions, 6 deletions
diff --git a/include/core/SkPath.h b/include/core/SkPath.h
index 2488dd8bf9..4e2451b5e0 100644
--- a/include/core/SkPath.h
+++ b/include/core/SkPath.h
@@ -951,7 +951,6 @@ public:
of SkPathRefs */
class PathRefDebugRef {
public:
- PathRefDebugRef(SkPath* owner);
PathRefDebugRef(SkPathRef* pr, SkPath* owner);
~PathRefDebugRef();
void reset(SkPathRef* ref);
diff --git a/src/core/SkPath.cpp b/src/core/SkPath.cpp
index e997b80e4f..7497ab2591 100644
--- a/src/core/SkPath.cpp
+++ b/src/core/SkPath.cpp
@@ -19,11 +19,10 @@
#if SK_DEBUG_PATH_REF
-SkPath::PathRefDebugRef::PathRefDebugRef(SkPath* owner) : fOwner(owner) {}
-
SkPath::PathRefDebugRef::PathRefDebugRef(SkPathRef* pr, SkPath* owner)
-: fPathRef(pr)
-, fOwner(owner) {
+ : fPathRef(pr)
+ , fOwner(owner)
+{
pr->addOwner(owner);
}
@@ -244,7 +243,7 @@ void SkPath::resetFields() {
SkPath::SkPath(const SkPath& that)
#if SK_DEBUG_PATH_REF
- : fPathRef(this)
+ : fPathRef(SkRef(that.fPathRef.get()), this)
#else
: fPathRef(SkRef(that.fPathRef.get()))
#endif