dix: do not use bit-wise operators on the boolean result of BitIsOn
Performing bit-wise operations on a boolean amounts to mixing types, is confusing and basically incorrect; one should only perform logical operations on booleans. Performing such operations relies on the implementation detail that a boolean is in fact an integer and that its value FALSE is implemented as zero. Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl> Reviewed-by: Matt Turner <mattst88@gmail.com> Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
		
							parent
							
								
									5f34853d6f
								
							
						
					
					
						commit
						b16964910d
					
				|  | @ -112,12 +112,12 @@ set_button_up(DeviceIntPtr pDev, int button, int type) | ||||||
| Bool | Bool | ||||||
| button_is_down(DeviceIntPtr pDev, int button, int type) | button_is_down(DeviceIntPtr pDev, int button, int type) | ||||||
| { | { | ||||||
|     int ret = 0; |     Bool ret = FALSE; | ||||||
| 
 | 
 | ||||||
|     if (type & BUTTON_PROCESSED) |     if (type & BUTTON_PROCESSED) | ||||||
|         ret |= BitIsOn(pDev->button->down, button); |         ret = ret || BitIsOn(pDev->button->down, button); | ||||||
|     if (type & BUTTON_POSTED) |     if (type & BUTTON_POSTED) | ||||||
|         ret |= BitIsOn(pDev->button->postdown, button); |         ret = ret || BitIsOn(pDev->button->postdown, button); | ||||||
| 
 | 
 | ||||||
|     return ret; |     return ret; | ||||||
| } | } | ||||||
|  | @ -143,12 +143,12 @@ set_key_up(DeviceIntPtr pDev, int key_code, int type) | ||||||
| Bool | Bool | ||||||
| key_is_down(DeviceIntPtr pDev, int key_code, int type) | key_is_down(DeviceIntPtr pDev, int key_code, int type) | ||||||
| { | { | ||||||
|     int ret = 0; |     Bool ret = FALSE; | ||||||
| 
 | 
 | ||||||
|     if (type & KEY_PROCESSED) |     if (type & KEY_PROCESSED) | ||||||
|         ret |= BitIsOn(pDev->key->down, key_code); |         ret = ret || BitIsOn(pDev->key->down, key_code); | ||||||
|     if (type & KEY_POSTED) |     if (type & KEY_POSTED) | ||||||
|         ret |= BitIsOn(pDev->key->postdown, key_code); |         ret = ret || BitIsOn(pDev->key->postdown, key_code); | ||||||
| 
 | 
 | ||||||
|     return ret; |     return ret; | ||||||
| } | } | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue