mirror of
https://github.com/bjornbytes/lovr.git
synced 2024-07-04 13:33:34 +00:00
More memory stuff;
This commit is contained in:
parent
426b907294
commit
fe47104869
|
@ -45,6 +45,7 @@ int l_lovrThreadInit(lua_State* L) {
|
||||||
luaL_register(L, NULL, lovrThreadModule);
|
luaL_register(L, NULL, lovrThreadModule);
|
||||||
luax_registertype(L, "Thread", lovrThread);
|
luax_registertype(L, "Thread", lovrThread);
|
||||||
luax_registertype(L, "Channel", lovrChannel);
|
luax_registertype(L, "Channel", lovrChannel);
|
||||||
|
lovrThreadInit();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -60,7 +61,6 @@ int l_lovrThreadGetChannel(lua_State* L) {
|
||||||
const char* name = luaL_checkstring(L, 1);
|
const char* name = luaL_checkstring(L, 1);
|
||||||
Channel* channel = lovrThreadGetChannel(name);
|
Channel* channel = lovrThreadGetChannel(name);
|
||||||
luax_pushtype(L, Channel, channel);
|
luax_pushtype(L, Channel, channel);
|
||||||
lovrRelease(channel);
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -15,6 +15,7 @@ void lovrDestroy() {
|
||||||
lovrHeadsetDestroy();
|
lovrHeadsetDestroy();
|
||||||
lovrMathDestroy();
|
lovrMathDestroy();
|
||||||
lovrPhysicsDestroy();
|
lovrPhysicsDestroy();
|
||||||
|
lovrThreadDeinit();
|
||||||
lovrTimerDestroy();
|
lovrTimerDestroy();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -13,6 +13,12 @@ void lovrThreadInit() {
|
||||||
|
|
||||||
void lovrThreadDeinit() {
|
void lovrThreadDeinit() {
|
||||||
if (!state.initialized) return;
|
if (!state.initialized) return;
|
||||||
|
const char* key;
|
||||||
|
map_iter_t iter = map_iter(&state.channels);
|
||||||
|
while ((key = map_next(&state.channels, &iter)) != NULL) {
|
||||||
|
Channel* channel = *(Channel**) map_get(&state.channels, key);
|
||||||
|
lovrRelease(channel);
|
||||||
|
}
|
||||||
map_deinit(&state.channels);
|
map_deinit(&state.channels);
|
||||||
state.initialized = false;
|
state.initialized = false;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue