Commit 124ee9b28a8ab53822e42df17700e61cf88dcb63

Luke Dashjr 2012-04-26T15:42:09

Bugfix: thread_shutdown shouldn't try to free the device, since it's needed afterward

diff --git a/driver-icarus.c b/driver-icarus.c
index 83e526b..7a7ec49 100644
--- a/driver-icarus.c
+++ b/driver-icarus.c
@@ -398,21 +398,8 @@ static uint64_t icarus_scanhash(struct thr_info *thr, struct work *work,
 
 static void icarus_shutdown(struct thr_info *thr)
 {
-	struct cgpu_info *icarus;
-
-	if (thr->cgpu) {
-		icarus = thr->cgpu;
-
-		if (icarus->device_path)
-			free(icarus->device_path);
-
-		close(icarus->device_fd);
-
-		devices[icarus->device_id] = NULL;
-		free(icarus);
-
-		thr->cgpu = NULL;
-	}
+	struct cgpu_info *icarus = thr->cgpu;
+	icarus_close(icarus->device_fd);
 }
 
 struct device_api icarus_api = {