Browse Source

There is no need for work to be a union in struct workio_cmd

nfactor-troky
Con Kolivas 13 years ago
parent
commit
68a3a9ad10
  1. 12
      cgminer.c

12
cgminer.c

@ -69,9 +69,7 @@ enum workio_commands {
struct workio_cmd { struct workio_cmd {
enum workio_commands cmd; enum workio_commands cmd;
struct thr_info *thr; struct thr_info *thr;
union {
struct work *work; struct work *work;
} u;
bool lagging; bool lagging;
}; };
@ -1906,7 +1904,7 @@ static void workio_cmd_free(struct workio_cmd *wc)
switch (wc->cmd) { switch (wc->cmd) {
case WC_SUBMIT_WORK: case WC_SUBMIT_WORK:
free_work(wc->u.work); free_work(wc->work);
break; break;
default: /* do nothing */ default: /* do nothing */
break; break;
@ -2217,7 +2215,7 @@ static void check_solve(struct work *work)
static void *submit_work_thread(void *userdata) static void *submit_work_thread(void *userdata)
{ {
struct workio_cmd *wc = (struct workio_cmd *)userdata; struct workio_cmd *wc = (struct workio_cmd *)userdata;
struct work *work = wc->u.work; struct work *work = wc->work;
struct pool *pool = work->pool; struct pool *pool = work->pool;
struct curl_ent *ce; struct curl_ent *ce;
int failures = 0; int failures = 0;
@ -3849,11 +3847,11 @@ bool submit_work_sync(struct thr_info *thr, const struct work *work_in)
return false; return false;
} }
wc->u.work = make_work(); wc->work = make_work();
wc->cmd = WC_SUBMIT_WORK; wc->cmd = WC_SUBMIT_WORK;
wc->thr = thr; wc->thr = thr;
memcpy(wc->u.work, work_in, sizeof(*work_in)); memcpy(wc->work, work_in, sizeof(*work_in));
wc->u.work->share_found_time = time(NULL); wc->work->share_found_time = time(NULL);
applog(LOG_DEBUG, "Pushing submit work to work thread"); applog(LOG_DEBUG, "Pushing submit work to work thread");

Loading…
Cancel
Save