Skip to contentSkip to conversation

V4L/DVB: saa7164: move dereference under NULL check

PATCH New Dan Carpenter 1 participant 1 message Aug 19, 2010

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 V4L/DVB: saa7164: move dereference under NULL check

The original code dereferenced "port" before checking it for NULL. I moved the test down below the check. Also I changed the comparisons a little so people wouldn't get confused and think "port" and "buf" were ints instead of pointers. (Probably that's what lead to this issue in the first place.)

There is only one caller for this function and it passes non-NULL pointers, so this is essentially a cleanup rather than a bugfix.

drivers/media/video/saa7164/saa7164-buffer.c +3 -2
index 5713f3a..ddd25d3 100644
@@ -136,10 +136,11 @@ ret:
 int saa7164_buffer_dealloc(struct saa7164_tsport *port,
 	struct saa7164_buffer *buf)
 {
-	struct saa7164_dev *dev = port->dev;
+	struct saa7164_dev *dev;
 
-	if ((buf = 0) || (port = 0))
+	if (!buf || !port)
 		return SAA_ERR_BAD_PARAMETER;
+	dev = port->dev;
 
 	dprintk(DBGLVL_BUF, "%s() deallocating buffer @ 0x%p\n", __func__, buf);