diff options
author | Julia Lawall <julia@diku.dk> | 2009-07-12 03:42:47 -0400 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2009-07-22 19:28:02 -0400 |
commit | 3040c8203d68a9a0564af81729085054fd6b5b03 (patch) | |
tree | 5a1036cf9c9fce40f2b9cfb369745fbabb09c987 | |
parent | 711a680e35059bc5c7c28d3c4bd0bebd3b7bb6ee (diff) |
HID: Drop NULL test on list_entry result
list_entry, which is an alias for container_of, cannot return NULL, as
there is no way to add a NULL value to a doubly linked list.
A simplified version of the semantic match that findds this problem is as
follows:
(http://www.emn.fr/x-info/coccinelle/)
// <smpl>
@r@
expression x,E;
statement S1,S2;
position p,p1;
@@
*x = list_entry@p(...)
... when != x = E
*if@p1 (x == NULL) S1 else S2
// </smpl>
Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
-rw-r--r-- | drivers/hid/hid-lgff.c | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/drivers/hid/hid-lgff.c b/drivers/hid/hid-lgff.c index 95835ea5690f..987abebe0829 100644 --- a/drivers/hid/hid-lgff.c +++ b/drivers/hid/hid-lgff.c | |||
@@ -151,11 +151,6 @@ int lgff_init(struct hid_device* hid) | |||
151 | 151 | ||
152 | /* Check that the report looks ok */ | 152 | /* Check that the report looks ok */ |
153 | report = list_entry(report_list->next, struct hid_report, list); | 153 | report = list_entry(report_list->next, struct hid_report, list); |
154 | if (!report) { | ||
155 | err_hid("NULL output report"); | ||
156 | return -1; | ||
157 | } | ||
158 | |||
159 | field = report->field[0]; | 154 | field = report->field[0]; |
160 | if (!field) { | 155 | if (!field) { |
161 | err_hid("NULL field"); | 156 | err_hid("NULL field"); |