util.encodings: Don't throw an error but return nil when passed nil or a non-string value
--- a/util-src/encodings.c Tue Sep 29 14:22:02 2009 +0100
+++ b/util-src/encodings.c Tue Sep 29 19:05:32 2009 +0100
@@ -124,8 +124,12 @@
static int stringprep_prep(lua_State *L, const Stringprep_profile *profile)
{
+ if(!lua_isstring(L, 1)) {
+ lua_pushnil(L);
+ return 1;
+ }
size_t len;
- const char *s = luaL_checklstring(L, 1, &len);
+ const char *s = lua_tolstring(L, 1, &len);
char string[1024];
int ret;
if (len >= 1024) {