Răsfoiți Sursa

media: ddbridge: detach first input if the second one failed to init

In ddb_ports_attach(), if the second input of a dual tuner failed to
initialise, the first one can be detached (and resources be freed) as
this will be counted as the whole port having failed to initialise,
thus the first one won't be used anyway.

Signed-off-by: Daniel Scheller <d.scheller@gmx.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Daniel Scheller 7 ani în urmă
părinte
comite
c0e10260cc
1 a modificat fișierele cu 3 adăugiri și 1 ștergeri
  1. 3 1
      drivers/media/pci/ddbridge/ddbridge-core.c

+ 3 - 1
drivers/media/pci/ddbridge/ddbridge-core.c

@@ -1935,8 +1935,10 @@ static int ddb_port_attach(struct ddb_port *port)
 		if (ret < 0)
 			break;
 		ret = dvb_input_attach(port->input[1]);
-		if (ret < 0)
+		if (ret < 0) {
+			dvb_input_detach(port->input[0]);
 			break;
+		}
 		port->input[0]->redi = port->input[0];
 		port->input[1]->redi = port->input[1];
 		break;