summaryrefslogtreecommitdiff
path: root/extensions/source/scanner/sane.cxx
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2012-05-03 22:33:54 +0100
committerCaolán McNamara <caolanm@redhat.com>2012-05-03 22:34:17 +0100
commit76cc8aca4270bc2542cc8444d07f80d578eb6581 (patch)
tree3119ba28e5604b62c9d746a77b6110212e31751f /extensions/source/scanner/sane.cxx
parentfff2d18a08a37c0fa6a370e56591117fc08664d2 (diff)
WaE: unchecked results from write/fwrite
Change-Id: Ia7943a132d05e596550bd71878b54b2825c31987
Diffstat (limited to 'extensions/source/scanner/sane.cxx')
-rw-r--r--extensions/source/scanner/sane.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/extensions/source/scanner/sane.cxx b/extensions/source/scanner/sane.cxx
index b89f9bd3b793..0e0ff6469c02 100644
--- a/extensions/source/scanner/sane.cxx
+++ b/extensions/source/scanner/sane.cxx
@@ -748,12 +748,14 @@ sal_Bool Sane::Start( BitmapTransporter& rBitmap )
if( nLen && ( nStatus == SANE_STATUS_GOOD ||
nStatus == SANE_STATUS_EOF ) )
{
- fwrite( pBuffer, 1, nLen, pFrame );
+ bSuccess = (static_cast<size_t>(nLen) == fwrite( pBuffer, 1, nLen, pFrame ));
+ if (!bSuccess)
+ break;
}
else
DUMP_STATE( nStatus, "sane_read" );
} while( nStatus == SANE_STATUS_GOOD );
- if( nStatus != SANE_STATUS_EOF )
+ if (nStatus != SANE_STATUS_EOF || !bSuccess)
{
fclose( pFrame );
bSuccess = sal_False;