Revert r21863 partly: fixes Lua
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21883 a1c6a512-1295-4272-9138-f99709370657
diff --git a/apps/plugins/lua/lobject.c b/apps/plugins/lua/lobject.c
index 7f73114..62ad8e9 100644
--- a/apps/plugins/lua/lobject.c
+++ b/apps/plugins/lua/lobject.c
@@ -181,7 +181,8 @@
void luaO_chunkid (char *out, const char *source, size_t bufflen) {
if (*source == '=') {
- strlcpy(out, source+1, bufflen); /* remove first char */
+ strncpy(out, source+1, bufflen); /* remove first char */
+ out[bufflen-1] = '\0'; /* ensures null termination */
}
else { /* out = "source", or "...source" */
if (*source == '@') {
diff --git a/apps/plugins/lua/lstrlib.c b/apps/plugins/lua/lstrlib.c
index 4d58280..3d61036 100644
--- a/apps/plugins/lua/lstrlib.c
+++ b/apps/plugins/lua/lstrlib.c
@@ -737,7 +737,9 @@
if (isdigit(uchar(*p)))
luaL_error(L, "invalid format (width or precision too long)");
*(form++) = '%';
- strlcpy(form, strfrmt, p - strfrmt + 1);
+ strncpy(form, strfrmt, p - strfrmt + 1);
+ form += p - strfrmt + 1;
+ *form = '\0';
return p;
}
diff --git a/apps/plugins/lua/rockconf.h b/apps/plugins/lua/rockconf.h
index 02bd0e7..92c0f8c 100644
--- a/apps/plugins/lua/rockconf.h
+++ b/apps/plugins/lua/rockconf.h
@@ -63,7 +63,6 @@
#define strchr rb->strchr
#define strcmp rb->strcmp
#define strcpy rb->strcpy
-#define strlcpy rb->strlcpy
#define strlen rb->strlen
#endif /* _ROCKCONF_H_ */