Commit b884d11a2370bf24bc1ecf4056f3cccd505c86d5

Con Kolivas 2013-02-09T19:56:45

Provide a noop thread_shutdown function for drivers that don't support it.

diff --git a/cgminer.c b/cgminer.c
index e289f3b..e33dfa9 100644
--- a/cgminer.c
+++ b/cgminer.c
@@ -5522,8 +5522,7 @@ void *miner_thread(void *userdata)
 	}
 
 out:
-	if (drv->thread_shutdown)
-		drv->thread_shutdown(mythr);
+	drv->thread_shutdown(mythr);
 
 	thread_reportin(mythr);
 	applog(LOG_ERR, "Thread %d failure, exiting", thr_id);
@@ -6407,6 +6406,10 @@ static void noop_hw_error(struct thr_info __maybe_unused *thr)
 {
 }
 
+static void noop_thread_shutdown(struct thr_info __maybe_unused *thr)
+{
+}
+
 /* Fill missing driver api functions with noops */
 void fill_device_api(struct cgpu_info *cgpu)
 {
@@ -6430,6 +6433,8 @@ void fill_device_api(struct cgpu_info *cgpu)
 		drv->prepare_work = &noop_prepare_work;
 	if (!drv->hw_error)
 		drv->hw_error = &noop_hw_error;
+	if (!drv->thread_shutdown)
+		drv->thread_shutdown = &noop_thread_shutdown;
 }
 
 void enable_device(struct cgpu_info *cgpu)