systemd_logind_find_info_ptr_by_devnum: Add a start argument
Modify systemd_logind_find_info_ptr_by_devnum to take a start argument, so that it can be used to find all occurences of a devnum in an InputInfo list, rather then just the first. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
		
							parent
							
								
									40e3c79a59
								
							
						
					
					
						commit
						ddc3888bba
					
				|  | @ -204,11 +204,12 @@ systemd_logind_vtenter(void) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static InputInfoPtr | static InputInfoPtr | ||||||
| systemd_logind_find_info_ptr_by_devnum(int major, int minor) | systemd_logind_find_info_ptr_by_devnum(InputInfoPtr start, | ||||||
|  |                                        int major, int minor) | ||||||
| { | { | ||||||
|     InputInfoPtr pInfo; |     InputInfoPtr pInfo; | ||||||
| 
 | 
 | ||||||
|     for (pInfo = xf86InputDevs; pInfo; pInfo = pInfo->next) |     for (pInfo = start; pInfo; pInfo = pInfo->next) | ||||||
|         if (pInfo->major == major && pInfo->minor == minor && |         if (pInfo->major == major && pInfo->minor == minor && | ||||||
|                 (pInfo->flags & XI86_SERVER_FD)) |                 (pInfo->flags & XI86_SERVER_FD)) | ||||||
|             return pInfo; |             return pInfo; | ||||||
|  | @ -320,7 +321,8 @@ message_filter(DBusConnection * connection, DBusMessage * message, void *data) | ||||||
| 
 | 
 | ||||||
|     pdev = xf86_find_platform_device_by_devnum(major, minor);         |     pdev = xf86_find_platform_device_by_devnum(major, minor);         | ||||||
|     if (!pdev) |     if (!pdev) | ||||||
|         pInfo = systemd_logind_find_info_ptr_by_devnum(major, minor); |         pInfo = systemd_logind_find_info_ptr_by_devnum(xf86InputDevs, | ||||||
|  |                                                        major, minor); | ||||||
|     if (!pdev && !pInfo) { |     if (!pdev && !pInfo) { | ||||||
|         LogMessage(X_WARNING, "systemd-logind: could not find dev %u:%u\n", |         LogMessage(X_WARNING, "systemd-logind: could not find dev %u:%u\n", | ||||||
|                    major, minor); |                    major, minor); | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue