Pillanatnyilag az a gondolatom, hogy tényleg végtelen ciklus van a 'readline'-ban, ami akkor jelentkezik, ha megsorozzák végtelen+1 SIGHUP-pal. Talán ez a komment is kapcsolatban van ezzel:
101 /* Private variables. */
102 int _rl_interrupt_immediately = 0;
103 int volatile _rl_caught_signal = 0;
104 /* should be sig_atomic_t, but that requires including <signal.h> everywhere */
Azzal a különbséggel, hogy a _rl_interrupt_immediatly -t használja a signal-handler az is lehetne sig_atomic_t. Bár igaz, hogy sosem írja senki, mindig nulla.