Skip to content

Commit 3e50630

Browse files
committed
repo: tried the cdata stuff again... nevermind
1 parent 970e2bf commit 3e50630

File tree

2 files changed

+7
-3
lines changed

2 files changed

+7
-3
lines changed

source/rawlua.cpp

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ uint32_t RawLua::GetCTypeFromName(lua_State* L, const char* pName, CDataBridge*
119119
extern RawLua::CDataBridge* GetCDataBridgeFromInterface(GarrysMod::Lua::ILuaInterface* pLua); // From the LuaJIT module
120120
void* RawLua::AllocateCDataOrUserData(GarrysMod::Lua::ILuaInterface* pLua, int nMetaID, int nSize)
121121
{
122+
#if 0 // Disabled since stuff decides to behave funny...
122123
CDataBridge* cDataBridge = GetCDataBridgeFromInterface(pLua);
123124

124125
if (cDataBridge && cDataBridge->nHolyLibUserDataTypeID != 0)
@@ -134,8 +135,11 @@ void* RawLua::AllocateCDataOrUserData(GarrysMod::Lua::ILuaInterface* pLua, int n
134135
//if (cDataBridge->nHolyLibUserDataGC)
135136
// lj_cdata_setfin(L, cData, gcval(cDataBridge->nHolyLibUserDataGC), itype(cDataBridge->nHolyLibUserDataGC));
136137

137-
return uddata(cData);
138-
} else {
138+
// Msg("cdata pointer: %p - %p %u\n", cdataptr(cData), cData, cDataBridge->nHolyLibUserDataTypeID);
139+
return cdataptr(cData);
140+
} else
141+
#endif
142+
{
139143
return pLua->NewUserdata(nSize);
140144
}
141145
}

source/util.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -798,7 +798,7 @@ LuaUserData* Push_##className(GarrysMod::Lua::ILuaInterface* LUA, className* var
798798
} \
799799
\
800800
unsigned char iMeta = Lua::GetLuaData(LUA)->GetMetaTable(TO_LUA_TYPE(className)); \
801-
LuaUserData* userData = (LuaUserData*)LUA->NewUserdata(sizeof(LuaUserData)); \
801+
LuaUserData* userData = (LuaUserData*)RawLua::AllocateCDataOrUserData(LUA, iMeta, sizeof(LuaUserData)); \
802802
userData->Init(LUA, iMeta, var); \
803803
if (LUA->PushMetaTable(iMeta)) LUA->SetMetaTable(-2); \
804804
return userData; \

0 commit comments

Comments
 (0)