Fixed lock up when system time jumps backwards
Signed-off-by: Christoph Lohmann <20h@r-36.net>
This commit is contained in:
		 Rob Pilling
					Rob Pilling
				
			
				
					committed by
					
						 Christoph Lohmann
						Christoph Lohmann
					
				
			
			
				
	
			
			
			 Christoph Lohmann
						Christoph Lohmann
					
				
			
						parent
						
							0f6942cdf6
						
					
				
				
					commit
					489982d4b8
				
			
							
								
								
									
										7
									
								
								st.c
									
									
									
									
									
								
							
							
						
						
									
										7
									
								
								st.c
									
									
									
									
									
								
							| @@ -3687,6 +3687,8 @@ run(void) { | |||||||
| 	gettimeofday(&last, NULL); | 	gettimeofday(&last, NULL); | ||||||
|  |  | ||||||
| 	for(xev = actionfps;;) { | 	for(xev = actionfps;;) { | ||||||
|  | 		long deltatime; | ||||||
|  |  | ||||||
| 		FD_ZERO(&rfd); | 		FD_ZERO(&rfd); | ||||||
| 		FD_SET(cmdfd, &rfd); | 		FD_SET(cmdfd, &rfd); | ||||||
| 		FD_SET(xfd, &rfd); | 		FD_SET(xfd, &rfd); | ||||||
| @@ -3720,8 +3722,9 @@ run(void) { | |||||||
| 			gettimeofday(&lastblink, NULL); | 			gettimeofday(&lastblink, NULL); | ||||||
| 			dodraw = 1; | 			dodraw = 1; | ||||||
| 		} | 		} | ||||||
| 		if(TIMEDIFF(now, last) \ | 		deltatime = TIMEDIFF(now, last); | ||||||
| 				> (xev? (1000/xfps) : (1000/actionfps))) { | 		if(deltatime > (xev? (1000/xfps) : (1000/actionfps)) | ||||||
|  | 				|| deltatime < 0) { | ||||||
| 			dodraw = 1; | 			dodraw = 1; | ||||||
| 			last = now; | 			last = now; | ||||||
| 		} | 		} | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user