From b93ed278362185ff980e0ce8f4ab3029f8fe395f Mon Sep 17 00:00:00 2001 From: Uoti Urpala Date: Fri, 6 Apr 2012 14:24:26 +0300 Subject: input: stop trying to read terminal input on EOF Stop trying to read terminal input if a read attempt returns EOF. The most important case where this matters is when someone runs the player with stdin redirected from /dev/null and without specifying --no-consolecontrols. This used to cause 100% CPU load while paused, as select() would continuously trigger on stdin (the need for --no-consolecontrols was not apparent to people with older mplayer versions, as input reading was less efficient and latencies like hardcoded sleeps kept CPU use well below 100%). Now this will only cause a "Dead key input" error message. --- osdep/getch2-win.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'osdep/getch2-win.c') diff --git a/osdep/getch2-win.c b/osdep/getch2-win.c index 326cf1a7d0..f1ccea6359 100644 --- a/osdep/getch2-win.c +++ b/osdep/getch2-win.c @@ -158,11 +158,12 @@ static int getch2_internal(void) return -1; } -void getch2(struct mp_fifo *fifo) +bool getch2(struct mp_fifo *fifo) { int r = getch2_internal(); if (r >= 0) mplayer_put_key(fifo, r); + return true; } void getch2_enable(void) -- cgit v1.2.3