Closed ctm closed 1 week ago
FWIW, the way no-limping is implemented is a "temporary" hack, where there's a bool
in the Dealing
tuple:
bool, // limping-allowed: This is a hack that will go away when
// we have a better way of communicating the options that are in
// effect.
and ActionTracker
, stores that in a calling_allowed
field. There's nothing in the code to set calling_allowed
to true
when the second BeginRound
message arrives. There should be and that will fix this bug
However, I'm super curious as to why we haven't seen it before and why we didn't see it again later in this evening's tournament. So, before I put that fix in, I'm going to try to figure out just how we managed to get to the second betting round without calling_allowed
being set to true
but the existing mechanisms.
D'oh! It's obvious. It was due to the small blind and the big blind being the same. My code allows calling once a raise has been made, but when the small blind and big blind are the same, it's possible to get to the second round without there having been a raise.
I can now put in my fix now that I understand how we got there.
Fixed. It'll go out with my next deploy. I'm going to get rid of a few check-boxes first, though (#1450).
Figure out what happened to gerdog on hand 411282.
I bet and he timed out:
I'm assuming he had a good connection and that it was something the UI did wrong, but perhaps it was lag. I'll look at the db and also send him email.