Merge 0.10->trunk
[prosody.git] / util-src / encodings.c
index 2eaad2c81145496ef71737d38fd7fe9e7646e5be..35677095181fbf990c2c56a61527442e9009bcbf 100644 (file)
@@ -21,8 +21,8 @@
 #include "lua.h"
 #include "lauxlib.h"
 
-#if (LUA_VERSION_NUM == 502)
-#define luaL_register(L, N, R) luaL_setfuncs(L, R, 0)
+#if (LUA_VERSION_NUM == 501)
+#define luaL_setfuncs(L, R, N) luaL_register(L, NULL, R)
 #endif
 
 /***************** BASE64 *****************/
@@ -476,14 +476,15 @@ static int Lidna_to_unicode(lua_State* L) {       /** idna.to_unicode(s) */
 static int Lidna_to_ascii(lua_State* L) {      /** idna.to_ascii(s) */
        size_t len;
        const char* s = check_utf8(L, 1, &len);
+       char* output = NULL;
+       int ret;
 
        if(s == NULL || len != strlen(s)) {
                lua_pushnil(L);
                return 1; /* TODO return error message */
        }
 
-       char* output = NULL;
-       int ret = idna_to_ascii_8z(s, &output, IDNA_USE_STD3_ASCII_RULES);
+       ret = idna_to_ascii_8z(s, &output, IDNA_USE_STD3_ASCII_RULES);
 
        if(ret == IDNA_SUCCESS) {
                lua_pushstring(L, output);
@@ -529,19 +530,19 @@ LUALIB_API int luaopen_util_encodings(lua_State* L) {
        lua_newtable(L);
 
        lua_newtable(L);
-       luaL_register(L, NULL, Reg_base64);
+       luaL_setfuncs(L, Reg_base64, 0);
        lua_setfield(L, -2, "base64");
 
        lua_newtable(L);
-       luaL_register(L, NULL, Reg_stringprep);
+       luaL_setfuncs(L, Reg_stringprep, 0);
        lua_setfield(L, -2, "stringprep");
 
        lua_newtable(L);
-       luaL_register(L, NULL, Reg_idna);
+       luaL_setfuncs(L, Reg_idna, 0);
        lua_setfield(L, -2, "idna");
 
        lua_newtable(L);
-       luaL_register(L, NULL, Reg_utf8);
+       luaL_setfuncs(L, Reg_utf8, 0);
        lua_setfield(L, -2, "utf8");
 
        lua_pushliteral(L, "-3.14");