Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit 9102c86

Browse files
herbderbySkia Commit-Bot
authored andcommitted
Refcount SkStrikeCache Nodes
Change-Id: I3566345b8518b15603d6089626a7c3b493f8af17 Reviewed-on: https://skia-review.googlesource.com/c/skia/+/270438 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
1 parent 886e850 commit 9102c86

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

src/core/SkStrikeCache.cpp

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,15 @@
1010
#include <cctype>
1111

1212
#include "include/core/SkGraphics.h"
13+
#include "include/core/SkRefCnt.h"
1314
#include "include/core/SkTraceMemoryDump.h"
1415
#include "include/core/SkTypeface.h"
1516
#include "include/private/SkMutex.h"
1617
#include "include/private/SkTemplates.h"
1718
#include "src/core/SkGlyphRunPainter.h"
1819
#include "src/core/SkStrike.h"
1920

20-
class SkStrikeCache::Node final : public SkStrikeForGPU {
21+
class SkStrikeCache::Node final : public SkRefCnt, public SkStrikeForGPU {
2122
public:
2223
Node(SkStrikeCache* strikeCache,
2324
const SkDescriptor& desc,
@@ -135,7 +136,7 @@ SkStrikeCache::~SkStrikeCache() {
135136
Node* node = fHead;
136137
while (node) {
137138
Node* next = node->fNext;
138-
delete node;
139+
node->unref();
139140
node = next;
140141
}
141142
}
@@ -398,7 +399,7 @@ size_t SkStrikeCache::internalPurge(size_t minBytesNeeded) {
398399
bytesFreed += node->fStrike.getMemoryUsed();
399400
countFreed += 1;
400401
this->internalDetachCache(node);
401-
delete node;
402+
node->unref();
402403
}
403404
node = prev;
404405
}

0 commit comments

Comments
 (0)