From 15f309e2658b548ecbf60d4f3faac32425db3e50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= Date: Tue, 18 Sep 2007 19:17:13 +0000 Subject: [PATCH] release module on error in init_driver() free devices pointer in uninit_driver() git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22241 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/kernel/drivers/bus/firewire/fw_raw.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/add-ons/kernel/drivers/bus/firewire/fw_raw.c b/src/add-ons/kernel/drivers/bus/firewire/fw_raw.c index b40c6e3a41..423c7d4dc4 100644 --- a/src/add-ons/kernel/drivers/bus/firewire/fw_raw.c +++ b/src/add-ons/kernel/drivers/bus/firewire/fw_raw.c @@ -991,8 +991,10 @@ init_driver() devices_count++; } - if (devices_count <= 0) + if (devices_count <= 0) { + put_module(FIREWIRE_MODULE_NAME); return ENODEV; + } devices = malloc(sizeof(char *) * (devices_count+1)); for (i=0; i