summaryrefslogtreecommitdiffstats
path: root/crypto/async
diff options
context:
space:
mode:
authorMatt Caswell <matt@openssl.org>2015-03-26 10:15:59 +0000
committerMatt Caswell <matt@openssl.org>2015-11-20 23:32:18 +0000
commit826760945de655d2d2d387cac3a3646ced80977e (patch)
tree8d2f6696345b56a1d4197acdc6a7398c9084108b /crypto/async
parent06754949e4317f5ba7e318a8841b78a7d622053f (diff)
Async clean ups
Removed the function ASYNC_job_is_waiting() as it was redundant. The only time user code has a handle on a job is when one is waiting, so all they need to do is check whether the job is NULL. Also did some cleanups to make sure the job really is NULL after it has been freed! Reviewed-by: Rich Salz <rsalz@openssl.org>
Diffstat (limited to 'crypto/async')
-rw-r--r--crypto/async/async.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/crypto/async/async.c b/crypto/async/async.c
index cef5f4f959..c0f362e2c8 100644
--- a/crypto/async/async.c
+++ b/crypto/async/async.c
@@ -157,6 +157,7 @@ int ASYNC_start_job(ASYNC_JOB **job, int *ret, int (*func)(void *),
*ret = ASYNC_get_ctx()->currjob->ret;
ASYNC_JOB_free(ASYNC_get_ctx()->currjob);
ASYNC_get_ctx()->currjob = NULL;
+ *job = NULL;
ASYNC_CTX_free();
return ASYNC_FINISH;
}
@@ -180,6 +181,7 @@ int ASYNC_start_job(ASYNC_JOB **job, int *ret, int (*func)(void *),
/* Should not happen */
ASYNC_JOB_free(ASYNC_get_ctx()->currjob);
ASYNC_get_ctx()->currjob = NULL;
+ *job = NULL;
ASYNC_CTX_free();
return ASYNC_ERR;
}
@@ -213,6 +215,7 @@ int ASYNC_start_job(ASYNC_JOB **job, int *ret, int (*func)(void *),
err:
ASYNC_JOB_free(ASYNC_get_ctx()->currjob);
ASYNC_get_ctx()->currjob = NULL;
+ *job = NULL;
ASYNC_CTX_free();
return ASYNC_ERR;
}
@@ -244,8 +247,3 @@ int ASYNC_in_job(void)
return 0;
}
-
-int ASYNC_job_is_waiting(ASYNC_JOB *job)
-{
- return job->status == ASYNC_JOB_PAUSED;
-}