]> Kevux Git Server - fll/commit
Regression: Incorrect char type resulted in SIGPIPE.
authorKevin Day <thekevinday@gmail.com>
Sat, 1 May 2021 03:46:02 +0000 (22:46 -0500)
committerKevin Day <thekevinday@gmail.com>
Sat, 1 May 2021 03:46:02 +0000 (22:46 -0500)
commita27845fb0a754f439916681cf1c75af40e6cc6e2
tree76b4e745bc13b2c4d5a1b11721c41bc37f98e064
parent3cfa9cf56765eb363ec923004d018f15cd78969f
Regression: Incorrect char type resulted in SIGPIPE.

The uint8_t/int8_t was changed into char recently.
This change appears to have be incomplete for the Byte Dump program.

Update the code to be aware of PIPE by passing a NULL string to represent a PIPE instead of a file.

While fixing this, go ahead and replace read() with fgetc().
This is more efficient due to the use of a file stream.
The use of read() is originally done for testing some of the lower-level FLL design.
This testing is no longer necessary so it is worth switching to fgetc().

Future design may merit reading larger chunks than 1 character at a time.

The use of fseek() is now available and in use (for non-PIPEs).

Minor code tweaks, such as changing i++ to ++i.
level_3/byte_dump/c/byte_dump.c
level_3/byte_dump/c/private-byte_dump.c
level_3/byte_dump/c/private-byte_dump.h