Browse code

onas: adding checks when killing ddd thread.

Mickey Sola authored on 2015/09/24 01:09:49
Showing 1 changed files
... ...
@@ -59,9 +59,11 @@ static void onas_fan_exit(int sig)
59 59
 	logg("*ScanOnAccess: onas_fan_exit(), signal %d\n", sig);
60 60
 
61 61
 	close(onas_fan_fd);
62
-	
63
-	pthread_kill(ddd_pid, SIGUSR1);
64
-	pthread_join(ddd_pid, NULL);
62
+
63
+	if (ddd_pid > 0) {
64
+		pthread_kill(ddd_pid, SIGUSR1);
65
+		pthread_join(ddd_pid, NULL);
66
+	}
65 67
 
66 68
 	pthread_exit(NULL);
67 69
 	logg("ScanOnAccess: stopped\n");
... ...
@@ -119,6 +121,8 @@ void *onas_fan_th(void *arg)
119 119
 	pthread_attr_t ddd_attr;
120 120
 	struct ddd_thrarg *ddd_tharg = NULL;
121 121
 
122
+	ddd_pid = 0;
123
+
122 124
     /* ignore all signals except SIGUSR1 */
123 125
     sigfillset(&sigset);
124 126
     sigdelset(&sigset, SIGUSR1);