ihhub / fheroes2

fheroes2 is a recreation of Heroes of Might and Magic II game engine.
https://ihhub.github.io/fheroes2/
GNU General Public License v2.0
2.71k stars 376 forks source link

Crash on Windows build #9115

Closed ihhub closed 1 month ago

ihhub commented 1 month ago

Preliminary checks

Platform

Windows

Describe the bug

I am using the latest version of master branch and I receive a crash due to exception throw:

SDL_main:  Exception 'No mapping for the Unicode character exists in the target multi-byte code page.' occurred during application runtime.

Run the game --> Load Game --> Standard

I believe this is related to recent #9098.

Save file

None.

Additional info

No response

ihhub commented 1 month ago

Hi @oleg-derevenetz , could you please take a look at this?

I haven't update SDL libraries for Windows if it's important.

oleg-derevenetz commented 1 month ago

Hi @ihhub It looks like you have some savefile with a name that cannot be properly converted to CP_ACP (I suspect that this exception was thrown by the std::filesystem machinery, because it performs the corresponding conversions when calling std::filesystem::path::string() for example). Do you have something suspicious in this regard?

ihhub commented 1 month ago

Hi @oleg-derevenetz , these are all files I have as save files:

 Directory of c:\Users\sysadmin\AppData\Roaming\fheroes2\files\save

