Proper error check for fwrite in updater.cxx
A less-than-zero check for an unsigned value of type size_t doesn't make sense, and: If the return value of fwrite differs from the count parameter, it means that a writing error prevented the function from completing. In this case, the error indicator (ferror) will be set for the stream. Change-Id: I344e608b2bc03a4a117fc5cca1acb8e26eda247a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88817 Tested-by: Jenkins Reviewed-by: Muhammet Kara <muhammet.kara@collabora.com>
This commit is contained in:
parent
3f515b85e0
commit
1bc6f5868f
1 changed files with 3 additions and 2 deletions
|
@ -731,8 +731,9 @@ static int ensure_copy(const NS_tchar *path, const NS_tchar *dest)
|
|||
|
||||
while (written < read)
|
||||
{
|
||||
size_t chunkWritten = fwrite(buffer, 1, read - written, outfile);
|
||||
if (chunkWritten <= 0)
|
||||
size_t nCount = read - written;
|
||||
size_t chunkWritten = fwrite(buffer, 1, nCount, outfile);
|
||||
if (chunkWritten != nCount)
|
||||
{
|
||||
LOG(("ensure_copy: failed to write the file: " LOG_S ", err: %d",
|
||||
dest, errno));
|
||||
|
|
Loading…
Reference in a new issue