tree d025c650cf3777aa1ba6e02289e2e140742950fe
parent 8513915accc611e576dbebb93422c257e7e68be8
author Julia Lawall <Julia.Lawall@lip6.fr> 1345359778 +0200
committer Takashi Iwai <tiwai@suse.de> 1345452793 +0200

ALSA: sound/atmel/abdac.c: fix error return code

Initialize retval before returning from a failed call to ioremap.

A simplified version of the semantic match that finds this problem is as
follows: (http://coccinelle.lip6.fr/)

// <smpl>
(
if@p1 (\(ret < 0\|ret != 0\))
 { ... return ret; }
|
ret@p1 = 0
)
... when != ret = e1
    when != &ret
*if(...)
{
  ... when != ret = e2
      when forall
 return ret;
}

// </smpl>

Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
