diff options
Diffstat (limited to 'src/solvers/gpu/output.rs')
-rw-r--r-- | src/solvers/gpu/output.rs | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/src/solvers/gpu/output.rs b/src/solvers/gpu/output.rs index 4e52ab4..9cbef1a 100644 --- a/src/solvers/gpu/output.rs +++ b/src/solvers/gpu/output.rs @@ -30,15 +30,18 @@ impl InBuffer { .expect("Channel to Output Daemon broke") { Message::ResultMessage(results) => { - if let Some(result_walls) = self.row_requests.get(&results.id) { - return Some(Self::calc_results( - results.valid_walls().as_ref(), - result_walls, - )); - } else { - if results.data.iter().any(|x| *x != 0) { - self.results_requests.insert(results.id, results); + if results.data.iter().any(|x| *x != 0) { + println!("Horay results!"); + if let Some(result_walls) = self.row_requests.get(&results.id) { + return Some(Self::calc_results( + results.valid_walls().as_ref(), + result_walls, + )); } else { + self.results_requests.insert(results.id, results); + } + } else { + if self.row_requests.remove(&results.id).is_none() { self.banned_requests.insert(results.id); } } |