summaryrefslogtreecommitdiff
path: root/module
diff options
context:
space:
mode:
Diffstat (limited to 'module')
-rw-r--r--module/can327.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/module/can327.c b/module/can327.c
index 2d9c44e..ea92daf 100644
--- a/module/can327.c
+++ b/module/can327.c
@@ -440,6 +440,7 @@ static int elm327_parse_frame(struct can327 *elm, size_t len)
/* The line is likely garbled anyway, so bail.
* The main code will restart listening.
*/
+ kfree_skb(skb);
return -ENODATA;
}
@@ -458,6 +459,7 @@ static int elm327_parse_frame(struct can327 *elm, size_t len)
/* This is not a well-formatted data line.
* Assume it's an error message.
*/
+ kfree_skb(skb);
return -ENODATA;
}
@@ -465,6 +467,7 @@ static int elm327_parse_frame(struct can327 *elm, size_t len)
/* The line is too short to be a valid frame hex dump.
* Something interrupted the hex dump or it is invalid.
*/
+ kfree_skb(skb);
return -ENODATA;
}
@@ -516,6 +519,7 @@ static int elm327_parse_frame(struct can327 *elm, size_t len)
* However, this will correctly drop the state machine back into
* command mode.
*/
+ kfree_skb(skb);
return -ENODATA;
}