mirror of
https://github.com/reactos/reactos.git
synced 2025-07-24 15:13:36 +00:00
Added a time conversion function and fixed a little bug
(fat stores only 2 second steps) svn path=/trunk/; revision=882
This commit is contained in:
parent
98a6084104
commit
1b0b103796
2 changed files with 34 additions and 2 deletions
|
@ -32,7 +32,7 @@ BOOL FsdDosDateTimeToFileTime(WORD wDosDate,WORD wDosTime, TIME *FileTime)
|
|||
return FALSE;
|
||||
|
||||
TimeFields.Milliseconds = 0;
|
||||
TimeFields.Second = pdtime->Second;
|
||||
TimeFields.Second = pdtime->Second * 2;
|
||||
TimeFields.Minute = pdtime->Minute;
|
||||
TimeFields.Hour = pdtime->Hour;
|
||||
|
||||
|
@ -46,6 +46,37 @@ BOOL FsdDosDateTimeToFileTime(WORD wDosDate,WORD wDosTime, TIME *FileTime)
|
|||
}
|
||||
|
||||
|
||||
// function like FileTimeToDosDateTime
|
||||
BOOL FsdFileTimeToDosDateTime(TIME *FileTime,WORD *pwDosDate,WORD *pwDosTime)
|
||||
{
|
||||
PDOSTIME pdtime = (PDOSTIME)pwDosTime;
|
||||
PDOSDATE pddate = (PDOSDATE)pwDosDate;
|
||||
TIME_FIELDS TimeFields;
|
||||
|
||||
if (FileTime == NULL)
|
||||
return FALSE;
|
||||
|
||||
RtlTimeToTimeFields((PLARGE_INTEGER)FileTime, &TimeFields);
|
||||
|
||||
if (pdtime)
|
||||
{
|
||||
pdtime->Second = TimeFields.Second / 2;
|
||||
pdtime->Minute = TimeFields.Minute;
|
||||
pdtime->Hour = TimeFields.Hour;
|
||||
}
|
||||
|
||||
if (pddate)
|
||||
{
|
||||
pddate->Day = TimeFields.Day;
|
||||
pddate->Month = TimeFields.Month;
|
||||
pddate->Year = TimeFields.Year - 1980;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
|
||||
unsigned long vfat_wstrlen(PWSTR s)
|
||||
{
|
||||
WCHAR c=' ';
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $Id: vfat.h,v 1.15 1999/12/11 21:14:49 dwelch Exp $ */
|
||||
/* $Id: vfat.h,v 1.16 1999/12/16 23:08:17 ekohl Exp $ */
|
||||
|
||||
struct _BootSector {
|
||||
unsigned char magic0, res0, magic1;
|
||||
|
@ -171,6 +171,7 @@ BOOLEAN VFATWriteSectors(IN PDEVICE_OBJECT pDeviceObject,
|
|||
|
||||
//internal functions in dir.c :
|
||||
BOOL FsdDosDateTimeToFileTime(WORD wDosDate,WORD wDosTime, TIME *FileTime);
|
||||
BOOL FsdFileTimeToDosDateTime(TIME *FileTime,WORD *pwDosDate,WORD *pwDosTime);
|
||||
|
||||
//internal functions in iface.c :
|
||||
NTSTATUS FindFile(PDEVICE_EXTENSION DeviceExt, PVFATFCB Fcb,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue