2018-08-22 13:40:26 -04:00
|
|
|
List of bugs fixed.
|
|
|
|
|
|
|
|
1. ofs-rebuild: OFS value used to rebuild the record was incorrect.
|
|
|
|
Fixed August 19, 2014. Revised fix August 2018.
|
|
|
|
|
|
|
|
2. system-status: Instead of a floating-point division by 256, use
|
|
|
|
the wait(2) macros to create a reasonable exit status. Fixed March 12, 2016.
|
|
|
|
|
|
|
|
3. space: Use provided xisblank() function instead of ispace() for
|
|
|
|
matching [[:blank:]].
|
|
|
|
|
|
|
|
4. a-format: Add POSIX standard %a and %A to supported formats. Check
|
|
|
|
at runtime that this format is available.
|
|
|
|
|
|
|
|
5. decr-NF: Decrementing NF did not change $0. This is a decades-old
|
|
|
|
bug. There are interactions with the old and new value of OFS as well.
|
|
|
|
Most of the fix came from the NetBSD awk.
|
|
|
|
|
|
|
|
6. string-conv: String conversions of scalars were sticky. Once a
|
|
|
|
conversion to string happened, even with OFMT, that value was used until
|
|
|
|
a new numeric value was assigned, even if OFMT differed from CONVFMT,
|
|
|
|
and also if CONVFMT changed.
|
|
|
|
|
|
|
|
7. unary-plus: Unary plus on a string constant returned the string.
|
|
|
|
Instead, it should convert the value to numeric and give that value.
|
2018-09-14 22:56:34 -04:00
|
|
|
|
|
|
|
X. fmt-overflow: The buffer used for OFMT/CONVFMT conversions was written
|
|
|
|
to with sprintf(), which meant that some conversions could write past the
|
|
|
|
end.
|