1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-04-16 10:38:06 -05:00

Fix uninitialized variable in Windows get_file_posn.

The Windows implementation of get_file_posn is calling SetFilePointer
to obtain the current position in the file. However it did not
initialize the variable holding the high order 32-bit to 0. Thus,
SetFilePointer either returned -1 to indicate an error or did move the
file pointer to a different location instead of just returning the
current position. This change just initializes the variable to 0.

As a result, this bug has caused psftp's reget command to fail
resuming transfers or to create corrupt files due to setting up an
incorrect resume offset.
This commit is contained in:
Tim Kosse 2016-05-03 23:27:57 +02:00 committed by Simon Tatham
parent cc9d920c78
commit 9ba51c79fa

View File

@ -244,7 +244,7 @@ int seek_file(WFile *f, uint64 offset, int whence)
uint64 get_file_posn(WFile *f)
{
uint64 ret;
LONG lo, hi;
LONG lo, hi = 0;
lo = SetFilePointer(f->h, 0L, &hi, FILE_CURRENT);
ret.lo = lo;