Configuration Information [Automatically generated, do not change]:
Machine: x86_64
OS: linux-gnu
Compiler: x86_64-pc-linux-gnu-gcc
Compilation CFLAGS: -O2 -pipe -march=native -fomit-frame-pointer
uname output: Linux ryzen 5.10.52-gentoo #1 SMP Sat Aug 21 22:58:34 CEST 2021
x86_64 AMD Ryzen 9 3900X 12-Core Processor AuthenticAMD GNU/Linux
Machine Type: x86_64-pc-linux-gnu
Bash Version: 5.1
Patch Level: 16
Release Status: release
Description:
Using the default `shopt -s cmdhist; shopt -u lithist`,
multi-line commands which include completely empty lines (e.g. copied
from a spaciously formatted script)
do not get the appropriate semicolons. Thus, the command being stored in
the history is wrong!
The problem exists for all multi-line commands, including if, for, while
Note: The problem does not appear if using `shopt -s lithist`
Repeat-By:
Starting from a clean and freshly compiled bash
Note the empty line before the 2nd `echo`(just hitting return twice)
~/bash-5.1.16 $ ./bash --noprofile --norc
bash-5.1$ if true; then echo A
echo B; fi
A
B
bash-5.1$ !!
if true; then echo A echo B; fi
A echo B
Expected behaviour:
bash-5.1$ !!
if true; then echo A; echo B; fi
A
B
När du har kontakt med oss på Uppsala universitet med e-post så innebär det att
vi behandlar dina personuppgifter. För att läsa mer om hur vi gör det kan du
läsa här: http://www.uu.se/om-uu/dataskydd-personuppgifter/
E-mailing Uppsala University means that we will process your personal data. For
more information on how this is performed, please read here:
http://www.uu.se/en/about-uu/data-protection-policy