|
| 1 | +use std::cell::Cell; |
1 | 2 | use crate::src::error::LibcFatalError;
|
2 | 3 | use engine::src::stubs::abs;
|
3 | 4 | use thordb_types::{Int8, Int16, Int32, OpeningNodeRef, ThorOpeningTree};
|
@@ -296,14 +297,14 @@ pub unsafe fn read_tournament_database(file_name: &str)
|
296 | 297 | if success != 0 {
|
297 | 298 | tournaments.tournament_list.resize(tournaments_count as usize, TournamentType {
|
298 | 299 | lex_order: 0,
|
299 |
| - selected: 0, |
| 300 | + selected: Cell::new(0), |
300 | 301 | name: &[]
|
301 | 302 | });
|
302 | 303 | i = 0;
|
303 | 304 | while i < tournaments_count {
|
304 | 305 | tournaments.tournament_list[i as usize] = (TournamentType {
|
305 | 306 | lex_order: 0,
|
306 |
| - selected: 1, |
| 307 | + selected: Cell::new(1), |
307 | 308 | name: tournaments.tournament_name(i)
|
308 | 309 | });
|
309 | 310 | i += 1
|
@@ -1070,7 +1071,7 @@ fn filter_database(db: &DatabaseType, tournaments_: &[TournamentType], players_:
|
1070 | 1071 | let game = (*db).games.as_slice().offset(i as isize);
|
1071 | 1072 | passes_filter = 1;
|
1072 | 1073 | /* Apply the tournament filter */
|
1073 |
| - if passes_filter != 0 && (*tournaments_.offset((*game).tournament_no as isize)).selected == 0 { |
| 1074 | + if passes_filter != 0 && (*tournaments_.offset((*game).tournament_no as isize)).selected.get() == 0 { |
1074 | 1075 | passes_filter = 0
|
1075 | 1076 | }
|
1076 | 1077 | /* Apply the year filter */
|
@@ -1157,8 +1158,7 @@ unsafe fn set_player_filter(selected: &[i32]) {
|
1157 | 1158 | unsafe fn set_tournament_filter(selected: &mut [i32]) {
|
1158 | 1159 | let mut i: i32 = 0;
|
1159 | 1160 | while i < tournaments.count() {
|
1160 |
| - (*tournaments.tournament_list.offset(i as isize)).selected = |
1161 |
| - *selected.offset(i as isize); |
| 1161 | + (*tournaments.tournament_list.offset(i as isize)).selected.set(*selected.offset(i as isize)); |
1162 | 1162 | i += 1
|
1163 | 1163 | }
|
1164 | 1164 | thor_games_filtered = 0;
|
|
0 commit comments