summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaurus Cuelenaere <mcuelenaere@gmail.com>2009-07-15 15:16:55 +0000
committerMaurus Cuelenaere <mcuelenaere@gmail.com>2009-07-15 15:16:55 +0000
commitbe54b7f6a2312a007814284b3ae48ed5da892704 (patch)
tree51caa35b57958a47e631b181529ef9c5f9226476
parent0e5942ffea44b3f95c0c3674882acf8c6f200dc2 (diff)
downloadrockbox-be54b7f6a2312a007814284b3ae48ed5da892704.tar.gz
rockbox-be54b7f6a2312a007814284b3ae48ed5da892704.zip
Revert r21863 partly: fixes Lua
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21883 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--apps/plugins/lua/lobject.c3
-rw-r--r--apps/plugins/lua/lstrlib.c4
-rw-r--r--apps/plugins/lua/rockconf.h1
3 files changed, 5 insertions, 3 deletions
diff --git a/apps/plugins/lua/lobject.c b/apps/plugins/lua/lobject.c
index 7f73114303..62ad8e9359 100644
--- a/apps/plugins/lua/lobject.c
+++ b/apps/plugins/lua/lobject.c
@@ -181,7 +181,8 @@ const char *luaO_pushfstring (lua_State *L, const char *fmt, ...) {
181 181
182void luaO_chunkid (char *out, const char *source, size_t bufflen) { 182void luaO_chunkid (char *out, const char *source, size_t bufflen) {
183 if (*source == '=') { 183 if (*source == '=') {
184 strlcpy(out, source+1, bufflen); /* remove first char */ 184 strncpy(out, source+1, bufflen); /* remove first char */
185 out[bufflen-1] = '\0'; /* ensures null termination */
185 } 186 }
186 else { /* out = "source", or "...source" */ 187 else { /* out = "source", or "...source" */
187 if (*source == '@') { 188 if (*source == '@') {
diff --git a/apps/plugins/lua/lstrlib.c b/apps/plugins/lua/lstrlib.c
index 4d58280ba8..3d6103692f 100644
--- a/apps/plugins/lua/lstrlib.c
+++ b/apps/plugins/lua/lstrlib.c
@@ -737,7 +737,9 @@ static const char *scanformat (lua_State *L, const char *strfrmt, char *form) {
737 if (isdigit(uchar(*p))) 737 if (isdigit(uchar(*p)))
738 luaL_error(L, "invalid format (width or precision too long)"); 738 luaL_error(L, "invalid format (width or precision too long)");
739 *(form++) = '%'; 739 *(form++) = '%';
740 strlcpy(form, strfrmt, p - strfrmt + 1); 740 strncpy(form, strfrmt, p - strfrmt + 1);
741 form += p - strfrmt + 1;
742 *form = '\0';
741 return p; 743 return p;
742} 744}
743 745
diff --git a/apps/plugins/lua/rockconf.h b/apps/plugins/lua/rockconf.h
index 02bd0e76d1..92c0f8cac8 100644
--- a/apps/plugins/lua/rockconf.h
+++ b/apps/plugins/lua/rockconf.h
@@ -63,7 +63,6 @@ long pow(long x, long y);
63#define strchr rb->strchr 63#define strchr rb->strchr
64#define strcmp rb->strcmp 64#define strcmp rb->strcmp
65#define strcpy rb->strcpy 65#define strcpy rb->strcpy
66#define strlcpy rb->strlcpy
67#define strlen rb->strlen 66#define strlen rb->strlen
68 67
69#endif /* _ROCKCONF_H_ */ 68#endif /* _ROCKCONF_H_ */