diff options
Diffstat (limited to 'lstrlib.c')
-rw-r--r-- | lstrlib.c | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -1271,8 +1271,10 @@ static int str_format (lua_State *L) { | |||
1271 | } | 1271 | } |
1272 | case 'p': { | 1272 | case 'p': { |
1273 | const void *p = lua_topointer(L, arg); | 1273 | const void *p = lua_topointer(L, arg); |
1274 | if (p == NULL) | 1274 | if (p == NULL) { /* avoid calling 'printf' with argument NULL */ |
1275 | p = "(null)"; /* NULL not a valid parameter in ISO C 'printf' */ | 1275 | p = "(null)"; /* result */ |
1276 | form[strlen(form) - 1] = 's'; /* format it as a string */ | ||
1277 | } | ||
1276 | nb = l_sprintf(buff, maxitem, form, p); | 1278 | nb = l_sprintf(buff, maxitem, form, p); |
1277 | break; | 1279 | break; |
1278 | } | 1280 | } |