diff options
Diffstat (limited to 'lobject.c')
-rw-r--r-- | lobject.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -382,7 +382,7 @@ size_t luaO_str2num (const char *s, TValue *o) { | |||
382 | } | 382 | } |
383 | 383 | ||
384 | 384 | ||
385 | int luaO_utf8esc (char *buff, unsigned long x) { | 385 | int luaO_utf8esc (char *buff, l_uint32 x) { |
386 | int n = 1; /* number of bytes put in buffer (backwards) */ | 386 | int n = 1; /* number of bytes put in buffer (backwards) */ |
387 | lua_assert(x <= 0x7FFFFFFFu); | 387 | lua_assert(x <= 0x7FFFFFFFu); |
388 | if (x < 0x80) /* ascii? */ | 388 | if (x < 0x80) /* ascii? */ |
@@ -637,7 +637,8 @@ const char *luaO_pushvfstring (lua_State *L, const char *fmt, va_list argp) { | |||
637 | } | 637 | } |
638 | case 'U': { /* an 'unsigned long' as a UTF-8 sequence */ | 638 | case 'U': { /* an 'unsigned long' as a UTF-8 sequence */ |
639 | char bf[UTF8BUFFSZ]; | 639 | char bf[UTF8BUFFSZ]; |
640 | int len = luaO_utf8esc(bf, va_arg(argp, unsigned long)); | 640 | unsigned long arg = va_arg(argp, unsigned long); |
641 | int len = luaO_utf8esc(bf, cast(l_uint32, arg)); | ||
641 | addstr2buff(&buff, bf + UTF8BUFFSZ - len, cast_uint(len)); | 642 | addstr2buff(&buff, bf + UTF8BUFFSZ - len, cast_uint(len)); |
642 | break; | 643 | break; |
643 | } | 644 | } |