aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2012-08-13 22:10:05 +0000
committerGravatar bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2012-08-13 22:10:05 +0000
commit7fbc6048b1cacbf11852e25b838edc8fe9433dcd (patch)
tree7094ab91ab489820cebeff0d5b68afe0d68cbe52
parentf61c7463a945ebc891e2eead79051e4411bbeb57 (diff)
Stop bench from leaking
Review URL: http://codereview.appspot.com/6465045/ git-svn-id: http://skia.googlecode.com/svn/trunk@5072 2bbb7eff-a529-9590-31e7-b0007b416f81
-rw-r--r--bench/TextBench.cpp1
-rw-r--r--bench/benchmain.cpp3
2 files changed, 4 insertions, 0 deletions
diff --git a/bench/TextBench.cpp b/bench/TextBench.cpp
index 0bef92c7d7..9334c33476 100644
--- a/bench/TextBench.cpp
+++ b/bench/TextBench.cpp
@@ -49,6 +49,7 @@ class TextBench : public SkBenchmark {
public:
TextBench(void* param, const char text[], int ps,
SkColor color, FontQuality fq, bool doPos = false) : INHERITED(param) {
+ fPos = NULL;
fFQ = fq;
fDoPos = doPos;
fText.set(text);
diff --git a/bench/benchmain.cpp b/bench/benchmain.cpp
index 0ea48e9ed4..73aa9885f7 100644
--- a/bench/benchmain.cpp
+++ b/bench/benchmain.cpp
@@ -374,6 +374,7 @@ static void determine_gpu_context_size(SkTDict<const char*>& defineDict,
if (*contextHeight < dim.fY) {
*contextHeight = dim.fY;
}
+ bench->unref();
}
}
@@ -737,6 +738,8 @@ int main (int argc, char * const argv[]) {
Iter iter(&defineDict);
SkBenchmark* bench;
while ((bench = iter.next()) != NULL) {
+ SkAutoTUnref<SkBenchmark> benchUnref(bench);
+
SkIPoint dim = bench->getSize();
if (dim.fX <= 0 || dim.fY <= 0) {
continue;