fix bug with enum task skipping decriptor

This commit is contained in:
hathach 2013-03-26 14:18:14 +07:00
parent 205a21ff04
commit 0b08dc7724
1 changed files with 2 additions and 2 deletions

View File

@ -408,7 +408,7 @@ OSAL_TASK_DECLARE(usbh_enumeration_task)
// TODO check class_open_subtask status // TODO check class_open_subtask status
if (length == 0) // Interface open failed, for example a subclass is not supported if (length == 0) // Interface open failed, for example a subclass is not supported
{ {
p_desc += p_desc[DESCRIPTOR_OFFSET_TYPE]; // skip this interface, the rest will be skipped by the above loop p_desc += p_desc[DESCRIPTOR_OFFSET_LENGTH]; // skip this interface, the rest will be skipped by the above loop
// TODO can optimize the length --> open_subtask return a OPEN FAILED status // TODO can optimize the length --> open_subtask return a OPEN FAILED status
}else }else
{ {
@ -417,7 +417,7 @@ OSAL_TASK_DECLARE(usbh_enumeration_task)
} }
} else // unsupported class (not enable or yet implemented) } else // unsupported class (not enable or yet implemented)
{ {
p_desc += p_desc[DESCRIPTOR_OFFSET_TYPE]; // skip this interface, the rest will be skipped by the above loop p_desc += p_desc[DESCRIPTOR_OFFSET_LENGTH]; // skip this interface, the rest will be skipped by the above loop
} }
} }
} }