mirror of
https://github.com/GOSTSec/sgminer
synced 2025-01-10 23:08:07 +00:00
Fix cgcompletion return code and free on successful completion.
This commit is contained in:
parent
f826e35765
commit
0430165f7b
8
util.c
8
util.c
@ -2510,11 +2510,11 @@ bool _cg_completion_timeout(void *fn, void *fnarg, int timeout, const char *file
|
|||||||
{
|
{
|
||||||
struct cg_completion *cgc;
|
struct cg_completion *cgc;
|
||||||
pthread_t pthread;
|
pthread_t pthread;
|
||||||
bool ret;
|
bool ret = false;
|
||||||
|
|
||||||
cgc = malloc(sizeof(struct cg_completion));
|
cgc = malloc(sizeof(struct cg_completion));
|
||||||
if (unlikely(!cgc))
|
if (unlikely(!cgc))
|
||||||
return false;
|
return ret;
|
||||||
cgsem_init(&cgc->cgsem);
|
cgsem_init(&cgc->cgsem);
|
||||||
cgc->fn = fn;
|
cgc->fn = fn;
|
||||||
cgc->fnarg = fnarg;
|
cgc->fnarg = fnarg;
|
||||||
@ -2522,7 +2522,7 @@ bool _cg_completion_timeout(void *fn, void *fnarg, int timeout, const char *file
|
|||||||
pthread_create(&pthread, NULL, completion_thread, (void *)cgc);
|
pthread_create(&pthread, NULL, completion_thread, (void *)cgc);
|
||||||
|
|
||||||
ret = cgsem_mswait(&cgc->cgsem, timeout);
|
ret = cgsem_mswait(&cgc->cgsem, timeout);
|
||||||
if (ret)
|
if (!ret)
|
||||||
free(cgc);
|
free(cgc);
|
||||||
return ret;
|
return !ret;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user