diff options
author | Dean Camera <dean@fourwalledcubicle.com> | 2009-07-21 02:48:41 +0000 |
---|---|---|
committer | Dean Camera <dean@fourwalledcubicle.com> | 2009-07-21 02:48:41 +0000 |
commit | 67f390fe746ccc4d1dceac23f590eb1723cb7ff2 (patch) | |
tree | eafc8a4dcb64a038afcb16fcae8d48033dc74249 /Demos/Device/LowLevel/AudioOutput | |
parent | bf50959b8016adbf6b295178b26b8173514dd060 (diff) | |
download | lufa-67f390fe746ccc4d1dceac23f590eb1723cb7ff2.tar.gz lufa-67f390fe746ccc4d1dceac23f590eb1723cb7ff2.tar.bz2 lufa-67f390fe746ccc4d1dceac23f590eb1723cb7ff2.zip |
Add explicit guards to all device mode tasks to ensure the device is connected and configured before running the task, to prevent any user tasks from locking up the main USB task if the device has not been properly configured.
Diffstat (limited to 'Demos/Device/LowLevel/AudioOutput')
-rw-r--r-- | Demos/Device/LowLevel/AudioOutput/AudioOutput.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Demos/Device/LowLevel/AudioOutput/AudioOutput.c b/Demos/Device/LowLevel/AudioOutput/AudioOutput.c index 9661f0342..6d22009dc 100644 --- a/Demos/Device/LowLevel/AudioOutput/AudioOutput.c +++ b/Demos/Device/LowLevel/AudioOutput/AudioOutput.c @@ -180,6 +180,10 @@ void EVENT_USB_UnhandledControlPacket(void) */
void USB_Audio_Task(void)
{
+ /* Device must be connected and configured for the task to run */
+ if (!(USB_IsConnected) || !(USB_ConfigurationNumber))
+ return;
+
/* Check to see if the streaming interface is selected, if not the host is not receiving audio */
if (!(StreamingAudioInterfaceSelected))
return;
|