#1035319 coreutils: pr: -d ejects extraneous line at last page

Package:
coreutils
Source:
coreutils
Description:
GNU core utilities
Submitter:
наб
Date:
2023-04-30 20:15:08 UTC
Severity:
normal
#1035319#5
Date:
2023-04-30 20:13:32 UTC
From:
To:
Dear Maintainer,

Correct (minimised example):
-- >8 --
% echo a | pr -f | cat -A | tr -s ' '
$
$
2023-04-30 22:09 Page 1$
$
$
a$
^L
-- >8 --

Incorrect:
-- >8 --
% echo a | pr -fd | cat -A | tr -s ' '
$
$
2023-04-30 22:10 Page 1$
$
$
a$
$
$
^L
-- >8 --

POSIX mandates that -d doubles any ejected newline.
pr(1) uses the same description as the posix short-name.

Correct output would be:
-- >8 --
% echo a | out/cmd/pr     -fdm   | cat -A | tr -s ' '
$
$
2023-04-30 22:11 Page 1$
$
$
a$
$
^L
-- >8 --
i.e. the original newline + another empty line, then page feed.

Best,
наб