sysinfo: Avoid libpci crash when pci not available
Turns out libpci is an awful library that on any error calls exit() and has no way of indicating an error otherwise...
This commit is contained in:
		
							parent
							
								
									c6d9e26e2b
								
							
						
					
					
						commit
						47b653cc7c
					
				
					 1 changed files with 6 additions and 1 deletions
				
			
		| 
						 | 
				
			
			@ -92,6 +92,11 @@ int pci_find_by_class(u16 *class, char *vendor, char *device)
 | 
			
		|||
	struct pci_dev *p;
 | 
			
		||||
	int nomatch = 1;
 | 
			
		||||
 | 
			
		||||
	/* libpci has no way to report errors it calls exit()
 | 
			
		||||
	 * so we need to manually avoid potential failures like this one */
 | 
			
		||||
	if (!g_file_test ("/proc/bus/pci", G_FILE_TEST_EXISTS))
 | 
			
		||||
		return 1;
 | 
			
		||||
 | 
			
		||||
	pacc = pci_alloc();
 | 
			
		||||
	pci_filter_init(pacc, &filter);
 | 
			
		||||
	pci_init(pacc);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue