mirror of
				https://github.com/vdr-projects/vdr.git
				synced 2025-03-01 10:50:46 +00:00 
			
		
		
		
	Fixed handling key codes that start with 0x1B in the KBD remote control code
This commit is contained in:
		
							
								
								
									
										1
									
								
								HISTORY
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								HISTORY
									
									
									
									
									
								
							| @@ -3104,3 +3104,4 @@ Video Disk Recorder Revision History | |||||||
|   The sequence of 'name' and 'short name' in the channels.conf file has been |   The sequence of 'name' and 'short name' in the channels.conf file has been | ||||||
|   swapped (see man vdr(5)). |   swapped (see man vdr(5)). | ||||||
| - Added the 'portal name' to cChannels (thanks to Marco Schl<68><6C>ler). | - Added the 'portal name' to cChannels (thanks to Marco Schl<68><6C>ler). | ||||||
|  | - Fixed handling key codes that start with 0x1B in the KBD remote control code. | ||||||
|   | |||||||
							
								
								
									
										5
									
								
								remote.c
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								remote.c
									
									
									
									
									
								
							| @@ -4,7 +4,7 @@ | |||||||
|  * See the main source file 'vdr.c' for copyright information and |  * See the main source file 'vdr.c' for copyright information and | ||||||
|  * how to reach the author. |  * how to reach the author. | ||||||
|  * |  * | ||||||
|  * $Id: remote.c 1.40 2004/05/28 14:19:52 kls Exp $ |  * $Id: remote.c 1.41 2004/10/31 14:05:12 kls Exp $ | ||||||
|  */ |  */ | ||||||
|  |  | ||||||
| #include "remote.h" | #include "remote.h" | ||||||
| @@ -265,7 +265,6 @@ void cKbdRemote::Action(void) | |||||||
|         if (Poller.Poll(100)) { |         if (Poller.Poll(100)) { | ||||||
|            uint64 Command = 0; |            uint64 Command = 0; | ||||||
|            uint i = 0; |            uint i = 0; | ||||||
|            int t0 = time_ms(); |  | ||||||
|            while (active && i < sizeof(Command)) { |            while (active && i < sizeof(Command)) { | ||||||
|                  uchar ch; |                  uchar ch; | ||||||
|                  int r = read(STDIN_FILENO, &ch, 1); |                  int r = read(STDIN_FILENO, &ch, 1); | ||||||
| @@ -280,7 +279,7 @@ void cKbdRemote::Action(void) | |||||||
|                     // of their codes, so we'll need to wait some 100ms to see if |                     // of their codes, so we'll need to wait some 100ms to see if | ||||||
|                     // there is more coming up - or whether this really is the 'ESC' |                     // there is more coming up - or whether this really is the 'ESC' | ||||||
|                     // key (if somebody knows how to clean this up, please let me know): |                     // key (if somebody knows how to clean this up, please let me know): | ||||||
|                     if (Command == 0x1B && time_ms() - t0 < 100) |                     if (Command == 0x1B && Poller.Poll(100)) | ||||||
|                        continue; |                        continue; | ||||||
|                     if (Command) { |                     if (Command) { | ||||||
|                        if (rawMode || !Put(Command)) { |                        if (rawMode || !Put(Command)) { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user