Browse Source

work->longpoll is reset across test_work_current so we need to recheck what pool it belongs to.

Con Kolivas 14 years ago
parent
commit
501e35a0e6
1 changed files with 2 additions and 2 deletions
  1. 2 2
      cgminer.c

+ 2 - 2
cgminer.c

@@ -3810,7 +3810,7 @@ static void convert_to_work(json_t *val, bool rolltime, struct pool *pool)
 	work->rolltime = rolltime;
 	work->rolltime = rolltime;
 
 
 	/* Only flag this as longpoll work if the pool is the current pool */
 	/* Only flag this as longpoll work if the pool is the current pool */
-	if (pool == current_pool())
+	if (pool == cp)
 		work->longpoll = true;
 		work->longpoll = true;
 
 
 	/* We'll be checking this work item twice, but we already know it's
 	/* We'll be checking this work item twice, but we already know it's
@@ -3820,7 +3820,7 @@ static void convert_to_work(json_t *val, bool rolltime, struct pool *pool)
 	test_work_current(work);
 	test_work_current(work);
 
 
 	/* Don't use as work if we have failover-only enabled */
 	/* Don't use as work if we have failover-only enabled */
-	if (!work->longpoll && opt_fail_only) {
+	if (pool != cp && opt_fail_only) {
 		free_work(work);
 		free_work(work);
 		return;
 		return;
 	}
 	}