char buf[256];
snprintf(buf, sizeof buf, "./scripts/%s", cmd_name);
- printf("Executing file '%s'\n---------------------------\n" , cmd_name);
+ printf("-----Executing file '%s'\n" , cmd_name);
// run the Lua script
int error = luaL_loadfile(lua_state, buf);
//luaL_dofile(lua_state, buf);
// close the Lua state
lua_close(lua_state);
- printf("-----------------Finished\n");
+ printf("\n-----Finished\n");
}
==> A 544 byte buffer will do.
**/
//Pop cmd
- UsbCommand *c = (UsbCommand *)lua_touserdata(L, 1);
- luaL_argcheck(L, c != NULL, 1, "'UsbCommand' expected");
- SendCommand(c);
+ size_t size;
+ const char *data = luaL_checklstring(L, 1, &size);
+ if(size != sizeof(UsbCommand))
+ {
+ printf("Got data size %d, expected %d" , size,sizeof(UsbCommand));
+ lua_pushstring(L,"Wrong data size");
+ return 1;
+ }
+
+// UsbCommand c = (*data);
+ SendCommand(data);
return 0;
+ //UsbCommand *c = (UsbCommand *)lua_touserdata(L, 1);
+ //luaL_argcheck(L, c != NULL, 1, "'UsbCommand' expected");
+
+ //SendCommand(c);
+ //return 0;
}
/**
* @brief The following params expected:
printf("in l_WaitForResponseTimeout, got cmd 0x%0x\n",(int) cmd);
//UsbCommand response;
- //We allocate the usbcommand as userdata on the Lua-stack
+ //We allocate the usbcommand as userdata on the Lua-stack
size_t nbytes = sizeof(UsbCommand);
UsbCommand *response = (UsbCommand *)lua_newuserdata(L, nbytes);