Fix time related functions
This commit is contained in:
@@ -98,7 +98,7 @@ void FileNode_AddChild(FileNode fileNode, FileNode fileNodeChild) {
|
|||||||
void FileNode_SetStatusRec(FileNode fileNode, FileStatus status) {
|
void FileNode_SetStatusRec(FileNode fileNode, FileStatus status) {
|
||||||
FileNode fileNodeChild;
|
FileNode fileNodeChild;
|
||||||
if (status == FileStatus_Deleted && fileNode->status != status) {
|
if (status == FileStatus_Deleted && fileNode->status != status) {
|
||||||
fileNode->fileTime = Time_GetTime();
|
fileNode->fileTime = Time_GetCurrentTime();
|
||||||
fileNode->flags |= FileFlag_HasTime;
|
fileNode->flags |= FileFlag_HasTime;
|
||||||
}
|
}
|
||||||
fileNode->status = status;
|
fileNode->status = status;
|
||||||
@@ -293,7 +293,7 @@ FileNode FileNode_LoadNode(FILE *file) {
|
|||||||
if (fileNode->flags & FileFlag_HasTime) {
|
if (fileNode->flags & FileFlag_HasTime) {
|
||||||
fread((void *)&fileNode->fileTime, sizeof(fileNode->fileTime), 1, file);
|
fread((void *)&fileNode->fileTime, sizeof(fileNode->fileTime), 1, file);
|
||||||
if (fileNode->fileTime < 0) {
|
if (fileNode->fileTime < 0) {
|
||||||
fileNode->fileTime = Time_GetTime();
|
fileNode->fileTime = Time_GetCurrentTime();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -499,7 +499,7 @@ FileNode FileNode_Refresh(FileNode fileNode, char *filePath) {
|
|||||||
fileNode->status = FileStatus_Modified;
|
fileNode->status = FileStatus_Modified;
|
||||||
fileNode->fileTime = fileTime;
|
fileNode->fileTime = fileTime;
|
||||||
if (fileNode->fileTime < 0) {
|
if (fileNode->fileTime < 0) {
|
||||||
fileNode->fileTime = Time_GetTime();
|
fileNode->fileTime = Time_GetCurrentTime();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -539,7 +539,7 @@ FileNode FileNode_Refresh(FileNode fileNode, char *filePath) {
|
|||||||
fileNode->status = FileStatus_Modified;
|
fileNode->status = FileStatus_Modified;
|
||||||
fileNode->fileTime = fileTime;
|
fileNode->fileTime = fileTime;
|
||||||
if (fileNode->fileTime < 0) {
|
if (fileNode->fileTime < 0) {
|
||||||
fileNode->fileTime = Time_GetTime();
|
fileNode->fileTime = Time_GetCurrentTime();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (fileNode->status == FileStatus_Modified) {
|
if (fileNode->status == FileStatus_Modified) {
|
||||||
|
|||||||
@@ -6,8 +6,18 @@
|
|||||||
|
|
||||||
typedef long long FileTime;
|
typedef long long FileTime;
|
||||||
|
|
||||||
|
/////////////////////////////
|
||||||
|
// FileTime_Get
|
||||||
|
//
|
||||||
|
// Gets the current time in POSIX.
|
||||||
FileTime FileTime_Get(char *filename);
|
FileTime FileTime_Get(char *filename);
|
||||||
|
|
||||||
|
/////////////////////////////
|
||||||
|
// FileTime_Set
|
||||||
|
//
|
||||||
|
// Sets the current time in POSIX.
|
||||||
void FileTime_Set(char *filename, FileTime t);
|
void FileTime_Set(char *filename, FileTime t);
|
||||||
|
|
||||||
void FileTime_Print(FileTime t);
|
void FileTime_Print(FileTime t);
|
||||||
|
|
||||||
///////////////////////////////////////////////
|
///////////////////////////////////////////////
|
||||||
|
|||||||
13
src/util.c
13
src/util.c
@@ -1,6 +1,7 @@
|
|||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
#include <time.h>
|
||||||
|
|
||||||
#include "util.h"
|
#include "util.h"
|
||||||
|
|
||||||
@@ -22,7 +23,7 @@ char *String_Copy(char *str) {
|
|||||||
/////////////////////////////
|
/////////////////////////////
|
||||||
// Time_GetTime
|
// Time_GetTime
|
||||||
//
|
//
|
||||||
// Gets the current time in usecs. WIN32 version.
|
// Gets the time in usecs. WIN32 version.
|
||||||
long long Time_GetTime() {
|
long long Time_GetTime() {
|
||||||
LARGE_INTEGER freq;
|
LARGE_INTEGER freq;
|
||||||
LARGE_INTEGER tim;
|
LARGE_INTEGER tim;
|
||||||
@@ -58,7 +59,7 @@ void Time_Pause(int pausa) {
|
|||||||
/////////////////////////////
|
/////////////////////////////
|
||||||
// Time_GetTime
|
// Time_GetTime
|
||||||
//
|
//
|
||||||
// Gets the current time in usecs. UNIX version.
|
// Gets the time in usecs. UNIX version.
|
||||||
long long Time_GetTime() {
|
long long Time_GetTime() {
|
||||||
struct timeval t;
|
struct timeval t;
|
||||||
long long usecs;
|
long long usecs;
|
||||||
@@ -79,6 +80,14 @@ void Time_Pause(int pausa) {
|
|||||||
}
|
}
|
||||||
#endif // if WIN32
|
#endif // if WIN32
|
||||||
|
|
||||||
|
/////////////////////////////
|
||||||
|
// Time_GetTime
|
||||||
|
//
|
||||||
|
// Gets the current time in POSIX.
|
||||||
|
long long Time_GetCurrentTime() {
|
||||||
|
time_t t = time(0);
|
||||||
|
return (long long)t;
|
||||||
|
}
|
||||||
|
|
||||||
int printff(char *fmt, ...) {
|
int printff(char *fmt, ...) {
|
||||||
va_list ap;
|
va_list ap;
|
||||||
|
|||||||
@@ -19,6 +19,12 @@ long long Time_GetTime();
|
|||||||
// Pauses the execution for t usecs.
|
// Pauses the execution for t usecs.
|
||||||
void Time_Pause(int pausa);
|
void Time_Pause(int pausa);
|
||||||
|
|
||||||
|
/////////////////////////////
|
||||||
|
// Time_GetTime
|
||||||
|
//
|
||||||
|
// Gets the current time in POSIX.
|
||||||
|
long long Time_GetCurrentTime();
|
||||||
|
|
||||||
int printff(char *fmt, ...);
|
int printff(char *fmt, ...);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user