diff options
author | Gregory Nutt <gnutt@nuttx.org> | 2015-03-12 08:08:50 -0600 |
---|---|---|
committer | Gregory Nutt <gnutt@nuttx.org> | 2015-03-12 08:08:50 -0600 |
commit | a4b3285de1f7e9b8129c5faaf8b50df8712179ed (patch) | |
tree | b8ccffc107b4fafd79ef9e1f1b9c709a3c42b6cb /nuttx | |
parent | 450e66dd24099163bffbeefe9a17c6fc5fd1fa46 (diff) | |
download | px4-nuttx-a4b3285de1f7e9b8129c5faaf8b50df8712179ed.tar.gz px4-nuttx-a4b3285de1f7e9b8129c5faaf8b50df8712179ed.tar.bz2 px4-nuttx-a4b3285de1f7e9b8129c5faaf8b50df8712179ed.zip |
stm32: usbdev: Fix stale initialization invalidating later NULL check. From Juha Niskanen
Diffstat (limited to 'nuttx')
-rw-r--r-- | nuttx/arch/arm/src/stm32/stm32_usbdev.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/nuttx/arch/arm/src/stm32/stm32_usbdev.c b/nuttx/arch/arm/src/stm32/stm32_usbdev.c index 1229a3ed7..b2a48800f 100644 --- a/nuttx/arch/arm/src/stm32/stm32_usbdev.c +++ b/nuttx/arch/arm/src/stm32/stm32_usbdev.c @@ -1834,7 +1834,6 @@ static void stm32_ep0setup(struct stm32_usbdev_s *priv) } else { - privep = &priv->eplist[epno]; response.w = 0; /* Not stalled */ nbytes = 2; /* Response size: 2 bytes */ @@ -3157,7 +3156,7 @@ static int stm32_epstall(struct usbdev_ep_s *ep, bool resume) { struct stm32_ep_s *privep; struct stm32_usbdev_s *priv; - uint8_t epno = USB_EPNO(ep->eplog); + uint8_t epno; uint16_t status; irqstate_t flags; @@ -3168,6 +3167,7 @@ static int stm32_epstall(struct usbdev_ep_s *ep, bool resume) return -EINVAL; } #endif + privep = (struct stm32_ep_s *)ep; priv = (struct stm32_usbdev_s *)privep->dev; epno = USB_EPNO(ep->eplog); @@ -3347,7 +3347,6 @@ static struct usbdev_ep_s *stm32_allocep(struct usbdev_s *dev, uint8_t epno, usbtrace(TRACE_DEVERROR(STM32_TRACEERR_EPRESERVE), (uint16_t)epset); goto errout; } - epno = USB_EPNO(privep->ep.eplog); /* Allocate a PMA buffer for this endpoint */ @@ -3358,6 +3357,7 @@ static struct usbdev_ep_s *stm32_allocep(struct usbdev_s *dev, uint8_t epno, usbtrace(TRACE_DEVERROR(STM32_TRACEERR_EPBUFFER), 0); goto errout_with_ep; } + privep->bufno = (uint8_t)bufno; return &privep->ep; |