Explorar o código

ASoC: blackfin: Use common error handling code in sport_create()

Add a jump target so that a bit of exception handling can be better reused
at the end of this function.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: Mark Brown <broonie@kernel.org>
Markus Elfring %!s(int64=8) %!d(string=hai) anos
pai
achega
11fca34b27
Modificáronse 1 ficheiros con 7 adicións e 8 borrados
  1. 7 8
      sound/soc/blackfin/bf6xx-sport.c

+ 7 - 8
sound/soc/blackfin/bf6xx-sport.c

@@ -394,19 +394,18 @@ struct sport_device *sport_create(struct platform_device *pdev)
 	sport->pdev = pdev;
 
 	ret = sport_get_resource(sport);
-	if (ret) {
-		kfree(sport);
-		return NULL;
-	}
+	if (ret)
+		goto free_data;
 
 	ret = sport_request_resource(sport);
-	if (ret) {
-		kfree(sport);
-		return NULL;
-	}
+	if (ret)
+		goto free_data;
 
 	dev_dbg(dev, "SPORT create success\n");
 	return sport;
+free_data:
+	kfree(sport);
+	return NULL;
 }
 EXPORT_SYMBOL(sport_create);