diff options
author | Mika Havela <mika.havela@gmail.com> | 2008-05-06 15:06:27 +0000 |
---|---|---|
committer | Mika Havela <mika.havela@gmail.com> | 2008-05-06 15:06:27 +0000 |
commit | e871208433b3be5e2261292fb0ba041a2a7e5418 (patch) | |
tree | fece6f7dde5b005d25e6a04b947f836b14b71fa2 /lib | |
parent | 3e23802daea8ad7c6d92c8549fba882be11f671c (diff) | |
download | acf-core-e871208433b3be5e2261292fb0ba041a2a7e5418.tar.bz2 acf-core-e871208433b3be5e2261292fb0ba041a2a7e5418.tar.xz |
If no details for the file exists, then things got broken. This is now fixed.
git-svn-id: svn://svn.alpinelinux.org/acf/core/trunk@1107 ab2d0c66-481e-0410-8bed-d214d4d58bed
Diffstat (limited to 'lib')
-rw-r--r-- | lib/fs.lua | 26 |
1 files changed, 14 insertions, 12 deletions
@@ -132,18 +132,20 @@ end -- This function does almost the same as posix.stat, but instead it writes the output human readable. function stat ( path ) - local filedetails = posix.stat(path) - filedetails["ctime"]=os.date("%c", filedetails["ctime"]) - filedetails["mtime"]=os.date("%c", filedetails["mtime"]) - filedetails["path"]=path - if ( filedetails["size"] > 1073741824 ) then - filedetails["size"]=((filedetails["size"]/1073741824) - (filedetails["size"]/1073741824%0.1)) .. "G" - elseif ( filedetails["size"] > 1048576 ) then - filedetails["size"]=((filedetails["size"]/1048576) - (filedetails["size"]/1048576%0.1)) .. "M" - elseif ( filedetails["size"] > 1024 ) then - filedetails["size"]=((filedetails["size"]/1024) - (filedetails["size"]/1024%0.1)) .. "k" - else - filedetails["size"]=filedetails["size"] + local filedetails = posix.stat(path) + if (filedetails) then + filedetails["ctime"]=os.date("%c", filedetails["ctime"]) + filedetails["mtime"]=os.date("%c", filedetails["mtime"]) + filedetails["path"]=path + if ( filedetails["size"] > 1073741824 ) then + filedetails["size"]=((filedetails["size"]/1073741824) - (filedetails["size"]/1073741824%0.1)) .. "G" + elseif ( filedetails["size"] > 1048576 ) then + filedetails["size"]=((filedetails["size"]/1048576) - (filedetails["size"]/1048576%0.1)) .. "M" + elseif ( filedetails["size"] > 1024 ) then + filedetails["size"]=((filedetails["size"]/1024) - (filedetails["size"]/1024%0.1)) .. "k" + else + filedetails["size"]=filedetails["size"] + end end return filedetails end |