Johannes Altmanninger b56b230076 Avoid excessive polling of universal variable file
Reproducible at least on Linux, where the "named pipe" universal
variable notifier is used:

	rm -rf build/test/xdg_config
	XDG_CONFIG_HOME=build/test/xdg_config ./build/fish -c "xterm -e ./build/fish"

The child fish reacts to keyboard input with a noticeable initial
delay.  This is because the universal variable file is polled over
a million times, even when I immediately press Control-D. This polling
prevents readb() from handling keyboard input.
Before commit 939aba02d ("Refactor input_common.cpp:readb"), readb()
reacted to keyboard input even when there were universal variable
notifications.  Restore this behavior, but make sure to call the
universal variable notifier after the new "prepare_to_select" logic.
Maybe the problem is in the notifier but the old behavior was sane.

Fixes the problems described in
7a556ec6f2 (commitcomment-49773677)

Adding "-d uvars-file" to the reproducesr shows that we are checking
the uvar file repeatedly:

	uvar-file: universal log sync
	uvar-file: universal log sync elided based on fast stat()
	uvar-file: universal log no modifications
2021-05-01 22:51:35 +02:00
..
2020-02-08 13:30:48 +01:00
2021-02-16 16:45:59 +01:00
2020-12-28 23:23:06 +01:00
2019-06-26 21:19:40 +02:00
2020-01-19 15:07:06 +01:00
2021-02-15 17:08:26 +01:00
2020-02-14 20:28:46 +01:00
2020-12-29 12:48:11 +01:00
2020-02-07 20:53:20 +01:00
2020-04-26 08:49:01 +02:00
2020-02-17 11:39:53 +01:00
2021-03-29 17:44:13 +02:00
2019-07-09 10:02:50 -07:00
2021-03-09 18:36:02 +01:00
2021-03-02 14:53:02 +01:00
2020-03-16 21:21:10 +01:00
2020-09-26 14:56:03 +02:00