xfree86: use xf86AllocateInput() for xorg.conf devices too.
Single allocation point for input devices, most notably a single point to reset default values. Without this patch, the file descriptor default was -1 for hotplugged devices and 0 for config devices. Drivers that don't overwrite the default themselves would thus fail if configured in the xorg.conf. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Daniel Stone <daniel@fooishbar.org> Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
This commit is contained in:
		
							parent
							
								
									beea2378f1
								
							
						
					
					
						commit
						68a1b0de95
					
				| 
						 | 
				
			
			@ -1458,7 +1458,7 @@ configInputDevices(XF86ConfLayoutPtr layout, serverLayoutPtr servlayoutp)
 | 
			
		|||
    irp = layout->lay_input_lst;
 | 
			
		||||
    count = 0;
 | 
			
		||||
    while (irp) {
 | 
			
		||||
	indp[count] = xnfalloc(sizeof(InputInfoRec));
 | 
			
		||||
	indp[count] = xf86AllocateInput();
 | 
			
		||||
	if (!configInput(indp[count], irp->iref_inputdev, X_CONFIG)) {
 | 
			
		||||
	    while(count--)
 | 
			
		||||
		free(indp[count]);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -653,7 +653,7 @@ IgnoreInputClass(const InputInfoPtr idev, const InputAttributes *attrs)
 | 
			
		|||
    return ignore;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static InputInfoPtr
 | 
			
		||||
InputInfoPtr
 | 
			
		||||
xf86AllocateInput(void)
 | 
			
		||||
{
 | 
			
		||||
    InputInfoPtr pInfo;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -155,6 +155,7 @@ extern _X_EXPORT void xf86DisableDevice(DeviceIntPtr dev, Bool panic);
 | 
			
		|||
extern _X_EXPORT void xf86EnableDevice(DeviceIntPtr dev);
 | 
			
		||||
/* not exported */
 | 
			
		||||
int xf86NewInputDevice(InputInfoPtr pInfo, DeviceIntPtr *pdev, BOOL is_auto);
 | 
			
		||||
InputInfoPtr xf86AllocateInput(void);
 | 
			
		||||
 | 
			
		||||
/* xf86Helper.c */
 | 
			
		||||
extern _X_EXPORT void xf86AddInputDriver(InputDriverPtr driver, pointer module, int flags);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue