diff options
author | Andreas Baumann <mail@andreasbaumann.cc> | 2014-12-04 19:46:14 +0100 |
---|---|---|
committer | Andreas Baumann <mail@andreasbaumann.cc> | 2014-12-04 19:46:14 +0100 |
commit | 0f5da2fce7911c1a0701dc78e4cb7ce10fbe25c2 (patch) | |
tree | 33c844208aedf15ad8a1cd5a8c6b00eeeccfa999 | |
parent | aad5ac1625e6830bd63b57f646479883f06f7d88 (diff) | |
download | biruda-0f5da2fce7911c1a0701dc78e4cb7ce10fbe25c2.tar.gz biruda-0f5da2fce7911c1a0701dc78e4cb7ce10fbe25c2.tar.bz2 |
fixed premature freeing of worker data on worker termination
-rw-r--r-- | src/worker.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/worker.c b/src/worker.c index 1bd5eb8..d0b4f52 100644 --- a/src/worker.c +++ b/src/worker.c @@ -157,6 +157,9 @@ static void *worker_func( void *thread_data ) worker->state = WORKER_STATE_STOPPED; + free( worker->execution_data ); + worker->execution_data = NULL; + g_strfreev( args ); return NULL; @@ -225,9 +228,6 @@ void worker_terminate( worker_t *worker ) #else (void)TerminateProcess( wed->pid, 0 ); #endif - worker->state = WORKER_STATE_STOPPED; - free( worker->execution_data ); - worker->execution_data = NULL; } int worker_free( worker_t *worker ) |