| Index: tools/lua/lua_pictures.cpp
|
| diff --git a/tools/lua/lua_pictures.cpp b/tools/lua/lua_pictures.cpp
|
| index 1314c699d4ddc57969c3c56d006b5af603143bbe..ae4e1cabdadd9b68f00de50de537363a46c1e9da 100644
|
| --- a/tools/lua/lua_pictures.cpp
|
| +++ b/tools/lua/lua_pictures.cpp
|
| @@ -5,6 +5,7 @@
|
| * found in the LICENSE file.
|
| */
|
|
|
| +#include "SkLua.h"
|
| #include "SkLuaCanvas.h"
|
| #include "SkPicture.h"
|
| #include "SkCommandLineFlags.h"
|
| @@ -60,50 +61,6 @@ static SkData* read_into_data(const char file[]) {
|
| return SkData::NewFromMalloc(buffer, len);
|
| }
|
|
|
| -class SkAutoLua {
|
| -public:
|
| - SkAutoLua(const char termCode[] = NULL) : fTermCode(termCode) {
|
| - fL = luaL_newstate();
|
| - luaL_openlibs(fL);
|
| - }
|
| - ~SkAutoLua() {
|
| - if (fTermCode.size() > 0) {
|
| - lua_getglobal(fL, fTermCode.c_str());
|
| - if (lua_pcall(fL, 0, 0, 0) != LUA_OK) {
|
| - SkDebugf("lua err: %s\n", lua_tostring(fL, -1));
|
| - }
|
| - }
|
| - lua_close(fL);
|
| - }
|
| -
|
| - lua_State* get() const { return fL; }
|
| - lua_State* operator*() const { return fL; }
|
| - lua_State* operator->() const { return fL; }
|
| -
|
| - bool load(const char code[]) {
|
| - int err = luaL_loadstring(fL, code) || lua_pcall(fL, 0, 0, 0);
|
| - if (err) {
|
| - SkDebugf("--- lua failed\n");
|
| - return false;
|
| - }
|
| - return true;
|
| - }
|
| - bool load(const void* code, size_t size) {
|
| - SkString str((const char*)code, size);
|
| - return load(str.c_str());
|
| - int err = luaL_loadbufferx(fL, (const char*)code, size, NULL, NULL)
|
| - || lua_pcall(fL, 0, 0, 0);
|
| - if (err) {
|
| - SkDebugf("--- lua failed\n");
|
| - return false;
|
| - }
|
| - return true;
|
| - }
|
| -private:
|
| - lua_State* fL;
|
| - SkString fTermCode;
|
| -};
|
| -
|
| static void call_canvas(lua_State* L, SkLuaCanvas* canvas,
|
| const char pictureFile[], const char funcName[]) {
|
| lua_getglobal(L, funcName);
|
| @@ -135,12 +92,12 @@ int tool_main(int argc, char** argv) {
|
| }
|
|
|
| SkAutoGraphics ag;
|
| - SkAutoLua L(gSummarizeFunc);
|
| + SkLua L(gSummarizeFunc);
|
|
|
| for (int i = 0; i < FLAGS_luaFile.count(); ++i) {
|
| SkAutoDataUnref data(read_into_data(FLAGS_luaFile[i]));
|
| SkDebugf("loading %s...\n", FLAGS_luaFile[i]);
|
| - if (!L.load(data->data(), data->size())) {
|
| + if (!L.runCode(data->data(), data->size())) {
|
| SkDebugf("failed to load luaFile %s\n", FLAGS_luaFile[i]);
|
| exit(-1);
|
| }
|
|
|