Browse Source

Staging: ti-st: writing past end of array

In the original source it would write past the end of the array before
returning the error code.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Dan Carpenter 15 years ago
parent
commit
0b6e7220ed
1 changed files with 2 additions and 3 deletions
  1. 2 3
      drivers/staging/ti-st/st_core.c

+ 2 - 3
drivers/staging/ti-st/st_core.c

@@ -686,9 +686,8 @@ long st_register(struct st_proto_s *new_proto)
 		default:
 			pr_err("%d protocol not supported",
 				   new_proto->type);
-			err = -EPROTONOSUPPORT;
-			/* something wrong */
-			break;
+			spin_unlock_irqrestore(&st_gdata->lock, flags);
+			return -EPROTONOSUPPORT;
 		}
 		st_gdata->list[new_proto->type] = new_proto;
 		st_gdata->protos_registered++;