summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@collabora.com>2014-03-06 09:22:56 -0500
committerKohei Yoshida <kohei.yoshida@collabora.com>2014-03-06 20:50:02 -0500
commite253d46af3b47afd0006084bec89b02473ee457a (patch)
treef3846eb22ec618d93ace597fc2dad1a16425531c
parent6b6ec280f3d7f35fb9c8c8ba92a31d51ab4dca16 (diff)
This ScTokenArray is stored but not used. Remove it.
Not only that, it attempts to delete a non-cloned copy in the dtor, which would lead to double deletion. Change-Id: I3ce5266e894354a8cac5dffb5f350b942f463159
-rw-r--r--sc/source/core/opencl/formulagroupcl.cxx11
1 files changed, 2 insertions, 9 deletions
diff --git a/sc/source/core/opencl/formulagroupcl.cxx b/sc/source/core/opencl/formulagroupcl.cxx
index de4b6e6c7a9c..ec727a8009fd 100644
--- a/sc/source/core/opencl/formulagroupcl.cxx
+++ b/sc/source/core/opencl/formulagroupcl.cxx
@@ -3088,7 +3088,7 @@ class DynamicKernel : public CompiledFormula
{
public:
DynamicKernel(FormulaTreeNodeRef r):mpRoot(r),
- mpProgram(NULL), mpKernel(NULL), mpResClmem(NULL), mpCode(NULL) {}
+ mpProgram(NULL), mpKernel(NULL), mpResClmem(NULL) {}
static DynamicKernel *create(ScDocument& rDoc,
const ScAddress& rTopPos,
ScTokenArray& rCode);
@@ -3181,7 +3181,6 @@ public:
}
~DynamicKernel();
cl_mem GetResultBuffer(void) const { return mpResClmem; }
- void SetPCode(ScTokenArray *pCode) { mpCode = pCode; }
private:
void TraverseAST(FormulaTreeNodeRef);
@@ -3194,7 +3193,6 @@ private:
cl_mem mpResClmem; // Results
std::set<std::string> inlineDecl;
std::set<std::string> inlineFun;
- ScTokenArray *mpCode;
};
DynamicKernel::~DynamicKernel()
@@ -3206,8 +3204,6 @@ DynamicKernel::~DynamicKernel()
clReleaseKernel(mpKernel);
}
// mpProgram is not going to be released here -- it's cached.
- if (mpCode)
- delete mpCode;
}
/// Build code
void DynamicKernel::CreateKernel(void)
@@ -3444,10 +3440,7 @@ CompiledFormula* FormulaGroupInterpreterOpenCL::createCompiledFormula(ScDocument
}
SymbolTable::nR = xGroup->mnLength;
- DynamicKernel *result = DynamicKernel::create(rDoc, rTopPos, *pCode);
- if ( result )
- result->SetPCode(pCode);
- return result;
+ return DynamicKernel::create(rDoc, rTopPos, *pCode);
}
bool FormulaGroupInterpreterOpenCL::interpret( ScDocument& rDoc,