Bug 9227

Summary: civclient падает с assertion failed
Product: Sisyphus Reporter: Anton Farygin <rider>
Component: freeciv-clientAssignee: placeholder <placeholder>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: major    
Priority: P2 CC: glebfm, ldv, placeholder
Version: unstable   
Hardware: all   
OS: Linux   
Attachments:
Description Flags
civgame+0680.sav.gz none

Description Anton Farygin 2006-03-11 15:11:18 MSK
Время от времени civclient падает с сообщением:

(civclient:6333): Pango-WARNING **: Invalid UTF-8 string passed to
pango_layout_set_text()

Pango-ERROR **: file pango-layout.c: line 3286 (pango_layout_check_lines):
assertion failed: (end <= (layout->text + layout->length))
aborting...
Trace/breakpoint trap

Система: x86_64, последний Sisyphus, локаль ru_RU.UTF-8
Comment 1 Anton Farygin 2006-03-12 11:54:07 MSK
Created attachment 1424 [details]
civgame+0680.sav.gz

save, на открытии которого падает freeciv.

Вылезает это где-то в районе переводов. С отладкой, добавленной в pango, видно,
что ему не нравится текст "Босния и Герцеговина".
text:Компьютер
text:Filipovic Nikola
text:Босния и Герцего&#65533;

(civclient:13292): Pango-WARNING **: Invalid UTF-8 string passed to
pango_layout_set_text()

Pango-ERROR **: file pango-layout.c: line 3287 (pango_layout_check_lines):
assertion failed: (end <= (layout->text + layout->length))
aborting...
Trace/breakpoint trap
Comment 2 Anton Farygin 2006-03-12 11:56:54 MSK
В локали C не воспроизводится, в локали ru_RU.KOI8-R тоже падает.
Comment 3 Anton Farygin 2006-03-12 12:34:57 MSK
Всё дело в размере Nation в структуре packet_game_load

способ воспроизведения 100%: начать игру под Босния и Герцеговина, сохранить,
выйти и загрузить сохранённую игру.
Comment 4 Dmitry V. Levin 2006-03-13 03:44:19 MSK
MAX_LEN_NAME is too short?
Comment 5 Anton Farygin 2006-03-13 16:15:31 MSK
я пробовал увеличить. кончилось это плохо
Хотя если честно я пробовал увеличить только в клиенте.. наверное потому и было
плохо (там пакет формируется на сервере).
на досуге проверю.

Кстати, увеличение этого значения не повлияет на связь с другими freeciv серверами ?

Comment 6 Anton Farygin 2007-04-06 16:31:59 MSD
Что-то изменилось ?
Comment 7 Egor Vyscrebentsov 2007-04-25 10:05:38 MSD
Воспроизводится ли с текущей (2.1.0-alt0.b4) версией? Вроде в апстриме что-то на
эту тему фиксили.
Comment 8 Egor Vyscrebentsov 2007-08-23 08:19:14 MSD
Fixed in 2.1.0-alt0.b4

> Хотя если честно я пробовал увеличить только в клиенте.. наверное потому и
было плохо (там пакет формируется на сервере).

Формируется на сервере, разбирается на клиенте, описания пакетов на сервере и
клиенте должны совпадать. При изменении описания какого-либо пакета необходимо
также изменить строку "network capabilities" - упрощённо говоря, версию
протокола сетевого обмена.

> Кстати, увеличение этого значения не повлияет на связь с другими freeciv
серверами ?

Повлияет, у клиента и сервера будут разные версии протокола обмена под одним
именем -> segfaults expected.