Project

General

Profile

Actions

Bug #1774

open

3.2.1: Fails to load save file.

Added by Stefan Jones 21 days ago. Updated 15 days ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
11/25/2025
Due date:
% Done:

0%

Estimated time:

Description

Fedora Linux 42, Playing on QT client, but loading the same save file in the gtk client also reproduces the crash.

I loaded a saved game. Hit the turn done button. Map disappeared; freeciv menu screen displayed.

I tried loading a few earlier autosaves. Same problem.

/var/log/messages shows an assertion failure, and a core dump being processed:

Nov 22 10:49:07 linuxgame freeciv-gtk4[52447]: 1: in gui_to_map_pos() [mapview_common.c::626]: assertion 'dx >= 0 && dx < W' failed.
Nov 22 10:49:07 linuxgame freeciv-gtk4[52447]: 1: Please report this message at https://redmine.freeciv.org/projects/freeciv
Nov 22 10:49:07 linuxgame freeciv-gtk4[52447]: 1: in gui_to_map_pos() [mapview_common.c::626]: assertion 'dx >= 0 && dx < W' failed.
Nov 22 10:49:07 linuxgame freeciv-gtk4[52447]: 1: Please report this message at https://redmine.freeciv.org/projects/freeciv
Nov 22 10:49:07 linuxgame audit[53055]: ANOM_ABEND auid=1000 uid=1000 gid=1000 ses=3 subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 pid=53055 comm="freeciv-server" exe="/usr/bin/freeciv-server" sig=11 res=1
Nov 22 10:49:07 linuxgame kernel: freeciv-server[53055]: segfault at 0 ip 00005621a9b7dcf9 sp 00007fff7d946bf0 error 4 in freeciv-server[19fcf9,5621a99de000+2fd000] likely on CPU 2 (core 2, socket 0)
Nov 22 10:49:07 linuxgame kernel: Code: 41 56 41 55 41 54 53 48 83 ec 78 44 89 45 8c 64 48 8b 04 25 28 00 00 00 48 89 45 c8 31 c0 84 d2 0f 84 c4 03 00 00 48 8b 46 58 <8b> 00 8b 0d bb 7d 09 01 99 f7 f9 89 55 b4 89 45 b0 f6 05 4f 7d 09
Nov 22 10:49:07 linuxgame systemd-coredump[53130]: Process 53055 (freeciv-server) of user 1000 terminated abnormally with signal 11/SEGV, processing...
Nov 22 10:49:07 linuxgame audit: BPF prog-id=143 op=LOAD
Nov 22 10:49:07 linuxgame audit: BPF prog-id=144 op=LOAD
Nov 22 10:49:07 linuxgame audit: BPF prog-id=145 op=LOAD
Nov 22 10:49:07 linuxgame systemd[1]: Started systemd-coredump@7-53130-0.service - Process Core Dump (PID 53130/UID 0).
Nov 22 10:49:07 linuxgame audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-coredump@7-53130-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Nov 22 10:49:07 linuxgame audit: BPF prog-id=146 op=LOAD
Nov 22 10:49:07 linuxgame audit: BPF prog-id=147 op=LOAD
Nov 22 10:49:07 linuxgame audit: BPF prog-id=148 op=LOAD
Nov 22 10:49:07 linuxgame systemd[1]: Started drkonqi-coredump-processor@7-53130-0.service - Pass systemd-coredump journal entries to relevant user for potential DrKonqi handling.
Nov 22 10:49:07 linuxgame audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=drkonqi-coredump-processor@7-53130-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Nov 22 10:49:07 linuxgame abrt-dump-journal-core[1023]: Failed to obtain all required information from journald
Nov 22 10:49:08 linuxgame systemd-coredump[53131]: Process 53055 (freeciv-server) of user 1000 dumped core.#012#012Module /usr/bin/freeciv-server from rpm freeciv-3.2.1-1.fc42.x86_64#012Module libpcre2-8.so.0 from rpm pcre2-10.46-1.fc42.x86_64#012Module libcrypt.so.2 from rpm libxcrypt-4.5.2-1.fc42.x86_64#012Module libselinux.so.1 from rpm libselinux-3.8-3.fc42.x86_64#012Module libbrotlicommon.so.1 from rpm brotli-1.1.0-6.fc42.x86_64#012Module libsasl2.so.3 from rpm cyrus-sasl-2.1.28-30.fc42.x86_64#012Module libevent-2.1.so.7 from rpm libevent-2.1.12-15.fc42.x86_64#012Module libkeyutils.so.1 from rpm keyutils-1.6.3-5.fc42.x86_64#012Module libkrb5support.so.0 from rpm krb5-1.21.3-6.fc42.x86_64#012Module libcom_err.so.2 from rpm e2fsprogs-1.47.2-3.fc42.x86_64#012Module libk5crypto.so.3 from rpm krb5-1.21.3-6.fc42.x86_64#012Module libkrb5.so.3 from rpm krb5-1.21.3-6.fc42.x86_64#012Module libunistring.so.5 from rpm libunistring-1.1-9.fc42.x86_64#012Module libicudata.so.76 from rpm icu-76.1-4.fc42.x86_64#012Module libbrotlidec.so.1 from rpm brotli-1.1.0-6.fc42.x86_64#012Module libgssapi_krb5.so.2 from rpm krb5-1.21.3-6.fc42.x86_64#012Module libcrypto.so.3 from rpm openssl-3.2.6-2.fc42.x86_64#012Module libssl.so.3 from rpm openssl-3.2.6-2.fc42.x86_64#012Module libpsl.so.5 from rpm libpsl-0.21.5-5.fc42.x86_64#012Module libssh.so.4 from rpm libssh-0.11.3-1.fc42.x86_64#012Module libidn2.so.0 from rpm libidn2-2.3.8-1.fc42.x86_64#012Module libnghttp2.so.14 from rpm nghttp2-1.64.0-3.fc42.x86_64#012Module libtinfo.so.6 from rpm ncurses-6.5-5.20250125.fc42.x86_64#012Module libz.so.1 from rpm zlib-ng-2.2.5-2.fc42.x86_64#012Module libzstd.so.1 from rpm zstd-1.5.7-1.fc42.x86_64#012Module liblzma.so.5 from rpm xz-5.8.1-2.fc42.x86_64#012Module libbz2.so.1 from rpm bzip2-1.0.8-20.fc42.x86_64#012Module libicuuc.so.76 from rpm icu-76.1-4.fc42.x86_64#012Module libcurl.so.4 from rpm curl-8.11.1-6.fc42.x86_64#012Module libreadline.so.8 from rpm readline-8.2-13.fc42.x86_64#012Stack trace of thread 53055:#012#0 0x00005621a9b7dcf9 invasion_funct (/usr/bin/freeciv-server + 0x19fcf9)#012#1 0x00005621a9b82beb find_something_to_kill (/usr/bin/freeciv-server + 0x1a4beb)#012#2 0x00005621a9b77e3e kill_something_with (/usr/bin/freeciv-server + 0x199e3e)#012#3 0x00005621a9b7a21b military_advisor_choose_build (/usr/bin/freeciv-server + 0x19c21b)#012#4 0x00005621a9b59730 dai_do_last_activities (/usr/bin/freeciv-server + 0x17b730)#012#5 0x00005621a99ecf34 end_phase.lto_priv.0 (/usr/bin/freeciv-server + 0xef34)#012#6 0x00005621a9a0323e srv_main (/usr/bin/freeciv-server + 0x2523e)#012#7 0x00005621a99e44a9 main (/usr/bin/freeciv-server + 0x64a9)#012#8 0x00007f76a72e6575 __libc_start_call_main (libc.so.6 + 0x3575)#012#9 0x00007f76a72e6628 __libc_start_main
@GLIBC_2.34 (libc.so.6 + 0x3628)#012#10 0x00005621a99e4ea5 _start (/usr/bin/freeciv-server + 0x6ea5)#012ELF object binary architecture: AMD x86-64
Nov 22 10:49:08 linuxgame systemd1: : Deactivated successfully.
Nov 22 10:49:08 linuxgame audit1: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=systemd-coredump@7-53130-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Nov 22 10:49:08 linuxgame audit: BPF prog-id=145 op=UNLOAD
Nov 22 10:49:08 linuxgame audit: BPF prog-id=144 op=UNLOAD
Nov 22 10:49:08 linuxgame audit: BPF prog-id=143 op=UNLOAD
Nov 22 10:49:08 linuxgame freeciv-gtk452447: 1: Gtk: gtk_window_destroy: assertion 'GTK_IS_WINDOW (window)' failed
Nov 22 10:49:08 linuxgame freeciv-gtk452447: 1: Lost connection to server: server disconnected.
Nov 22 10:49:08 linuxgame systemd1: : Consumed 738ms CPU time, 247.9M memory peak.
Nov 22 10:49:08 linuxgame systemd1: : Deactivated successfully.
Nov 22 10:49:08 linuxgame audit1: SERVICE_STOP pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='unit=drkonqi-coredump-processor@7-53130-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Nov 22 10:49:08 linuxgame systemd1438: Started - Launch DrKonqi for a systemd-coredump crash (PID 53132/UID 0).
Nov 22 10:49:08 linuxgame drkonqi-coredump-launcher53142: Unable to find file for pid 53055 expected at "kcrash-metadata/freeciv-server.48dbca489d2d47cbbe6f7d4b02a3389b.53055.ini"
Nov 22 10:49:08 linuxgame drkonqi-coredump-launcher53142: Nothing handled the dump :O
Nov 22 10:49:08 linuxgame audit: BPF prog-id=148 op=UNLOAD
Nov 22 10:49:08 linuxgame audit: BPF prog-id=147 op=UNLOAD
Nov 22 10:49:08 linuxgame audit: BPF prog-id=146 op=UNLOAD
Nov 22 10:49:10 linuxgame abrt-server53145: Deleting problem directory ccpp-2025-11-22-10:49:08.762831-53055 (dup of ccpp-2025-11-22-10:28:49.263056-48263)
Nov 22 10:49:10 linuxgame abrt-applet1897: g_app_info_should_show: assertion 'G_IS_APP_INFO (appinfo)' failed
Nov 22 10:49:10 linuxgame abrt-notification53195: Process 48263 (freeciv-server) crashed in invasion_funct()
Nov 22 10:49:10 linuxgame abrt-applet1897: g_app_info_should_show: assertion 'G_IS_APP_INFO (appinfo)' failed
Nov 22 10:49:13 linuxgame systemd1438: : Consumed 4min 29.753s CPU time, 583.1M memory peak.@

