kfree (buf); 
kfree(buf); 
static int stv_set_video_mode (struct usb_stv *dev){	int i, stop_video = 1;	unsigned char *buf;	buf = kmalloc (40, GFP_KERNEL);	if (buf == NULL) {		PDEBUG (0, "STV(e): Out of (small buf) memory");		return -1;	}	if ((i = stv_set_config (dev, 1, 0, 0)) < 0) {		kfree (buf);		return i;	}	i = stv_sndctrl (2, dev, 0x06, 0x0100, buf, 0x12);	if (!(i > 0) && (buf[8] == 0x53) && (buf[9] == 0x05)) {		PDEBUG (1, "STV(e): Could not get descriptor 0100.");		goto error;	}	/*  set alternate interface 1 */	if ((i = stv_set_config (dev, 1, 0, 1)) < 0)		goto error;	if ((i = stv_sndctrl (0, dev, 0x85, 0, buf, 0x10)) != 0x10)		goto error;	PDEBUG (1, "STV(i): Setting video mode.");	/*  Switch to Video mode: 0x0100 = VGA (640x480), 0x0000 = CIF (352x288) 0x0300 = QVGA (320x240)  */	if ((i = stv_sndctrl (1, dev, 0x09, dev->VideoMode, buf, 0x0)) < 0) {		stop_video = 0;		goto error;	}	goto exit;error:	kfree (buf);	if (stop_video == 1)		stv_stop_video (dev);	return -1;exit:	kfree (buf);	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/f9101210e7aa72daf92722d451a2f7e3af5f781f/stv680.c/clean/drivers/usb/media/stv680.c