22/07/2024  10:52 pm    <DIR>          .
22/07/2024  10:52 pm    <DIR>          ..
18/09/2022  12:53 am            14,220 !!!.sav
25/12/2023  06:58 pm           237,602 !_0078d.sav
01/04/2022  09:26 pm            10,659 -8_morale.sav
10/07/2022  09:42 pm           116,698 -music.sav
10/07/2022  10:18 pm           195,941 0013.sav
19/12/2020  01:24 am            60,180 01 test.sav
30/08/2022  05:12 pm            60,289 1_month_hard.savc
30/08/2022  05:12 pm            60,128 1_month_normal.savc
03/03/2023  05:31 am           109,673 221.sav
02/05/2023  10:47 pm            41,752 221_bottle_bug.sav
22/03/2023  02:20 am            41,084 221_ghost_legion.sav
23/09/2021  09:32 pm            17,583 2_Kingdoms_0008.sav
04/03/2023  11:22 pm           174,193 3_Continents_0005.sav
21/02/2021  09:41 pm           218,067 3_Continents__0101.sav
19/09/2023  09:07 am           298,536 44month.sav
15/06/2023  07:17 pm           222,582 AI fog near edge 01.sav
18/05/2023  04:48 am            62,648 AI hero move outside castle 0.sav
18/05/2023  04:18 am            62,748 AI hero no castle capture 01.sav
05/10/2023  04:07 pm           223,279 AI hero no focus disparait 01.sav
25/09/2021  09:16 pm           116,164 AI instant combat bad 02.sav
25/09/2021  08:53 pm           116,458 AI instant combat bad choice.sav
05/03/2023  04:05 pm            61,849 AI issue.sav
18/05/2023  05:27 am            62,459 AI move away castle 02.sav
09/10/2021  09:18 pm            62,246 AI on stone liths no anim 01.sav
04/10/2021  07:18 pm           216,177 AI red no move many troops .sav
03/10/2021  04:34 pm           257,082 AI standing.sav
02/09/2021  09:30 pm           103,533 AI Stuck on SL.sav
05/01/2024  10:07 pm           215,081 AI-comparison-start.sav
05/06/2023  11:17 pm            19,307 AI_army_overestimation.sav
10/06/2023  05:45 pm           101,345 AI_captured_castle_left.sav
06/06/2023  10:42 pm           220,929 ai_castle_army_distribution.sav
02/07/2023  12:10 am           101,344 AI_choose_goal.sav
05/01/2024  10:10 pm           216,938 AI_comparison_end_1.0.11.sav
05/01/2024  10:28 pm           216,784 AI_comparison_end_1.0.12.sav
02/06/2023  12:31 pm           220,330 AI_comparison_end_1.0.4.sav
09/06/2023  09:20 pm           220,354 AI_comparison_end_1.0.5.sav
19/06/2023  09:03 pm           220,167 AI_comparison_end_1.0.6.sav
23/07/2023  11:14 pm           220,010 AI_comparison_end_1.0.7.sav
02/06/2023  12:27 pm           219,298 AI_comparison_start.sav
05/01/2022  04:22 am             8,937 AI_Debug.sav
02/06/2023  11:31 am           220,760 ai_doesnt_upgrade.sav
01/06/2023  09:39 pm           220,299 AI_does_not_merge_army.sav
25/09/2022  06:30 pm            19,904 AI_does_not_move.sav
02/05/2022  10:04 pm           213,435 AI_end_0.9.14.sav
02/05/2022  11:35 pm           214,630 AI_end_0.9.15.sav
26/06/2022  11:14 pm           212,989 AI_end_0.9.17.sav
30/08/2021  09:46 am           213,403 AI_end_0.9.6.sav
30/08/2021  11:56 am           213,235 AI_end_0.9.7.sav
29/09/2021  11:34 pm           213,485 AI_end_0.9.8.sav
30/03/2023  09:37 pm           215,951 AI_fog_discovery.sav
20/06/2023  09:31 pm           122,303 AI_fog_discvery.sav
01/07/2023  11:31 pm             9,312 AI_go_back.sav
13/10/2021  12:17 pm           211,333 AI_hail.sav
27/09/2021  03:38 pm           148,537 ai_hang.sav
08/04/2023  04:12 pm            19,170 AI_infinite_loop_with_castle.sav
08/04/2023  01:35 pm            19,186 AI_jumps_around.sav
13/06/2021  04:49 pm           211,613 ai_mine.sav
05/06/2023  10:59 pm           220,391 ai_removing_army.sav
13/06/2021  05:25 pm           210,111 AI_Start.sav
30/08/2021  09:39 am           210,690 AI_start_0.9.6.sav
03/05/2022  05:23 pm           218,327 AI_STUCK.sav
13/10/2021  09:47 pm           211,445 AI_test.sav
18/12/2022  02:52 pm            59,528 AI_tests.sav
10/06/2023  05:30 pm             9,309 AI_unsecure.sav
05/06/2023  10:33 pm           220,382 ai_unupgraded_army.sav
08/04/2023  04:10 pm            19,344 AI_well_abuse.sav
05/06/2023  11:38 pm            19,203 ai_wrong_decision.sav
29/09/2022  03:14 pm            19,888 alchemist_tower_abuse.sav
02/07/2023  01:03 pm             9,952 arena_visit.sav
14/06/2021  02:25 pm           212,207 army_estimation.sav
05/07/2023  09:42 pm           221,279 army_overestimation_castle_a.sav
09/10/2022  11:36 am            19,486 Arrax_the_Jerk_0105.sav
30/10/2022  12:37 am            19,486 Arrax_the_Jerk_0148.sav
30/10/2022  12:37 am            19,483 Arrax_the_Jerk_0149.sav
21/07/2022  03:25 pm            60,487 Artifact location 10.sav
08/04/2022  07:48 pm            10,449 Artifact test.savh
09/10/2022  11:49 pm            20,200 artifact_exchange.sav
23/02/2022  01:26 pm           116,132 artifact_info_dialog.sav
14/06/2022  04:23 am           200,015 Artifact_Isle_bug.sav
29/09/2022  03:20 pm            19,721 artifact_piority.sav
13/11/2021  12:45 am           120,833 attack_village_glitch.savc
25/06/2022  05:35 am            20,107 audio_crash.sav
12/06/2023  07:03 pm            56,088 AUTOSAVE (1).sav
21/09/2024  10:11 pm           219,516 AUTOSAVE.sav
05/06/2024  08:51 pm            56,633 AUTOSAVE.savc
10/09/2022  01:59 pm           191,924 AUTOSAVE.savh
12/06/2023  12:24 am           232,288 AUTOSAVE_GW.sav
01/06/2024  05:08 pm            54,054 Aventerra_0025.sav
01/06/2024  05:13 pm            54,309 Aventerra_0026.sav
29/12/2023  11:09 am           149,059 Awful battle.savc
08/07/2022  05:37 pm           218,012 A_maze_n_Grays_0107s.sav
26/08/2021  10:42 pm           255,924 A_taste_of_blood_0117.sav
05/09/2021  10:18 pm           255,926 A_taste_of_blood_011789.sav
04/08/2022  05:00 pm           100,484 background_layer_object.sav
03/09/2021  09:55 pm           104,334 Barrier.sav
14/07/2024  03:46 pm           217,670 barrier_removal.sav
12/07/2022  02:51 pm             9,356 Battle_for_Potato.savh
04/10/2023  10:39 pm            22,086 battle_summary.sav
23/05/2021  11:17 pm            60,771 Before ai embark 02.sav
15/09/2022  06:14 pm            61,457 Before AI leaving castle unde.sav
15/12/2022  01:00 pm            61,262 Before AI not attack 01.sav
09/03/2022  05:21 pm            99,046 Before Arena 01.sav
22/04/2021  03:04 am            62,091 Before attack defense freeze.sav
24/03/2022  09:23 pm             9,402 Before full bar elemental 01.savh
08/10/2023  04:18 pm           218,738 Before hero crackland 01.sav
06/03/2022  12:48 am            99,215 Before level up 01.sav
06/03/2022  01:08 am            99,495 Before Shipwreck 01.sav
11/09/2021  08:24 pm            61,774 Before Summon Boat 01.sav
08/03/2021  01:14 am            61,337 Before summon boat 1000.sav
15/06/2022  04:43 pm            60,899 Before update status win 02.sav
24/10/2021  01:38 pm            68,033 before_removing_barrier.savc
24/03/2023  02:49 am            19,447 Biznaf_1_0065.sav
03/05/2023  08:56 pm           152,976 Black_meta.sav
25/07/2022  06:34 pm            61,307 boat.sav
26/07/2022  07:32 pm            61,325 boat_drawings.sav
21/10/2023  10:03 pm           121,376 boat_purchase.sav
27/07/2022  10:32 pm            11,017 boat_rendering.sav
19/08/2021  09:49 am             7,890 Brak_nazwy_1_0001.sav
08/10/2021  10:37 pm             9,863 bridge.savh
11/09/2022  10:20 pm            58,853 Broken_Alliance_0001 start xp.sav
20/03/2024  04:30 pm            60,691 Broken_Alliance_0001-1.1.sav
24/01/2023  10:09 pm            59,407 Broken_Alliance_0001.sav
20/06/2023  10:21 pm            62,752 Broken_Alliance_0011.sav
23/10/2023  09:34 pm            61,568 Broken_Alliance_0011_new.sav
26/09/2023  09:02 am            61,618 Broken_Alliance_0012.sav
20/06/2023  10:23 pm            62,899 Broken_Alliance_0013.sav
03/02/2021  01:39 am            61,585 Broken_Alliance_0033aaa.sav
04/02/2021  01:05 am            61,746 Broken_Alliance_0034 2a.sav
07/11/2021  10:56 pm            62,431 Broken_Alliance_0034 a.sav
07/11/2021  11:02 pm            62,678 Broken_Alliance_0035 a.sav
29/09/2022  06:12 pm            62,616 Broken_Alliance_0035.sav
18/05/2023  03:59 am            63,104 Broken_Alliance_0052.sav
02/07/2023  09:33 am            62,565 Broken_Alliance_0060.sav
17/05/2023  07:02 pm            62,243 Broken_Alliance_0060a.sav
20/10/2023  10:08 pm            61,341 Broken_Alliance_0060_new.sav
20/11/2021  10:51 pm            61,334 Broken_Alliance_0061 b.sav
17/05/2023  06:18 pm            62,223 Broken_Alliance_0061.sav
17/05/2023  06:25 pm            62,196 Broken_Alliance_0061b.sav
07/11/2021  03:42 am            61,998 Broken_Alliance_0071.sav
14/12/2023  08:07 pm            60,589 Broken_Alliance_0106.sav
29/10/2022  10:28 pm            61,270 Broken_Alliance_0120.sav
21/08/2021  06:30 pm            58,784 Broken_Alliance_12.sav
20/09/2021  09:35 pm            76,044 Brothers_Troy_0105.savh
20/08/2021  10:18 pm            10,552 Bug big info window 01.sav
20/08/2021  10:22 pm            10,672 Bug big info window 01.zip
21/08/2021  07:19 pm             9,514 Bug cannot enter Stables nea.sav
12/08/2021  12:51 am            62,107 Bug View Mines 02.sav
21/02/2024  10:27 pm           121,029 bug.sav
06/09/2021  10:38 pm            20,777 bug.savc
03/11/2021  03:33 am            19,745 bug1.sav
04/05/2024  09:47 am            57,144 bug_Crystal_Mine.sav
25/10/2023  05:45 am            18,562 Button.savh
13/01/2022  10:42 pm           175,962 cant_disembark.sav
21/08/2021  05:13 pm            59,041 captured_objects.sav
25/07/2022  10:31 pm            59,232 capture_stuff.sav
09/03/2023  01:12 am           119,633 Castle no defense 0100.sav
14/04/2022  06:43 pm            24,965 Castle rows.sav
14/08/2022  09:02 pm            61,287 castle_attack.sav
22/07/2024  10:52 pm           256,699 castle_bug.sav
29/11/2022  07:38 pm           224,006 Castle_rows.sav
12/08/2023  06:46 pm             8,234 Chests.sav
11/04/2022  10:07 pm           176,366 Clouds_of_Xeen_0056.sav
25/09/2022  06:40 pm            19,902 constantly_boaring_hero.sav
25/09/2022  07:37 pm            18,858 constant_dimesion_door.sav
07/05/2023  04:35 am           112,429 crash 01.sav
18/10/2023  07:46 pm           122,740 Crash.sav
16/04/2022  03:25 pm            19,355 d1_0008.savc
16/04/2022  03:27 pm            19,408 d1_0011.savc
16/04/2022  03:29 pm            18,969 d1_0014.savc
11/02/2024  11:02 pm            19,049 d1_Complete.savc
04/05/2022  02:47 pm            55,805 d2_0001.savc
11/02/2024  11:02 pm            57,224 d2_Complete.savc
11/02/2024  11:02 pm            43,913 d3_Complete.savc
06/07/2022  05:01 pm            56,575 d4_Complete.savc
11/02/2024  11:02 pm           129,265 d5_Complete.savc
11/02/2024  11:02 pm            68,351 d6_Complete.savc
26/08/2022  09:49 pm            90,861 Decisions_Hero bug.sav
23/10/2022  12:26 pm           132,085 descendants before complete.savc
11/08/2022  05:52 pm            59,023 dimension_door.sav
04/10/2023  10:16 pm            61,866 diplomacy.sav
25/07/2022  11:51 pm            60,889 dug_hole.sav
09/09/2021  06:32 pm             8,051 Edge map sound.sav
14/06/2021  04:45 pm           212,810 end_improvedAI.sav
13/06/2021  05:30 pm           212,926 End_stables1.sav
11/05/2023  11:05 pm           110,893 Enroth_0015.sav
10/06/2023  05:42 pm           110,872 Enroth_0017.sav
23/07/2023  12:01 am           110,891 Enroth_0021.sav
23/07/2023  10:45 pm           110,885 Enroth_0022.sav
13/02/2022  07:09 pm           229,945 error.sav
07/11/2021  08:24 pm           148,632 Evil_11_0100.savc
11/02/2024  10:58 pm            46,458 Evil_1_Complete.savc
11/02/2024  10:58 pm            18,840 Evil_2_Complete.savc
11/02/2024  10:58 pm            57,265 Evil_3_Complete.savc
09/09/2021  05:03 pm            66,134 Evil_4_Complete.savc
07/02/2022  10:05 pm            18,237 Evil_5b_Complete.savc
11/02/2024  10:59 pm            18,538 Evil_5_Complete.savc
16/08/2021  12:51 pm            50,917 Evil_6_0034.savc
11/02/2024  10:59 pm            50,707 Evil_6_Complete.savc
11/02/2024  10:59 pm            62,136 Evil_7_Complete.savc
11/10/2021  03:28 pm            62,710 Evil_7_final.savc
11/02/2024  10:59 pm            56,451 Evil_8_Complete.savc
11/02/2024  10:59 pm            50,278 Evil_9_Complete.savc
21/07/2022  05:56 pm            98,684 experience.sav
03/09/2021  06:36 pm            62,268 Faerie Ring passability 01.sav
11/04/2021  08:53 pm                34 fheroes2.bin
26/09/2023  04:57 pm               459 fheroes2.hgs
21/08/2021  06:40 pm           158,263 Flotsam.sav
12/01/2024  07:22 am            20,096 FlotsamTest.sav
21/08/2021  06:13 pm           157,256 Fog Issue.sav
08/08/2022  12:38 pm           100,130 fog_edge_map.sav
10/04/2022  12:27 pm            48,738 Fool_0099.sav
06/02/2021  05:35 pm           254,285 fps.sav
03/04/2022  10:46 pm           251,309 FPS_measurement.sav
06/11/2021  08:04 am           214,215 Freeze.sav
01/01/2022  05:13 pm            58,780 French_test.sav
02/09/2021  11:02 pm           256,470 froth.sav
14/08/2021  08:43 pm            13,022 Gates.sav
25/06/2022  10:39 pm            98,807 genie.sav
27/05/2023  08:44 pm           148,474 Good_10_0001.savc
08/11/2022  11:53 pm           143,931 Good_10_0001_alliance.savc
14/12/2022  07:59 pm           145,480 Good_10_0022.savc
16/10/2021  07:10 am           145,121 Good_10_0111.savc
31/12/2021  04:22 pm           144,996 Good_10_0111_before.savc
30/03/2023  07:32 pm            61,014 Good_1_0007.savc
14/10/2021  06:20 pm            60,915 Good_1_0046.savc
11/02/2024  10:52 pm            58,663 Good_1_Complete.savc
18/11/2023  11:47 pm            20,854 Good_2_0017_stoneskin_peasan.savc
11/02/2024  10:52 pm            21,049 Good_2_Complete.savc
15/10/2021  02:14 pm            67,421 Good_3_0007.savc
15/10/2021  03:06 pm            66,886 Good_3_0028.savc
15/10/2021  10:49 pm            67,259 Good_3_0029.savc
11/02/2024  10:53 pm            67,156 Good_3_Complete.savc
11/02/2024  10:55 pm            61,641 Good_4_Complete.savc
06/02/2022  09:54 pm            18,195 Good_5b_Complete.savc
11/02/2024  10:55 pm            18,540 Good_5_Complete.savc
11/02/2024  10:56 pm            42,502 Good_6_Complete.savc
11/02/2024  10:56 pm            73,422 Good_7_Complete.savc
23/10/2021  10:43 am            50,247 Good_8_0026.savc
11/02/2024  10:57 pm            50,280 Good_8_Complete.savc
08/11/2022  10:10 pm            59,502 Good_9 final no corlagon.savc
27/05/2023  04:16 pm            61,297 Good_9_0001.savc
27/05/2023  04:21 pm            62,190 Good_9_0005.savc
27/05/2023  06:54 pm            62,198 Good_9_0008.savc
11/02/2024  10:57 pm            59,287 Good_9_Complete.savc
07/10/2022  09:05 pm            20,566 grand_elves.savc
19/10/2023  12:07 am           216,071 Great_War_II_0001.sav
31/05/2023  02:58 pm           219,259 Great_War_II_0001_objects.sav
26/01/2023  11:51 pm           214,345 Great_War_II_0001_тест.sav
19/10/2023  12:08 am           217,277 Great_War_II_0008.sav
19/10/2023  12:16 am           217,200 Great_War_II_0008_new.sav
19/10/2023  12:10 am           217,049 Great_War_II_0015.sav
19/10/2023  12:18 am           217,637 Great_War_II_0015_new.sav
30/03/2023  07:46 pm           218,018 Great_War_II_0017.sav
23/09/2023  07:15 pm           218,461 Great_War_II_0017new.sav
31/05/2023  03:08 pm           220,874 Great_War_II_0018_hero_inte.sav
31/05/2023  08:18 pm           220,778 Great_War_II_0019_coast.sav
30/03/2023  09:39 pm           217,961 Great_War_II_0021_new.sav
30/03/2023  09:43 pm           218,305 Great_War_II_0021_old.sav
19/10/2023  12:13 am           216,487 Great_War_II_0022.sav
19/10/2023  12:21 am           215,778 Great_War_II_0022_new.sav
29/11/2022  07:49 pm           214,032 Great_War_II_0028.sav
23/09/2023  05:15 pm           219,922 Great_War_II_0028_1.0.9.sav
30/03/2023  09:40 pm           217,655 Great_War_II_0028_new.sav
30/03/2023  09:44 pm           217,898 Great_War_II_0028_old.sav
14/06/2021  11:33 am           214,305 Great_War_II_0029.sav
30/03/2023  06:54 pm           217,620 Great_War_II_0037.sav
12/03/2023  11:49 pm           217,917 Great_War_II_0042.sav
31/05/2023  02:55 pm           220,205 Great_War_II_0043.sav
31/05/2023  11:11 pm           216,306 Great_War_II_0073.sav
31/05/2023  09:28 pm           216,500 Great_War_II_0084_unsorted.sav
10/06/2024  10:53 pm           218,766 Great_War_new_save.sav
07/10/2022  04:41 pm            11,760 Haste scroll.sav
07/10/2022  04:42 pm            11,724 Haste spell.sav
29/08/2021  06:38 pm            22,851 Haunted Mine.savh
10/08/2022  07:01 pm           248,193 Headless_horseman.sav
08/09/2022  01:22 am            61,919 Hero 0 xp tavern 20.sav
11/09/2022  08:42 pm            61,143 Hero 0 xp tavern 21.sav
27/07/2022  04:55 pm            98,394 hero_changing.sav
25/08/2023  11:34 pm           104,092 Hut_of_Magi.sav
04/04/2022  08:11 pm            13,443 Hypnotize 01.savh
17/12/2022  01:58 pm            60,315 incorrect_road_sprite_locatio.savc
25/09/2022  08:05 pm            18,396 infinite_action_loop.sav
25/09/2022  09:45 pm            19,069 infinite_loop_actions.sav
25/09/2022  07:48 pm            18,764 infinite_teleport.sav
30/03/2023  06:37 pm            19,361 infinite_well_usage.sav
25/06/2022  09:56 am            97,999 in_battle_sounds.sav
03/12/2023  10:49 pm           103,659 Jail hero display priority 20.sav
14/07/2024  03:45 pm           216,711 jail_removal.sav
23/05/2024  09:25 pm            19,553 King_of_Death_0002s.sav
23/05/2024  10:01 pm            19,515 King_of_Death_0006.sav
09/10/2021  10:14 pm            46,800 Lab.sav
26/09/2023  03:11 pm            22,136 Last_Hope_0007.sav
26/09/2023  03:56 pm            22,180 Last_Hope_0010.sav
26/09/2023  03:58 pm            22,113 Last_Hope_0012.sav
26/09/2023  04:02 pm            22,136 Last_Hope_0015.sav
26/09/2023  04:06 pm            22,006 Last_Hope_0016.sav
26/09/2023  04:39 pm            22,113 Last_Hope_0019.sav
26/09/2023  04:40 pm            22,123 Last_Hope_0020.sav
26/09/2023  04:41 pm            22,162 Last_Hope_0021.sav
10/06/2023  05:30 pm           110,935 Long_way_home.sav
21/03/2024  05:35 am            70,237 Lost_Relic_artifact issue.sav
04/10/2022  10:27 pm            18,587 LowScoreTest.sav
31/05/2023  11:18 pm           102,246 magellan_maps.sav
24/10/2021  12:38 am           176,825 magellan_maps_reveal.sav
14/09/2022  09:54 pm            96,019 magi.sav
14/08/2022  12:00 am            59,140 magic_garden.sav
29/09/2022  10:44 pm            20,474 medusa_attack.sav
19/02/2021  10:39 pm           254,148 midi.sav
24/02/2022  02:14 pm           256,693 mine_capture.sav
27/08/2022  10:55 am            14,281 mine_guardians.sav
31/03/2023  10:48 pm            60,847 mirrored_image.sav
25/09/2022  10:57 pm            54,578 monster_accumulation.sav
17/12/2022  02:12 pm            95,428 monster_tileset.sav
23/02/2022  09:15 pm           256,809 morale_window.sav
19/06/2022  09:55 pm             9,631 Multiplayer score.savh
28/11/2023  11:43 pm            59,654 nancyurkus42.savc
14/08/2022  09:32 pm            61,073 necro.sav
02/05/2022  03:00 pm           106,770 necromancer_AI_no_shrines.savc
28/07/2023  11:08 pm            58,971 New_Enemies_0061_stuck_in_a.sav
28/07/2023  11:48 pm            59,037 New_Enemies_0075defend.sav
01/08/2023  09:00 pm            58,555 New_Enemies_0087stillsitting.sav
01/08/2023  09:25 pm            58,763 New_Enemies_0107sits.sav
01/08/2023  09:30 pm            58,573 New_Enemies_0113nomoves.sav
17/05/2023  08:46 pm            59,433 New_Enemies_0178.sav
17/05/2023  09:42 pm            59,489 New_Enemies_0212.sav
17/05/2023  09:54 pm            59,392 New_Enemies_0254.sav
17/05/2023  10:01 pm            59,443 New_Enemies_0271.sav
29/11/2021  12:49 am             8,794 No landing direct move 01.sav
04/12/2022  05:48 pm            61,432 No troop defense 01.sav
23/07/2023  11:13 pm           220,573 non_optimal_resource_pickup.sav
02/10/2021  09:24 pm             8,057 Not Visted Wheel.sav
01/07/2023  09:26 pm             9,376 No_Name_51_0014.sav
19/11/2022  09:45 am            59,551 Oasis.sav
27/10/2021  07:20 pm            24,357 Objects map.sav
16/12/2021  06:43 pm           274,784 Pass.sav
22/09/2021  08:54 pm           117,269 Passability 100.sav
28/09/2021  06:13 am            20,570 passability.sav
10/02/2024  06:10 pm            54,458 passage_bug.savc
19/09/2022  10:08 pm            20,449 Path.sav
24/07/2023  10:13 pm           220,342 peasant_understimation.sav
06/07/2023  01:18 pm            14,476 Petite__0007qqqq.sav
10/07/2022  05:06 am           190,146 Pirate_Utopia_0054.savh
12/08/2022  02:09 am           191,589 Pirate_Utopia_0076.sav
17/04/2022  09:26 pm            20,803 POL-1_Complete.savc
18/04/2022  01:08 am            46,299 POL-2_Complete.savc
18/04/2022  04:19 pm            53,366 POL-3_Complete.savc
18/04/2022  04:28 pm            20,458 POL-5_Complete.savc
25/04/2022  05:53 pm            43,400 POL-6_Complete.savc
26/04/2022  12:57 am            59,629 POL-7_Complete.savc
27/04/2022  02:17 pm           108,629 POL_0002.savc
25/04/2022  11:25 pm            59,327 POL_0004.savc
27/04/2022  02:20 pm           108,512 POL_0005.savc
18/04/2022  01:18 pm            54,224 POL_0007.savc
17/04/2022  09:56 pm            45,737 POL_0010.savc
25/04/2022  05:59 pm            59,275 POL_0010_dragons.savc
18/04/2022  04:27 pm            20,646 POL_0011.savc
17/04/2022  09:33 pm            46,181 POL_0012.savc
25/04/2022  06:19 pm            59,519 POL_0013.savc
25/04/2022  11:28 pm            59,701 POL_0015.savc
17/04/2022  09:42 pm            46,251 POL_0016.savc
25/04/2022  11:30 pm            59,894 POL_0018.savc
18/04/2022  01:31 pm            53,936 POL_0021.savc
25/04/2022  06:25 pm            59,686 POL_0022.savc
27/04/2022  02:42 pm           108,749 POL_0023.savc
27/04/2022  02:43 pm           109,093 POL_0024.savc
27/04/2022  02:58 pm           109,427 POL_0025.savc
27/04/2022  02:49 pm           109,124 POL_0026.savc
27/04/2022  03:09 pm           108,882 POL_0028.savc
25/04/2022  11:35 pm            59,935 POL_0029.savc
27/04/2022  03:12 pm           108,559 POL_0030.savc
27/04/2022  03:17 pm           108,910 POL_0031.savc
27/04/2022  03:23 pm           108,886 POL_0032.savc
17/04/2022  10:27 pm            46,220 POL_0032_2.savc
17/04/2022  10:29 pm            46,208 POL_0032_3.savc
27/04/2022  04:21 pm           108,745 POL_0033.savc
25/04/2022  11:10 pm            59,526 POL_0034.savc
27/04/2022  04:26 pm           108,958 POL_0035.savc
27/04/2022  04:37 pm           109,003 POL_0036.savc
25/04/2022  11:39 pm            59,901 POL_0037.savc
27/04/2022  04:39 pm           109,206 POL_0038.savc
27/04/2022  04:44 pm           108,624 POL_0039.savc
27/04/2022  04:50 pm           108,870 POL_0040.savc
18/04/2022  04:12 pm            53,690 POL_0041.savc
18/04/2022  12:26 am            46,346 POL_0041_2.savc
18/04/2022  12:27 am            46,398 POL_0042.savc
18/04/2022  12:28 am            46,344 POL_0042_2.savc
25/04/2022  11:44 pm            59,825 POL_0043.savc
27/04/2022  04:59 pm           108,306 POL_0044.savc
18/04/2022  12:33 am            46,409 POL_0044_2.savc
27/04/2022  05:06 pm           108,492 POL_0045.savc
27/04/2022  05:09 pm           108,182 POL_0046.savc
18/04/2022  12:36 am            46,508 POL_0047.savc
18/04/2022  12:37 am            46,590 POL_0049.savc
25/04/2022  05:52 pm            43,474 POL_0050.savc
27/04/2022  05:18 pm           107,851 POL_0051.savc
18/04/2022  12:44 am            46,495 POL_0053.savc
18/04/2022  12:45 am            46,483 POL_0053_2.savc
27/04/2022  05:30 pm           107,995 POL_0054.savc
27/04/2022  05:32 pm           107,890 POL_0054_1.savc
18/04/2022  12:51 am            46,645 POL_0056.savc
18/04/2022  12:52 am            46,572 POL_0056_2.savc
18/04/2022  12:57 am            46,265 POL_0057.savc
27/04/2022  05:39 pm           107,780 POL_0060.savc
27/04/2022  05:45 pm           107,352 POL_0061.savc
27/04/2022  05:46 pm           107,374 POL_0062.savc
27/04/2022  05:50 pm           107,286 POL_0064.savc
26/04/2022  12:05 am            59,826 POL_0065_gate.savc
27/04/2022  05:53 pm           107,475 POL_0066.savc
26/04/2022  12:06 am            59,888 POL_0069.savc
26/04/2022  12:07 am            59,892 POL_0069_2.savc
27/04/2022  06:01 pm           107,743 POL_0072.savc
26/04/2022  12:11 am            59,952 POL_0073.savc
26/04/2022  12:12 am            59,971 POL_0074.savc
26/04/2022  12:17 am            59,970 POL_0078.savc
26/04/2022  12:19 am            60,181 POL_0079.savc
26/04/2022  12:19 am            60,088 POL_0080.savc
27/04/2022  06:11 pm           107,422 POL_0082.savc
26/04/2022  12:24 am            60,187 POL_0084.savc
27/04/2022  06:20 pm           107,196 POL_0091.savc
27/04/2022  06:21 pm           106,976 POL_0092.savc
27/04/2022  06:26 pm           106,770 POL_0099.savc
27/04/2022  06:27 pm           107,156 POL_0100.savc
27/04/2022  06:28 pm           106,918 POL_0101.savc
26/04/2022  12:41 am            59,752 POL_0104.savc
26/04/2022  12:46 am            59,688 POL_0105.savc
26/04/2022  12:55 am            59,543 POL_0106.savc
27/04/2022  06:40 pm           106,763 POL_0110.savc
27/04/2022  06:45 pm           106,691 POL_0112.savc
27/04/2022  06:49 pm           106,873 POL_0116.savc
27/04/2022  09:03 pm           106,822 POL_0117.savc
27/04/2022  09:18 pm           107,004 POL_0130.savc
27/04/2022  09:29 pm           107,079 POL_0137.savc
27/04/2022  09:38 pm           107,015 POL_0139.savc
27/04/2022  09:40 pm           106,921 POL_0140.savc
27/04/2022  09:45 pm           106,806 POL_0141.savc
27/04/2022  09:50 pm           106,872 POL_0144.savc
27/04/2022  09:58 pm           107,014 POL_0145.savc
27/04/2022  10:07 pm           106,899 POL_0148.savc
27/04/2022  10:14 pm           107,171 POL_0150.savc
27/04/2022  10:24 pm           106,836 POL_0151.savc
27/04/2022  10:24 pm           106,866 POL_0152.savc
27/04/2022  10:34 pm           106,842 POL_0154.savc
27/04/2022  10:40 pm           106,991 POL_0156.savc
11/02/2024  10:59 pm            20,490 POL_1_Complete.savc
04/12/2022  09:14 pm            45,232 POL_2_0001.savc
17/10/2023  08:02 pm            46,841 POL_2_0019.savc
17/10/2023  08:12 pm            46,922 POL_2_0028.savc
17/10/2023  08:16 pm            47,014 POL_2_0029.savc
17/10/2023  08:16 pm            46,982 POL_2_0030.savc
17/10/2023  08:25 pm            47,020 POL_2_0033.savc
17/10/2023  08:39 pm            47,050 POL_2_0041.savc
11/02/2024  10:59 pm            46,206 POL_2_Complete.savc
11/02/2024  11:00 pm            53,551 POL_3_Complete.savc
11/02/2024  11:00 pm            19,864 POL_4_Complete.savc
11/02/2024  11:00 pm            20,538 POL_5_Complete.savc
11/02/2024  11:00 pm            43,934 POL_6_Complete.savc
10/12/2022  07:00 pm            60,206 POL_7_0003.savc
17/12/2022  01:55 pm            60,228 POL_7_0080.savc
17/12/2022  01:55 pm            60,302 POL_7_0083.savc
17/12/2022  01:55 pm            60,124 POL_7_0084.savc
17/12/2022  01:55 pm            60,063 POL_7_0085.savc
17/12/2022  01:55 pm            60,102 POL_7_0086.savc
17/12/2022  01:55 pm            60,277 POL_7_0087.savc
17/12/2022  01:55 pm            60,372 POL_7_0089.savc
17/12/2022  01:55 pm            60,394 POL_7_0091.savc
17/12/2022  01:55 pm            60,282 POL_7_0092.savc
17/12/2022  01:55 pm            60,455 POL_7_0096.savc
17/12/2022  01:55 pm            60,118 POL_7_0097.savc
11/02/2024  11:00 pm            60,076 POL_7_Complete.savc
22/10/2023  08:28 pm            18,561 PositionQualityTest2.savh
16/06/2022  04:09 pm            28,574 Potato_Ice_Cream.sav
24/03/2022  07:22 pm            22,106 Red Tower.sav
20/06/2022  10:40 pm           115,890 restore_magic_book.sav
18/05/2024  10:52 am             7,793 Resurrection_0001.sav
09/03/2023  01:05 am           119,563 Revolution_0027.sav
12/02/2022  12:24 pm           116,463 Revolution_0062.sav
29/04/2023  06:52 pm            11,652 Scared AI.sav
14/04/2022  02:48 pm           120,179 Seven_Lakes-5.sav
18/10/2023  08:59 pm           118,909 Seven_Lakes_0002.sav
18/10/2023  09:01 pm           119,160 Seven_Lakes_0003.sav
02/07/2023  01:09 pm             8,723 shrine_spells.sav
21/06/2024  07:47 am            12,622 Silvia_in_Love_0002.sav
21/06/2024  04:14 pm            12,628 Silvia_in_Love_0003.sav
09/09/2023  12:06 pm           273,245 Slayer_Legacy_0025.sav
08/06/2023  07:49 am            19,046 Slugfest_EnemiesNotMoving.sav
12/06/2022  11:29 pm            66,170 sound_crash.savc
12/06/2022  11:34 pm            66,630 sound_crash_0.9.15.savc
26/05/2022  12:42 am           107,466 stablesbug.savc
05/01/2022  05:02 pm           113,940 Stone Liths.sav
08/11/2022  06:40 pm             7,481 Strong-weak hero.sav
03/06/2021  08:28 am            56,011 stuck_bug.sav
06/05/2023  04:04 am            62,266 Suicidal AI 10.sav
05/01/2022  10:35 pm           145,882 Surf_and_Turf_0001.sav
26/08/2023  10:02 am            64,598 surrender_window.sav
11/08/2022  11:39 am           100,183 tall_objects.sav
12/06/2023  09:45 am           232,434 The_Great_War_0069.sav
13/06/2023  10:56 am           232,372 The_Great_War_0098.sav
03/10/2020  04:31 pm           254,214 The_Legends_0099.sav
29/03/2021  10:29 am           254,572 The_Legends_0105.sav
11/04/2021  01:19 pm           252,863 The_Legends_0135.sav
11/04/2021  01:26 pm           253,085 The_Legends_0139.sav
11/04/2021  01:29 pm           253,102 The_Legends_0140.sav
11/04/2021  01:34 pm           252,963 The_Legends_0142.sav
01/05/2023  04:53 pm           159,098 The_Road_Home_0001.sav
23/07/2023  11:10 pm           221,093 too_weak_for_peasants.sav
01/04/2023  11:06 am            19,305 town_portal_infinite_loop.sav
24/07/2023  11:38 pm           220,167 trading_post.sav
09/10/2021  01:12 am           267,982 tree_on_road_bug.sav
14/01/2023  06:13 pm            25,530 UA dig out.sav
15/06/2022  11:55 am            94,522 ultimate_artifact.sav
21/07/2022  08:49 am           136,140 United_or_Bust_0017.sav
25/09/2022  06:53 pm            20,044 unoptimized_whirlpool_usage.sav
03/09/2021  08:06 pm           104,419 Unreachable area.sav
06/09/2021  10:47 pm            60,698 vampire_movement_sounds.sav
06/09/2021  10:49 pm            60,870 vampire_movement_sounds.zip
11/02/2024  11:03 pm            15,832 vh1_Complete.savc
24/10/2021  05:01 am            67,682 vh2_0060.savc
08/03/2023  11:07 pm            69,898 vh2_bad_mine.savc
11/02/2024  11:03 pm            69,186 vh2_Complete.savc
13/04/2022  01:22 pm           120,504 vh4_0007.savc
13/04/2022  01:31 pm           120,364 vh4_0009.savc
13/04/2022  01:36 pm           120,236 vh4_0012.savc
13/04/2022  01:41 pm           120,253 vh4_0018.savc
13/04/2022  01:45 pm           120,168 vh4_0019.savc
13/04/2022  01:54 pm           119,821 vh4_0027.savc
13/04/2022  01:59 pm           119,716 vh4_0029.savc
13/04/2022  02:20 pm           119,817 vh4_0036.savc
13/04/2022  02:38 pm           119,793 vh4_0036_2.savc
13/04/2022  02:44 pm           119,721 vh4_0036_3.savc
13/04/2022  03:12 pm           119,781 vh4_0037.savc
13/04/2022  08:50 pm           120,013 vh4_0040.savc
13/04/2022  09:54 pm           120,021 vh4_0041.savc
13/04/2022  10:02 pm           119,960 vh4_0043.savc
13/04/2022  10:17 pm           119,682 vh4_0051.savc
13/08/2021  01:09 pm           119,202 vh4_0054_1.savc
13/04/2022  10:20 pm           118,710 vh4_Complete.savc
29/09/2021  12:12 am            59,286 view_towns.sav
25/09/2022  07:02 pm            19,881 weird_ai_path.sav
13/01/2022  10:33 pm           176,005 whirlpool_addiction.sav
11/02/2024  11:01 pm            53,466 Wizards_1_Complete.savc
02/08/2021  09:25 am            55,485 Wizards_2_0001.savc
11/02/2024  11:01 pm            56,718 Wizards_2_Complete.savc
11/02/2024  11:01 pm            64,502 Wizards_3_Complete.savc
11/10/2021  04:59 pm            18,479 Wizard_0046.sav
10/07/2022  09:14 pm            19,617 Wizard_s_Land_2_0001.sav
19/05/2023  01:10 am               284 Wizard_s_Land_3_0001.sav
17/09/2023  12:23 am            19,558 Wizard_s_Land_3_0015.sav
01/04/2023  11:12 am            19,563 Wizard_s_Land_3_0026.sav
01/04/2023  11:12 am            19,349 Wizard_s_Land_3_0032.sav
01/04/2023  11:13 am            19,364 Wizard_s_Land_3_0036.sav
01/04/2023  11:13 am            19,356 Wizard_s_Land_3_0050.sav
01/04/2023  11:15 am            19,347 Wizard_s_Land_3_0055.sav
03/06/2023  02:38 pm            19,377 Wizard_s_Land_3_0068.sav
03/06/2023  02:38 pm            19,376 Wizard_s_Land_3_0070.sav
01/06/2023  10:59 am            19,322 Wizard_s_Land_3_0094.sav
15/12/2022  10:49 am            18,985 Wizard_s_Land_3_0103.sav
01/06/2023  11:00 am            19,301 Wizard_s_Land_3_0107.sav
04/05/2023  12:38 am            19,116 Wizard_s_Land_3_0112.sav
15/12/2022  10:50 am            18,928 Wizard_s_Land_3_0118.sav
30/07/2021  02:52 pm           256,401 Wlr.sav
20/08/2021  09:56 pm           256,593 Wlr.zip
31/08/2021  04:41 pm            62,559 Wrong portrait and position 0.sav
28/09/2022  10:41 pm            19,168 wrong_teleport_path.sav
26/08/2023  09:46 am           103,520 xanadu.sav
18/12/2022  07:39 pm            61,856 X_CRASH_ON_TAKE_RES.savc
20/09/2023  12:08 pm            34,432 yellow AI ignores.sav
             566 File(s)     53,377,976 bytes
               2 Dir(s)  10,763,825,152 bytes free

