aboutsummaryrefslogtreecommitdiff
path: root/src/SFileReadFile.cpp
diff options
context:
space:
mode:
authornvs <notveryserious@gmail.com>2018-04-26 14:51:31 -0700
committernvs <notveryserious@gmail.com>2018-04-26 15:23:06 -0700
commitfe652fe4a6e02041194a0f1b29a0086bd99fb14d (patch)
tree4718cffa9d42487b3bb540b7f393d5a3dda1ed49 /src/SFileReadFile.cpp
parent8c9992253dca5861388e54506d40e5cbefaf2485 (diff)
Set SFileSetFilePointer error when new pointer < 0
This addresses an apparent oversight in the following commit: - 951f416398b3aa0b32969b4a391a3103443ad99e An error is not actually set, even though the return value now correctly indicates failure. Per the documentation for [`SetFilerPointer ()`][1], this should be set to `ERROR_NEGATIVE_SEEK` on Windows. On Mac/Linux, this would be `EINVAL` as per the documentation for [`fseek ()`][2]. [1]: https://msdn.microsoft.com/en-us/library/windows/desktop/aa365541(v=vs.85).aspx [2]: http://pubs.opengroup.org/onlinepubs/9699919799/functions/fseek.html
Diffstat (limited to 'src/SFileReadFile.cpp')
-rw-r--r--src/SFileReadFile.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/SFileReadFile.cpp b/src/SFileReadFile.cpp
index f91d2af..3831165 100644
--- a/src/SFileReadFile.cpp
+++ b/src/SFileReadFile.cpp
@@ -868,6 +868,7 @@ DWORD WINAPI SFileSetFilePointer(HANDLE hFile, LONG lFilePos, LONG * plFilePosHi
if((LONGLONG)DeltaPos < 0)
{
if(NewPosition > FileSize) // Position is negative
+ SetLastError(ERROR_NEGATIVE_SEEK);
return SFILE_INVALID_POS;
}