X-Git-Url: https://git.enpas.org/?a=blobdiff_plain;f=util-src%2Fencodings.c;h=5147512f82fd210b9285c0db73259363e3be5ee8;hb=40f6eff7c498e233fead90192b54b7101e54f615;hp=65d7d501a43c610037b4633236a244c0c859f8ef;hpb=93be7feb6d88d80b4eef68306d71d75bfd8fa904;p=prosody.git diff --git a/util-src/encodings.c b/util-src/encodings.c index 65d7d501..5147512f 100644 --- a/util-src/encodings.c +++ b/util-src/encodings.c @@ -108,7 +108,6 @@ static int Lbase64_decode(lua_State *L) /** decode(s) */ break; } } - return 0; } static const luaL_Reg Reg_base64[] = @@ -125,9 +124,14 @@ static const luaL_Reg Reg_base64[] = static int stringprep_prep(lua_State *L, const Stringprep_profile *profile) { size_t len; - const char *s = luaL_checklstring(L, 1, &len); + const char *s; char string[1024]; int ret; + if(!lua_isstring(L, 1)) { + lua_pushnil(L); + return 1; + } + s = lua_tolstring(L, 1, &len); if (len >= 1024) { lua_pushnil(L); return 1; // TODO return error message @@ -163,6 +167,7 @@ static const luaL_Reg Reg_stringprep[] = /***************** IDNA *****************/ #include +#include static int Lidna_to_ascii(lua_State *L) /** idna.to_ascii(s) */ {