diff options
author | giraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8> | 2018-03-21 02:30:23 +0000 |
---|---|---|
committer | giraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8> | 2018-03-21 02:30:23 +0000 |
commit | a2c68a408cb2b33f09f2cba891c019f84f1f9799 (patch) | |
tree | a5778b0e946c78dc3998ddd83f369746500ffa7d | |
parent | 852daa1e2a73f0aa6dead496001db0f3615649b9 (diff) | |
download | netpbm-mirror-a2c68a408cb2b33f09f2cba891c019f84f1f9799.tar.gz netpbm-mirror-a2c68a408cb2b33f09f2cba891c019f84f1f9799.tar.xz netpbm-mirror-a2c68a408cb2b33f09f2cba891c019f84f1f9799.zip |
Improve error message when writing packed PBM row fails
git-svn-id: http://svn.code.sf.net/p/netpbm/code/trunk@3176 9d0c8265-081b-0410-96cb-a4ca84ce46f8
-rw-r--r-- | lib/libpbm3.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/lib/libpbm3.c b/lib/libpbm3.c index a5b1382a..0144abe2 100644 --- a/lib/libpbm3.c +++ b/lib/libpbm3.c @@ -55,13 +55,19 @@ pbm_writepbminit(FILE * const fileP, static void writePackedRawRow(FILE * const fileP, - const unsigned char * const packed_bits, - int const cols) { + const unsigned char * const packedBits, + unsigned int const cols) { - int bytesWritten; - bytesWritten = fwrite(packed_bits, 1, pbm_packed_bytes(cols), fileP); - if (bytesWritten < pbm_packed_bytes(cols)) - pm_error("I/O error writing packed row to raw PBM file."); + unsigned int const packedByteCt = pbm_packed_bytes(cols); + + size_t writtenByteCt; + + writtenByteCt = fwrite(packedBits, 1, packedByteCt, fileP); + if (writtenByteCt < packedByteCt) + pm_error("I/O error writing packed row to raw PBM file. " + "(Attempted fwrite() of %u packed bytes; " + "only %u got written)", + packedByteCt, (unsigned)writtenByteCt); } |