Message ID | 20190220111346.13669-9-kraxel@redhat.com |
---|---|
State | New |
Headers | show |
Series | [PULL,1/9] usb: rearrange usb_ep_get() | expand |
On Wed, Feb 20, 2019 at 12:13:45PM +0100, Gerd Hoffmann wrote: > From: Liam Merwick <liam.merwick@oracle.com> > > Add an assert and an explicit check before the two callers to > usb_ep_get() in the USB redirector code to ensure the device > passed in is not NULL. > > Signed-off-by: Liam Merwick <liam.merwick@oracle.com> > Message-id: 1549460216-25808-9-git-send-email-liam.merwick@oracle.com > Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> > --- > hw/usb/redirect.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/hw/usb/redirect.c b/hw/usb/redirect.c > index 18a42d1938..7cb6b120d4 100644 > --- a/hw/usb/redirect.c > +++ b/hw/usb/redirect.c > @@ -1728,6 +1728,7 @@ static void usbredir_ep_info(void *priv, > USBRedirDevice *dev = priv; > int i; > > + assert(dev != NULL); Suggesting: assert(dev) > for (i = 0; i < MAX_ENDPOINTS; i++) { > dev->endpoint[i].type = ep_info->type[i]; > dev->endpoint[i].interval = ep_info->interval[i]; > @@ -2125,7 +2126,7 @@ static int usbredir_post_load(void *priv, int version_id) > { > USBRedirDevice *dev = priv; > > - if (dev->parser == NULL) { > + if (dev == NULL || dev->parser == NULL) { Suggesting if (!dev || !dev->parser) > return 0; > } > > -- > 2.9.3 > >
On 20/02/2019 11:24, Yuval Shaia wrote: > On Wed, Feb 20, 2019 at 12:13:45PM +0100, Gerd Hoffmann wrote: >> From: Liam Merwick <liam.merwick@oracle.com> >> >> Add an assert and an explicit check before the two callers to >> usb_ep_get() in the USB redirector code to ensure the device >> passed in is not NULL. >> >> Signed-off-by: Liam Merwick <liam.merwick@oracle.com> >> Message-id: 1549460216-25808-9-git-send-email-liam.merwick@oracle.com >> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> >> --- >> hw/usb/redirect.c | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/hw/usb/redirect.c b/hw/usb/redirect.c >> index 18a42d1938..7cb6b120d4 100644 >> --- a/hw/usb/redirect.c >> +++ b/hw/usb/redirect.c >> @@ -1728,6 +1728,7 @@ static void usbredir_ep_info(void *priv, >> USBRedirDevice *dev = priv; >> int i; >> >> + assert(dev != NULL); > > Suggesting: > assert(dev) > >> for (i = 0; i < MAX_ENDPOINTS; i++) { >> dev->endpoint[i].type = ep_info->type[i]; >> dev->endpoint[i].interval = ep_info->interval[i]; >> @@ -2125,7 +2126,7 @@ static int usbredir_post_load(void *priv, int version_id) >> { >> USBRedirDevice *dev = priv; >> >> - if (dev->parser == NULL) { >> + if (dev == NULL || dev->parser == NULL) { > > Suggesting > if (!dev || !dev->parser) > The rest of the file tests for '== NULL' so I used that for consistency (but in any case, my personal preferences is to just use that boolean style check with boolean variables). As it happens, the commits have already been pulled. Regards, Liam
diff --git a/hw/usb/redirect.c b/hw/usb/redirect.c index 18a42d1938..7cb6b120d4 100644 --- a/hw/usb/redirect.c +++ b/hw/usb/redirect.c @@ -1728,6 +1728,7 @@ static void usbredir_ep_info(void *priv, USBRedirDevice *dev = priv; int i; + assert(dev != NULL); for (i = 0; i < MAX_ENDPOINTS; i++) { dev->endpoint[i].type = ep_info->type[i]; dev->endpoint[i].interval = ep_info->interval[i]; @@ -2125,7 +2126,7 @@ static int usbredir_post_load(void *priv, int version_id) { USBRedirDevice *dev = priv; - if (dev->parser == NULL) { + if (dev == NULL || dev->parser == NULL) { return 0; }