usb: free USBDevice.strings
The list is created during instance init and further populated with usb_desc_set_string(). Clear it when unrealizing the device. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Gerd Hoffmann <kraxel@redhat.com>
This commit is contained in:
		
							parent
							
								
									0137a557aa
								
							
						
					
					
						commit
						ec507f1123
					
				| @ -279,6 +279,13 @@ static void usb_qdev_realize(DeviceState *qdev, Error **errp) | ||||
| static void usb_qdev_unrealize(DeviceState *qdev, Error **errp) | ||||
| { | ||||
|     USBDevice *dev = USB_DEVICE(qdev); | ||||
|     USBDescString *s, *next; | ||||
| 
 | ||||
|     QLIST_FOREACH_SAFE(s, &dev->strings, next, next) { | ||||
|         QLIST_REMOVE(s, next); | ||||
|         g_free(s->str); | ||||
|         g_free(s); | ||||
|     } | ||||
| 
 | ||||
|     if (dev->attached) { | ||||
|         usb_device_detach(dev); | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Marc-André Lureau
						Marc-André Lureau