mirror of https://github.com/redis/redis.git
				
				
				
			insufficient size for cached client flags in call() (#9783)
The client flags is a 64 bit integer, but the temporary cached value on the stack of call() is 32 bit. luckily this doesn't lead to any bugs since the only flags used against this variables are below 32 bit.
This commit is contained in:
		
							parent
							
								
									e968d9ac58
								
							
						
					
					
						commit
						aba70df48f
					
				| 
						 | 
					@ -4897,7 +4897,7 @@ void slowlogPushCurrentCommand(client *c, struct redisCommand *cmd, ustime_t dur
 | 
				
			||||||
void call(client *c, int flags) {
 | 
					void call(client *c, int flags) {
 | 
				
			||||||
    long long dirty;
 | 
					    long long dirty;
 | 
				
			||||||
    monotime call_timer;
 | 
					    monotime call_timer;
 | 
				
			||||||
    int client_old_flags = c->flags;
 | 
					    uint64_t client_old_flags = c->flags;
 | 
				
			||||||
    struct redisCommand *real_cmd = c->cmd;
 | 
					    struct redisCommand *real_cmd = c->cmd;
 | 
				
			||||||
    static long long prev_err_count;
 | 
					    static long long prev_err_count;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue