Add 'readonly' field to love.filesystem.getInfo's returned table

This commit is contained in:
Alex Szpakowski
2020-12-31 00:06:41 -04:00
parent 9e9fa71589
commit f61a650a87
3 changed files with 5 additions and 0 deletions
+1
View File
@@ -96,6 +96,7 @@ public:
int64 size;
int64 modtime;
FileType type;
bool readonly;
};
static love::Type type;
@@ -720,6 +720,7 @@ bool Filesystem::getInfo(const char *filepath, Info &info) const
info.size = (int64) stat.filesize;
info.modtime = (int64) stat.modtime;
info.readonly = stat.readonly != 0;
if (stat.filetype == PHYSFS_FILETYPE_REGULAR)
info.type = FILETYPE_FILE;
@@ -485,6 +485,9 @@ int w_getInfo(lua_State *L)
lua_pushstring(L, typestr);
lua_setfield(L, -2, "type");
luax_pushboolean(L, info.readonly);
lua_setfield(L, -2, "readonly");
// Lua numbers (doubles) can't fit the full range of 64 bit ints.
info.size = std::min<int64>(info.size, 0x20000000000000LL);
if (info.size >= 0)