|
| 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