diff options
| author | 2009-06-10 18:39:40 -0700 | |
|---|---|---|
| committer | 2009-06-10 18:39:40 -0700 | |
| commit | d5680f9ba95ec7ce212e8025774914e79982a1ee (patch) | |
| tree | d36fd175e2c48d6d9f1164b1524271274ffd6370 /libs/rs/rsScriptC.cpp | |
| parent | 196ac850afc2382c901d3866a6e9bd95093893b9 (diff) | |
Fix bug with bad conversion of java strings to C strings for object names. Update test app to test object defines.
Diffstat (limited to 'libs/rs/rsScriptC.cpp')
| -rw-r--r-- | libs/rs/rsScriptC.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/libs/rs/rsScriptC.cpp b/libs/rs/rsScriptC.cpp index ae58e5f14b28..d29eb9ff9be6 100644 --- a/libs/rs/rsScriptC.cpp +++ b/libs/rs/rsScriptC.cpp @@ -19,6 +19,7 @@ #include "rsMatrix.h" #include "acc/acc.h" +#include "utils/String8.h" using namespace android; using namespace android::renderscript; @@ -433,17 +434,22 @@ void ScriptCState::clear() } + void ScriptCState::runCompiler(Context *rsc) { mAccScript = accCreateScript(); + String8 tmp; + + rsc->appendNameDefines(&tmp); - const char* scriptSource[] = {mProgram.mScriptText}; - int scriptLength[] = {mProgram.mScriptTextLength} ; - accScriptSource(mAccScript, 1, scriptSource, scriptLength); + const char* scriptSource[] = {tmp.string(), mProgram.mScriptText}; + int scriptLength[] = {tmp.length(), mProgram.mScriptTextLength} ; + accScriptSource(mAccScript, sizeof(scriptLength) / sizeof(int), scriptSource, scriptLength); accCompileScript(mAccScript); accGetScriptLabel(mAccScript, "main", (ACCvoid**) &mProgram.mScript); rsAssert(mProgram.mScript); + if (mProgram.mScript) { const static int pragmaMax = 16; ACCsizei pragmaCount; |