mirror of
https://github.com/raysan5/raylib.git
synced 2026-04-27 09:07:25 -04:00
REVIEWED: FileMove(), additional security checks
This commit is contained in:
@ -2283,7 +2283,10 @@ int FileMove(const char *srcPath, const char *dstPath)
|
|||||||
|
|
||||||
if (FileExists(srcPath))
|
if (FileExists(srcPath))
|
||||||
{
|
{
|
||||||
if (FileCopy(srcPath, dstPath)) result = FileRemove(srcPath);
|
FileCopy(srcPath, dstPath);
|
||||||
|
|
||||||
|
// Make sure file has been correctly copied before removing
|
||||||
|
if (FileExists(dstPath) && (GetFileLength(srcPath) == GetFileLength(dstPath))) result = FileRemove(srcPath);
|
||||||
else TRACELOG(LOG_WARNING, "FILEIO: [%s] Failed to copy file to [%s]", srcPath, dstPath);
|
else TRACELOG(LOG_WARNING, "FILEIO: [%s] Failed to copy file to [%s]", srcPath, dstPath);
|
||||||
}
|
}
|
||||||
else TRACELOG(LOG_WARNING, "FILEIO: [%s] Source file does not exist", srcPath);
|
else TRACELOG(LOG_WARNING, "FILEIO: [%s] Source file does not exist", srcPath);
|
||||||
|
|||||||
Reference in New Issue
Block a user