}
}
-unsigned EventsModel::insert_event(uint64_t t, int player_id, const string &type)
+unsigned EventsModel::insert_event(uint64_t t, optional<int> player_id, const string &type)
{
auto it = lower_bound(events.begin(), events.end(), t,
[](const Event &e, uint64_t t) { return e.t < t; });
}
sqlite3_bind_int64(stmt, 1, t);
- sqlite3_bind_int64(stmt, 2, player_id);
+ if (player_id) {
+ sqlite3_bind_int64(stmt, 2, *player_id);
+ } else {
+ sqlite3_bind_null(stmt, 2);
+ }
sqlite3_bind_text(stmt, 3, type.data(), type.size(), SQLITE_STATIC);
ret = sqlite3_step(stmt);