mirror of
https://github.com/Rockbox/rockbox.git
synced 2025-10-14 10:37:38 -04:00
lua update to 5.1.5
Modify Rocklua towards upstream 5.1.5 Clean up some of the Rocklua implementation Change-Id: Iac722e827899cf84f5ca004ef7ae7ddce5f7fbbe
This commit is contained in:
parent
de6618a271
commit
b69faf0bcc
15 changed files with 124 additions and 105 deletions
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
** $Id: lstrlib.c,v 1.132.1.4 2008/07/11 17:27:21 roberto Exp $
|
||||
** $Id: lstrlib.c,v 1.132.1.5 2010/05/14 15:34:19 roberto Exp $
|
||||
** Standard library for string operations and pattern-matching
|
||||
** See Copyright Notice in lua.h
|
||||
*/
|
||||
|
@ -754,6 +754,7 @@ static void addintlen (char *form) {
|
|||
|
||||
|
||||
static int str_format (lua_State *L) {
|
||||
int top = lua_gettop(L);
|
||||
int arg = 1;
|
||||
size_t sfl;
|
||||
const char *strfrmt = luaL_checklstring(L, arg, &sfl);
|
||||
|
@ -768,7 +769,8 @@ static int str_format (lua_State *L) {
|
|||
else { /* format item */
|
||||
char form[MAX_FORMAT]; /* to store the format (`%...') */
|
||||
char buff[MAX_ITEM]; /* to store the formatted item */
|
||||
arg++;
|
||||
if (++arg > top)
|
||||
luaL_argerror(L, arg, "no value");
|
||||
strfrmt = scanformat(L, strfrmt, form);
|
||||
switch (*strfrmt++) {
|
||||
case 'c': {
|
||||
|
@ -785,11 +787,13 @@ static int str_format (lua_State *L) {
|
|||
snprintf(buff, MAX_ITEM, form, (unsigned LUA_INTFRM_T)luaL_checknumber(L, arg));
|
||||
break;
|
||||
}
|
||||
#if 0 /* ROCKLUA NO FLOATING POINT */
|
||||
case 'e': case 'E': case 'f':
|
||||
case 'g': case 'G': {
|
||||
snprintf(buff, MAX_ITEM, form, (double)luaL_checknumber(L, arg));
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
case 'q': {
|
||||
addquoted(L, &b, arg);
|
||||
continue; /* skip the 'addsize' at the end */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue