mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 09:26:05 +00:00 
			
		
		
		
	Sync OpenBSD patchset 316:
Only redraw all clients once when the backoff timer expires rather than every second all the time. Reported by Simon Nicolussi.
This commit is contained in:
		@@ -1,4 +1,4 @@
 | 
				
			|||||||
/* $Id: server-fn.c,v 1.85 2009-09-03 20:54:39 tcunha Exp $ */
 | 
					/* $Id: server-fn.c,v 1.86 2009-09-05 19:03:41 tcunha Exp $ */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
 | 
					 * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
 | 
				
			||||||
@@ -234,8 +234,8 @@ server_unlock(const char *s)
 | 
				
			|||||||
	return (0);
 | 
						return (0);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
wrong:
 | 
					wrong:
 | 
				
			||||||
	password_backoff = server_activity;
 | 
					 | 
				
			||||||
	password_failures++;
 | 
						password_failures++;
 | 
				
			||||||
 | 
						password_backoff = 0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for (i = 0; i < ARRAY_LENGTH(&clients); i++) {
 | 
						for (i = 0; i < ARRAY_LENGTH(&clients); i++) {
 | 
				
			||||||
		c = ARRAY_ITEM(&clients, i);
 | 
							c = ARRAY_ITEM(&clients, i);
 | 
				
			||||||
@@ -266,7 +266,8 @@ wrong:
 | 
				
			|||||||
#endif
 | 
					#endif
 | 
				
			||||||
	failures = password_failures % tries;
 | 
						failures = password_failures % tries;
 | 
				
			||||||
	if (failures > backoff) {
 | 
						if (failures > backoff) {
 | 
				
			||||||
		password_backoff += ((failures - backoff) * tries / 2);
 | 
							password_backoff = 
 | 
				
			||||||
 | 
							    server_activity + ((failures - backoff) * tries / 2);
 | 
				
			||||||
		return (-2);
 | 
							return (-2);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	return (-1);
 | 
						return (-1);
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										5
									
								
								server.c
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								server.c
									
									
									
									
									
								
							@@ -1,4 +1,4 @@
 | 
				
			|||||||
/* $Id: server.c,v 1.179 2009-09-04 20:27:06 tcunha Exp $ */
 | 
					/* $Id: server.c,v 1.180 2009-09-05 19:03:41 tcunha Exp $ */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/*
 | 
					/*
 | 
				
			||||||
 * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
 | 
					 * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
 | 
				
			||||||
@@ -1213,11 +1213,12 @@ server_second_timers(void)
 | 
				
			|||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (t > password_backoff) {
 | 
						if (password_backoff != 0 && t >= password_backoff) {
 | 
				
			||||||
		for (i = 0; i < ARRAY_LENGTH(&clients); i++) {
 | 
							for (i = 0; i < ARRAY_LENGTH(&clients); i++) {
 | 
				
			||||||
			if ((c = ARRAY_ITEM(&clients, i)) != NULL)
 | 
								if ((c = ARRAY_ITEM(&clients, i)) != NULL)
 | 
				
			||||||
				server_redraw_client(c);
 | 
									server_redraw_client(c);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
							password_backoff = 0;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* Check for a minute having passed. */
 | 
						/* Check for a minute having passed. */
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user