mirror of
https://github.com/lunarmodules/luafilesystem.git
synced 2026-07-22 11:03:07 +00:00
Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f7eea62957 | ||
|
|
1b5073419f | ||
|
|
fe964e013d | ||
|
|
12d1692f14 |
4
Makefile
4
Makefile
@@ -18,8 +18,8 @@ test: lib
|
||||
LUA_CPATH=./src/?.so lua tests/test.lua
|
||||
|
||||
install:
|
||||
mkdir -p $(LUA_LIBDIR)
|
||||
cp src/lfs.so $(LUA_LIBDIR)
|
||||
mkdir -p $(DESTDIR)$(LUA_LIBDIR)
|
||||
cp src/lfs.so $(DESTDIR)$(LUA_LIBDIR)
|
||||
|
||||
clean:
|
||||
rm -f src/lfs.so $(OBJS)
|
||||
|
||||
16
src/lfs.c
16
src/lfs.c
@@ -186,9 +186,12 @@ static int get_dir (lua_State *L) {
|
||||
size_t size = LFS_MAXPATHLEN; /* initial buffer size */
|
||||
int result;
|
||||
while (1) {
|
||||
path = realloc(path, size);
|
||||
if (!path) /* failed to allocate */
|
||||
return pusherror(L, "get_dir realloc() failed");
|
||||
char* path2 = realloc(path, size);
|
||||
if (!path2) /* failed to allocate */ {
|
||||
result = pusherror(L, "get_dir realloc() failed");
|
||||
break;
|
||||
}
|
||||
path = path2;
|
||||
if (getcwd(path, size) != NULL) {
|
||||
/* success, push the path to the Lua stack */
|
||||
lua_pushstring(L, path);
|
||||
@@ -860,9 +863,12 @@ static int push_link_target(lua_State *L) {
|
||||
char *target = NULL;
|
||||
int tsize, size = 256; /* size = initial buffer capacity */
|
||||
while (1) {
|
||||
target = realloc(target, size);
|
||||
if (!target) /* failed to allocate */
|
||||
char* target2 = realloc(target, size);
|
||||
if (!target2) { /* failed to allocate */
|
||||
free(target);
|
||||
return 0;
|
||||
}
|
||||
target = target2;
|
||||
tsize = readlink(file, target, size);
|
||||
if (tsize < 0) { /* a readlink() error occurred */
|
||||
free(target);
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
LIBRARY lfs.dll
|
||||
VERSION 1.6
|
||||
VERSION 1.7
|
||||
EXPORTS
|
||||
luaopen_lfs
|
||||
|
||||
Reference in New Issue
Block a user