~edwargix/tallyard

52dda57d90c89fab51dac63753a6c347f53fb8f1 — David Florness 5 years ago b9d3701
Fix kicking
1 files changed, 10 insertions(+), 4 deletions(-)

M bulletin.rkt
M bulletin.rkt => bulletin.rkt +10 -4
@@ 231,9 231,15 @@
                       ['cands
                        (displayln (hash-ref election->candidates election))]
                       ['peers
                        (displayln (hash-values _peers))])]
                        (displayln (hash-values _peers))]
                       ['elections
                        (displayln (format "current: ~a" election))
                        (displayln (hash-keys election->candidates))])]
              ['set (match (read sp)
                      ['election (let ([election (read sp)])
                      ['election (let* ([election (read sp)]
                                        [election (if (string? election)
                                                      (string->symbol election)
                                                      election)])
                                   (election-set! election))]
                      [else (displayln "cannot set that")])]
              ['open


@@ 251,10 257,10 @@
                                [peer-uname (if (symbol? peer-uname)
                                                (symbol->string peer-uname)
                                                peer-uname)])
                           (for ([peer _peers]
                           (for ([(token peer) _peers]
                                 #:when (equal? (hash-ref peer 'username)
                                                peer-uname))
                             (set-remove! _peers peer)))
                             (hash-remove! _peers token)))
                         (displayln "close the election first"))]
              [else (displayln "unknown command")])
            (loop)))))))