From: Jean-Francois Moine Date: Tue, 28 Jul 2009 07:38:25 +0000 (-0300) Subject: V4L/DVB (12358): gspca - main: Memorize the current alt before setting it X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=1c8336d338099cbef6eb4bacd869c602c3988a06;p=deliverable%2Flinux.git V4L/DVB (12358): gspca - main: Memorize the current alt before setting it This prevents a loop if a permanent error occurs in usb_set_interface(). Signed-off-by: Jean-Francois Moine Signed-off-by: Mauro Carvalho Chehab --- diff --git a/drivers/media/video/gspca/gspca.c b/drivers/media/video/gspca/gspca.c index 6ec75066597d..016599def6b5 100644 --- a/drivers/media/video/gspca/gspca.c +++ b/drivers/media/video/gspca/gspca.c @@ -486,6 +486,7 @@ static struct usb_host_endpoint *get_ep(struct gspca_dev *gspca_dev) } PDEBUG(D_STREAM, "use alt %d ep 0x%02x", i, ep->desc.bEndpointAddress); + gspca_dev->alt = i; /* memorize the current alt setting */ if (gspca_dev->nbalt > 1) { ret = usb_set_interface(gspca_dev->dev, gspca_dev->iface, i); if (ret < 0) { @@ -493,7 +494,6 @@ static struct usb_host_endpoint *get_ep(struct gspca_dev *gspca_dev) return NULL; } } - gspca_dev->alt = i; /* memorize the current alt setting */ return ep; }