From b1b8988e7e216a5d6838fc81baa7dc0e88fa57a1 Mon Sep 17 00:00:00 2001 From: Lucas Schwiderski Date: Mon, 23 May 2022 16:27:10 +0200 Subject: [PATCH] fix(volume): Fix volume library This also makes it possible to load it independently. --- src/lua_libpulse_glib/pulseaudio.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/lua_libpulse_glib/pulseaudio.c b/src/lua_libpulse_glib/pulseaudio.c index f4b9ea1..6d6f266 100644 --- a/src/lua_libpulse_glib/pulseaudio.c +++ b/src/lua_libpulse_glib/pulseaudio.c @@ -167,9 +167,27 @@ LUA_MOD_EXPORT int luaopen_lua_libpulse_glib(lua_State* L) { lua_settable(L, -3); lua_rawset(L, LUA_REGISTRYINDEX); - createlib_volume(L); createlib_context(L); createlib_proplist(L); createlib_pulseaudio(L); return 1; } + + +LUA_MOD_EXPORT int luaopen_lua_libpulse_glib_volume(lua_State* L) { + luaL_newmetatable(L, LUA_PA_VOLUME); + + lua_createtable(L, 0, sizeof volume_f / sizeof volume_f[0]); + luaL_setfuncs(L, volume_f, 0); + lua_setfield(L, -2, "__index"); + + luaL_setfuncs(L, volume_mt, 0); + +#if LUA_VERSION_NUM <= 501 + luaL_register(L, LUA_PA_VOLUME, volume_lib); +#else + luaL_newlib(L, volume_lib); +#endif + return 1; +} +