diff --git a/drivers/staging/gdm72xx/gdm_wimax.c b/drivers/staging/gdm72xx/gdm_wimax.c index e5e511585122a3a25c5d6ad203d4c5f185755f3f..3081fd46bbda793f6a5c6922afa44b3c5dd49fd8 100644 --- a/drivers/staging/gdm72xx/gdm_wimax.c +++ b/drivers/staging/gdm72xx/gdm_wimax.c @@ -291,8 +291,9 @@ static void __gdm_wimax_event_send(struct work_struct *work) e = list_entry(wm_event.evtq.next, struct evt_entry, list); spin_unlock_irqrestore(&wm_event.evt_lock, flags); - sscanf(e->dev->name, "wm%d", &idx); - netlink_send(wm_event.sock, idx, 0, e->evt_data, e->size); + if (sscanf(e->dev->name, "wm%d", &idx) == 1) + netlink_send(wm_event.sock, idx, 0, e->evt_data, + e->size); spin_lock_irqsave(&wm_event.evt_lock, flags); list_del(&e->list);