@@ -61,12 +61,15 @@ var SyscallsLibrary = {
6161 { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_size , 'stat.size' , 'i64' ) } } } ;
6262 { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_blksize , '4096' , 'i32' ) } } } ;
6363 { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_blocks , 'stat.blocks' , 'i32' ) } } } ;
64- { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_atim . tv_sec , 'Math.floor(stat.atime.getTime() / 1000)' , 'i64' ) } } } ;
65- { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_atim . tv_nsec , '0' , SIZE_TYPE ) } } } ;
66- { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_mtim . tv_sec , 'Math.floor(stat.mtime.getTime() / 1000)' , 'i64' ) } } } ;
67- { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_mtim . tv_nsec , '0' , SIZE_TYPE ) } } } ;
68- { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_ctim . tv_sec , 'Math.floor(stat.ctime.getTime() / 1000)' , 'i64' ) } } } ;
69- { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_ctim . tv_nsec , '0' , SIZE_TYPE ) } } } ;
64+ var atime = stat . atime . getTime ( ) ;
65+ var mtime = stat . mtime . getTime ( ) ;
66+ var ctime = stat . ctime . getTime ( ) ;
67+ { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_atim . tv_sec , 'Math.floor(atime / 1000)' , 'i64' ) } } } ;
68+ { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_atim . tv_nsec , '(atime % 1000) * 1000' , SIZE_TYPE ) } } } ;
69+ { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_mtim . tv_sec , 'Math.floor(mtime / 1000)' , 'i64' ) } } } ;
70+ { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_mtim . tv_nsec , '(mtime % 1000) * 1000' , SIZE_TYPE ) } } } ;
71+ { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_ctim . tv_sec , 'Math.floor(ctime / 1000)' , 'i64' ) } } } ;
72+ { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_ctim . tv_nsec , '(ctime % 1000) * 1000' , SIZE_TYPE ) } } } ;
7073 { { { makeSetValue ( 'buf' , C_STRUCTS . stat . st_ino , 'stat.ino' , 'i64' ) } } } ;
7174 return 0 ;
7275 } ,
0 commit comments