gdb調試,lua c api返回值

gdb時經常發生找不到源文件的情況,使用下面命令
dir /home/build/thirdparty/lua/src

就可以解決。


前段時間項目頻繁發生宕機,從宕機日誌中也看不出什麼端倪,最終地毯式排查,把lua中一些亂用的C函數修正後,宕機問題就解決了

int addCopyMap(lua_State* L)
{
	ILuaInterfacePtr pinterface = CLuaMgr::getInstance()->getLuaInterface();
	if (pinterface == NULL)
	{
		return -1;
	}
	uint32 ncopyid			= luaL_checkinteger(L, 1);
	uint32 ninstanceid		= luaL_checkinteger(L, 2);
	uint16 nscene			= luaL_checkinteger(L, 3);
	uint8 nmapid			= luaL_checkinteger(L, 4);

	return pinterface->addCopyMap(ncopyid, ninstanceid, nscene, nmapid);
}
改後:
int addCopyMap(lua_State* L)
{
	ILuaInterfacePtr pinterface = CLuaMgr::getInstance()->getLuaInterface();
	if (pinterface == NULL)
	{
		return -1;
	}
	uint32 ncopyid			= luaL_checkinteger(L, 1);
	uint32 ninstanceid		= luaL_checkinteger(L, 2);
	uint16 nscene			= luaL_checkinteger(L, 3);
	uint8 nmapid			= luaL_checkinteger(L, 4);

	pinterface->addCopyMap(ncopyid, ninstanceid, nscene, nmapid);
	
	return 0; // 這個是這個函數返回的參數個數,不能隨便寫
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章