Merge remote branch 'takashi/fix/asoc' into for-2.6.37
authorMark Brown <broonie@opensource.wolfsonmicro.com>
Wed, 3 Nov 2010 16:32:54 +0000 (12:32 -0400)
committerMark Brown <broonie@opensource.wolfsonmicro.com>
Wed, 3 Nov 2010 16:32:54 +0000 (12:32 -0400)
sound/soc/soc-core.c

index 614a8b30d87bdefdb99414f06d1d74438e60cd18..441285ade024ff33589cd22204ef5cb82a1f14ea 100644 (file)
@@ -3043,8 +3043,10 @@ int snd_soc_register_dais(struct device *dev,
        for (i = 0; i < count; i++) {
 
                dai = kzalloc(sizeof(struct snd_soc_dai), GFP_KERNEL);
-               if (dai == NULL)
-                       return -ENOMEM;
+               if (dai == NULL) {
+                       ret = -ENOMEM;
+                       goto err;
+               }
 
                /* create DAI component name */
                dai->name = fmt_multiple_name(dev, &dai_drv[i]);
@@ -3263,9 +3265,6 @@ int snd_soc_register_codec(struct device *dev,
        return 0;
 
 error:
-       for (i--; i >= 0; i--)
-               snd_soc_unregister_dai(dev);
-
        if (codec->reg_cache)
                kfree(codec->reg_cache);
        kfree(codec->name);