X-Git-Url: https://git.sesse.net/?p=ccbs;a=blobdiff_plain;f=bigscreen%2Fccbs_bigscreen.cpp;h=19937b246f9e10d672b42e14d1221aa7d62fad43;hp=f6d8da537f22d7064e3d31efc0c65cb0e5eba29a;hb=5e25e532a03e76374d575105c22453e210e88cdd;hpb=1d80f455c7613198b690d6e21370e1016b20edca diff --git a/bigscreen/ccbs_bigscreen.cpp b/bigscreen/ccbs_bigscreen.cpp index f6d8da5..19937b2 100644 --- a/bigscreen/ccbs_bigscreen.cpp +++ b/bigscreen/ccbs_bigscreen.cpp @@ -249,16 +249,19 @@ int main(int argc, char **argv) init_freetype(); pqxx::connection conn("dbname=ccbs host=altersex.samfundet.no user=ccbs password=GeT|>>B_"); FlagTrigger tournament_changed(conn, "active_tournament"); + FlagTrigger rounds_changed(conn, "active_groups"); - // when active_tournament is changed, we destroy everything and start from scratch + // when active_tournament or active_rounds is changed, we destroy everything and start from scratch + // (at least currently) for ( ;; ) { tournament_changed.reset_flag(); + rounds_changed.reset_flag(); init(conn); do { main_loop(conn); conn.get_notifs(); - } while (!tournament_changed.get_flag()); - std::fprintf(stderr, "active_tournament changed, resetting...\n"); + } while (!tournament_changed.get_flag() && !rounds_changed.get_flag()); + std::fprintf(stderr, "active_tournament or active_groups changed, resetting...\n"); } } catch (const std::exception &e) { std::fprintf(stderr, "Exception: %s\n", e.what());