0
==============
Info Develope:
MacOS 10.6 SnowLeopard
iOS SDK 5.0
FreePascal 2.6.0 for MacOS X
FreePascal 2.6.0 for iOS
XCode 4.2
Device: iPad
Lua: Object library = liblua.a (ver 5.14) 
==============

代码:

A) lua_pushnumber(LuaInstance, 5);
B) lua_pushstring(LuaInstance, 'TEST');
C) lua_pushlstring(LuaInstance, 'TEST', 4);

问题:当我使用变体“B”和“C”并在 iPad 上启动项目时,应用程序在启动时闪烁并关闭并出现下一个错误:

(iPad) 控制台日志中的错误:

Exited with code: 217
<Warning> Application 'demo1' exited abnormally with exit status 217

对于变体“A”,一切正常,应用程序启动正常。

有趣的是,当我在模拟器上编译和启动时,所有变体(“A”、“B”、“C”)都可以正常工作,而不会崩溃。

谁能知道为什么,lua_pushstring 设备上的应用程序崩溃?

可能有人在没有 freepascal 的情况下处理了这个问题,可能是在 c++ 上。请帮帮我。

4

1 回答 1

0

我注意到,当我将 printf 添加到 func lua_pushlstring 时,问题已解决。为什么?

LUA_API void lua_pushlstring (lua_State *L, const char *s, size_t len) {
  lua_lock(L);
  luaC_checkGC(L);
  printf ("Test= %s ", s);  
  setsvalue2s(L, L->top, luaS_newlstr(L, s, len));
  api_incr_top(L);
  lua_unlock(L);
}

链接 liblua.a 时,可能会发生解决冲突?

于 2012-07-27T13:06:06.307 回答