|
@@ -622,6 +622,8 @@ static int wdm_release(struct inode *inode, struct file *file)
|
|
kill_urbs(desc);
|
|
kill_urbs(desc);
|
|
if (!test_bit(WDM_DISCONNECTING, &desc->flags))
|
|
if (!test_bit(WDM_DISCONNECTING, &desc->flags))
|
|
desc->manage_power(desc->intf, 0);
|
|
desc->manage_power(desc->intf, 0);
|
|
|
|
+ else
|
|
|
|
+ cleanup(desc);
|
|
}
|
|
}
|
|
mutex_unlock(&wdm_mutex);
|
|
mutex_unlock(&wdm_mutex);
|
|
return 0;
|
|
return 0;
|