|
|
| version 1.51, 2007/11/03 00:00:19 | version 1.52, 2011/01/15 18:04:42 |
|---|---|
| Line 398 static int statflag_writepath(STFLAGH sf | Line 398 static int statflag_writepath(STFLAGH sf |
| return(statflag_write(sfh, &sp, sizeof(sp))); | return(statflag_write(sfh, &sp, sizeof(sp))); |
| } | } |
| static int statflag_checkpath(STFLAGH sfh, const OEMCHAR *devname) { | static int statflag_checkpath(STFLAGH sfh, const OEMCHAR *dvname) { |
| int ret; | int ret; |
| STATPATH sp; | STATPATH sp; |
| FILEH fh; | FILEH fh; |
| OEMCHAR buf[256]; | OEMCHAR buf[256]; |
| DOSDATE date; | DOSDATE dosdate; |
| DOSTIME time; | DOSTIME dostime; |
| ret = statflag_read(sfh, &sp, sizeof(sp)); | ret = statflag_read(sfh, &sp, sizeof(sp)); |
| if (sp.path[0]) { | if (sp.path[0]) { |
| fh = file_open_rb(sp.path); | fh = file_open_rb(sp.path); |
| if (fh != FILEH_INVALID) { | if (fh != FILEH_INVALID) { |
| file_getdatetime(fh, &date, &time); | file_getdatetime(fh, &dosdate, &dostime); |
| file_close(fh); | file_close(fh); |
| if ((memcmp(&sp.date, &date, sizeof(date))) || | if ((memcmp(&sp.date, &dosdate, sizeof(dosdate))) || |
| (memcmp(&sp.time, &time, sizeof(time)))) { | (memcmp(&sp.time, &dostime, sizeof(dostime)))) { |
| ret |= STATFLAG_DISKCHG; | ret |= STATFLAG_DISKCHG; |
| OEMSPRINTF(buf, str_updated, devname); | OEMSPRINTF(buf, str_updated, dvname); |
| statflag_seterr(sfh, buf); | statflag_seterr(sfh, buf); |
| } | } |
| } | } |
| else { | else { |
| ret |= STATFLAG_DISKCHG; | ret |= STATFLAG_DISKCHG; |
| OEMSPRINTF(buf, str_notfound, devname); | OEMSPRINTF(buf, str_notfound, dvname); |
| statflag_seterr(sfh, buf); | statflag_seterr(sfh, buf); |
| } | } |
| } | } |