I started a new game after running into this. I was able to load manually saved games a few times. I did a manual save after last night's play session.

I upgraded to Fedora 43 this morning. I tried starting the last few manual saves, and an auto save. The behavior was a little different. I saw, on the "loading" screen, a briefly appearing message about not being able to load the save file. There was also a spatter of non alpha-numeric characters. After the failed load attempt, the game was stuck on the "Loading" page, while music continued to play.

I started the game in a console. Got the following:

stefan@linuxgame:/$ freeciv-qt
svg flags not enabled in this freeciv build.
Invalid string conversion from UTF-8 to UTF-8: Invalid or incomplete multibyte or wide character.
stefan@linuxgame:/$ freeciv-qt
svg flags not enabled in this freeciv build.
Invalid string conversion from UTF-8 to UTF-8: Invalid or incomplete multibyte or wide character.
stefan@linuxgame:/$

I ran from the console with a log file.
@
Console: 'saveturns' has been set to 4.

stefan: '/load /home/stefan/.freeciv/saves/Korea_pirates.sav.zst'
Invalid string conversion from UTF-8 to UTF-8: Invalid or incomplete multibyte or wide character.
1: in load_command() [stdinhand.c::3864]: Error loading savefile '/home/stefan/.freeciv/saves/Korea_pirates.sav.zst': In secfile_from_input_file() [registry_ini.c:446]: secfile '/home/stefan/.freeciv/saves/Korea_pirates.sav.zst' in section 'NULL': Expected entry name
file "/home/stefan/.freeciv/saves/Korea_pirates.sav.zst", line 1, pos 0
�4(9ř�AE�r��,(��9FQ8▒��ax0▒���L▒�P���8{H&�1�<y@6q88P ��ĉH(�b��!q(
��▒����PS�s�àx*�B< �c�4�!�4�B���C5lY8��#b�j8e�sH�s0IC��c�p
'
Invalid string conversion from UTF-8 to UTF-8: Invalid or incomplete multibyte or wide character.
1: Error loading savefile '/home/stefan/.freeciv/saves/Korea_pirates.sav.zst': In secfile_from_input_file() [registry_ini.c:446]: secfile '/home/stefan/.freeciv/saves/Korea_pirates.sav.zst' in section 'NULL': Expected entry name
file "/home/stefan/.freeciv/saves/Korea_pirates.sav.zst", line 1, pos 0
�4(9ř�AE�r��,(��9FQ8▒��ax0▒���L▒�P���8{H&�1�<y@6q88P ��ĉH(�b��!q(
��▒����PS�s�àx*�B< �c�4�!�4�B���C5lY8��#b�j8e�sH�s0IC��c�p
'

stefan: '/quit'
3: in cmd_reply_line() [stdinhand.c::371]: Goodbye.
3: Goodbye.
3: in server_remove_player() [plrhand.c::1952]: Removing player Stefan.
3: Removing player Stefan.
3: in server_remove_player() [plrhand.c::1952]: Removing player AI*2.
3: Removing player AI*2.
3: in server_remove_player() [plrhand.c::1952]: Removing player AI*3.
3: Removing player AI*3.
3: in server_remove_player() [plrhand.c::1952]: Removing player AI*4.
3: Removing player AI*4.
3: in server_remove_player() [plrhand.c::1952]: Removing player AI*5.
3: Removing player AI*5.
3: in server_remove_player() [plrhand.c::1952]: Removing player AI*6.
3: Removing player AI*6.@


Files

Korea_pirates.sav.zst (223 KB) Korea_pirates.sav.zst Stefan Jones, 11/26/2025 04:14 AM
Actions #1

Updated by Marko Lindqvist 21 days ago

Can you attach such a savegame to this ticket for inspection.

Actions #2

Updated by Stefan Jones 21 days ago

Attached.

Update: I've noticed two behaviors. One resulted in an error message on load. The other resulted in a core dump.

Let's start with this one, saved yesterday.

Actions #3

Updated by Marko Lindqvist 21 days ago

The savegame loads fine here.

According to your log it fails from the very beginning "line 1, pos 0" for you.

One possibility is that as part of Fedora update you've got a new build of freeciv that erroneously does not have support for .zst savegame decompression built in. Maybe take this to Fedora maintainer / bug tracker?

Actions #4

Updated by Marko Lindqvist 17 days ago

Your original issue, server crash on invasion_funct(), is likely a duplicate of #1768

Actions #5

Updated by Stefan Jones 15 days ago

Marko Lindqvist wrote in #note-4:

Your original issue, server crash on invasion_funct(), is likely a duplicate of #1768

Marko:

After seeing your response of 6 days ago, I totally removed freeciv and all configuration files. Just totally wiped out everything under ~/.freeciv.

I reinstalled, and have not seen a recurrence of the corrupt save file problem.

I have managed to replicate the core dump scenario. It generally happens late in the game.

Actions

Also available in: Atom PDF