diff options
Diffstat (limited to 'sound/usb/card.c')
| -rw-r--r-- | sound/usb/card.c | 4 | 
1 files changed, 2 insertions, 2 deletions
diff --git a/sound/usb/card.c b/sound/usb/card.c index d5b5c3388e2..4a469f0cb6d 100644 --- a/sound/usb/card.c +++ b/sound/usb/card.c @@ -553,7 +553,7 @@ static void snd_usb_audio_disconnect(struct usb_device *dev,  				     struct snd_usb_audio *chip)  {  	struct snd_card *card; -	struct list_head *p; +	struct list_head *p, *n;  	if (chip == (void *)-1L)  		return; @@ -570,7 +570,7 @@ static void snd_usb_audio_disconnect(struct usb_device *dev,  			snd_usb_stream_disconnect(p);  		}  		/* release the endpoint resources */ -		list_for_each(p, &chip->ep_list) { +		list_for_each_safe(p, n, &chip->ep_list) {  			snd_usb_endpoint_free(p);  		}  		/* release the midi resources */  |