Fix timing issues on FileNode_Build.
This commit is contained in:
@@ -496,23 +496,19 @@ FileNode FileNode_Refresh(FileNode fileNode, char *filePath) {
|
|||||||
FileNode fileNodeChild;
|
FileNode fileNodeChild;
|
||||||
|
|
||||||
// Check directory data
|
// Check directory data
|
||||||
if (fileNode->status == FileStatus_Deleted) {
|
|
||||||
fileNode->status = FileStatus_Modified;
|
|
||||||
fileNode->fileTime = Time_GetCurrentTime();
|
|
||||||
}
|
|
||||||
if (!(fileNode->flags & FileFlag_Directory)) {
|
if (!(fileNode->flags & FileFlag_Directory)) {
|
||||||
fileNode->status = FileStatus_Modified;
|
fileNode->status = FileStatus_Modified;
|
||||||
fileNode->flags |= FileFlag_Directory;
|
fileNode->flags |= FileFlag_Directory;
|
||||||
fileNode->flags &= ~FileFlag_Normal;
|
fileNode->flags &= ~FileFlag_Normal;
|
||||||
}
|
}
|
||||||
fileTime = FileTime_Get(filePath);
|
fileTime = FileTime_Get(filePath);
|
||||||
|
if (fileNode->status == FileStatus_Deleted) {
|
||||||
|
fileNode->status = FileStatus_Modified;
|
||||||
|
fileNode->fileTime = fileTime;
|
||||||
|
}
|
||||||
if (fileTime != fileNode->fileTime) {
|
if (fileTime != fileNode->fileTime) {
|
||||||
fileNode->status = FileStatus_Modified;
|
fileNode->status = FileStatus_Modified;
|
||||||
if (fileTime < 0 || fileNode->fileTime > fileTime) {
|
fileNode->fileTime = fileTime;
|
||||||
fileNode->fileTime = Time_GetCurrentTime();
|
|
||||||
}else{
|
|
||||||
fileNode->fileTime = fileTime;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Mark childs for review
|
// Mark childs for review
|
||||||
@@ -536,10 +532,6 @@ FileNode FileNode_Refresh(FileNode fileNode, char *filePath) {
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// Comprar datos de los ficheros
|
// Comprar datos de los ficheros
|
||||||
if (fileNode->status == FileStatus_Deleted) {
|
|
||||||
fileNode->status = FileStatus_Modified;
|
|
||||||
fileNode->fileTime = Time_GetCurrentTime();
|
|
||||||
}
|
|
||||||
if (!(fileNode->flags & FileFlag_Normal)) {
|
if (!(fileNode->flags & FileFlag_Normal)) {
|
||||||
fileNode->status = FileStatus_Modified;
|
fileNode->status = FileStatus_Modified;
|
||||||
fileNode->flags |= FileFlag_Normal;
|
fileNode->flags |= FileFlag_Normal;
|
||||||
@@ -550,13 +542,13 @@ FileNode FileNode_Refresh(FileNode fileNode, char *filePath) {
|
|||||||
fileNode->status = FileStatus_Modified;
|
fileNode->status = FileStatus_Modified;
|
||||||
fileNode->size = size;
|
fileNode->size = size;
|
||||||
}
|
}
|
||||||
|
if (fileNode->status == FileStatus_Deleted) {
|
||||||
|
fileNode->status = FileStatus_Modified;
|
||||||
|
fileNode->fileTime = fileTime;
|
||||||
|
}
|
||||||
if (fileTime != fileNode->fileTime) {
|
if (fileTime != fileNode->fileTime) {
|
||||||
fileNode->status = FileStatus_Modified;
|
fileNode->status = FileStatus_Modified;
|
||||||
if (fileTime < 0 || fileNode->fileTime > fileTime) {
|
fileNode->fileTime = fileTime;
|
||||||
fileNode->fileTime = Time_GetCurrentTime();
|
|
||||||
}else{
|
|
||||||
fileNode->fileTime = fileTime;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (fileNode->status == FileStatus_Modified) {
|
if (fileNode->status == FileStatus_Modified) {
|
||||||
fileNode->flags &= ~FileFlag_HasCRC;
|
fileNode->flags &= ~FileFlag_HasCRC;
|
||||||
|
|||||||
@@ -18,16 +18,10 @@ echo:Uno> %testDir%.A\Uno.txt
|
|||||||
echo:Dos> %testDir%.A\Dos.txt
|
echo:Dos> %testDir%.A\Dos.txt
|
||||||
..\filesync.exe sync %testDir%.A %testDir%.B >> %testDir%.txt
|
..\filesync.exe sync %testDir%.A %testDir%.B >> %testDir%.txt
|
||||||
|
|
||||||
..\filesync.exe read %testDir%.A/nodesFile.fs >> %testDir%.txt
|
|
||||||
..\filesync.exe read %testDir%.B/nodesFile.fs >> %testDir%.txt
|
|
||||||
|
|
||||||
md %testDir%.A\dirUno
|
md %testDir%.A\dirUno
|
||||||
move %testDir%.A\Uno.txt %testDir%.A\dirUno\Uno.txt >NUL
|
move %testDir%.A\Uno.txt %testDir%.A\dirUno\Uno.txt >NUL
|
||||||
..\filesync.exe sync %testDir%.A %testDir%.B >> %testDir%.txt
|
..\filesync.exe sync %testDir%.A %testDir%.B >> %testDir%.txt
|
||||||
|
|
||||||
..\filesync.exe read %testDir%.A/nodesFile.fs >> %testDir%.txt
|
|
||||||
..\filesync.exe read %testDir%.B/nodesFile.fs >> %testDir%.txt
|
|
||||||
|
|
||||||
ping 127.0.0.1 -n 2 > nul
|
ping 127.0.0.1 -n 2 > nul
|
||||||
|
|
||||||
move %testDir%.A\dirUno\Uno.txt %testDir%.A\Uno.txt >NUL
|
move %testDir%.A\dirUno\Uno.txt %testDir%.A\Uno.txt >NUL
|
||||||
|
|||||||
Reference in New Issue
Block a user