All of them contain English only characters.

ihhub commented 1 month ago

If it helps:

System Locale:             en-us;English (United States)
Input Locale:              en-us;English (United States)
ihhub commented 1 month ago

Hi @oleg-derevenetz , Found: Great_War_II_0001_тест.sav <--- this is the one causing problems. I think I got it from one of PRs or from Discord.

ihhub commented 1 month ago

More specifically this line causes a crash:

const std::string fileName = entry.path().filename().string();
oleg-derevenetz commented 1 month ago

If it helps:

System Locale:             en-us;English (United States)
Input Locale:              en-us;English (United States)

Yeah, almost certainly this caused by std::filesystem's inability to convert the filename, because these symbols are absent in the system locale. On Windows with CP1251 there is no issues with conversions from NTFS UTF-16 to CP_ACP:

load

Need to think about whether we can do something about it...

More specifically this line causes a crash:

const std::string fileName = entry.path().filename().string();

Yes, that's what I assumed. string() call is not able to convert this filename to CP_ACP, since "English (United States)" uses only ASCII symbols I suppose.

oleg-derevenetz commented 1 month ago

Hi @ihhub could you please try the version from #9117 on your setup? The idea is to force the std::filesystem to convert UTF-16 filenames on Windows to UTF-8 (AFAIK this should never fail if there is a properly formed UTF-16 filename returned by Windows API) and then try to convert it from UTF-8 to CP_ACP by our home-grown conversion function that should never throw.

oleg-derevenetz commented 1 month ago

I just tried the #9117 with the following list of save files:

list

fheroes2 doesn't show that save file with hieroglyphs in its name in the list of save files and cannot open it to get its metadata:

21.09.2024 19:22:09: [DBG_GAME] Game::LoadSAV2FileInfo:  Error opening the file C:\Users\Oleg\AppData\Roaming\fheroes2\files\save\????.sav

but it doesn't throw an exception anymore.

ihhub commented 1 month ago

Hi @oleg-derevenetz , #9117 fixes the crash. This is what I see in logs (which is fine):

22.09.2024 15:34:19: [ERROR]    StreamFile::open:  Error opening file C:\Users\sysadmin\AppData\Roaming\fheroes2\files\save\Great_War_II_0001_????.sav
22.09.2024 15:34:19: [DBG_GAME] Game::LoadSAV2FileInfo:  Error opening the file C:\Users\sysadmin\AppData\Roaming\fheroes2\files\save\Great_War_II_0001_????.sav