Complete.Org: Mailing Lists: Archives: freeciv-dev: September 2004:
[Freeciv-Dev] (PR#10027) solaris charset tools suck
Home

[Freeciv-Dev] (PR#10027) solaris charset tools suck

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: undisclosed-recipients: ;
Subject: [Freeciv-Dev] (PR#10027) solaris charset tools suck
From: "Brett Albertson" <brett.albertson@xxxxxxxxxxxx>
Date: Wed, 22 Sep 2004 10:22:29 -0700
Reply-to: rt@xxxxxxxxxxx

<URL: http://rt.freeciv.org/Ticket/Display.html?id=10027 >

> [jdorje - Wed Sep 22 15:31:28 2004]:
> 
> Oops, I'm wrong.  The fc_fprintf-before-initialization bug was fixed
> but
> not the recursive-fc_fprintf bug.
> 
> This patch (based on the 2 earlier ones) should use UTF-8 instead of
> encoding 646, and should avoid the recursive loop.  How does it work?
> 
> Assuming that there is no client crash, do accented names show up
> correctly in the client?  What about in the server console?

It doesn't crash on startup now.  I started a new game and didn't see
any messages about bad conversions.  I also didn't see any accented
names, but there may not have been any in the game.  I loaded a very old
saved game that did give me trouble before.  The results are below.


dev-null:{bretta}$ civserver -f civgame+1110md.sav.gz
This is the server for Freeciv version 1.14.99-devel
You can learn a lot about Freeciv at http://www.freeciv.org/
2: Loading rulesets
2: Now accepting new client connections.

For introductory help, type 'help'.
> 
2: Connection request from bretta from localhost
2: c1 has client version 1.14.99-devel
2: bretta has connected from localhost.
> 1: Invalid string conversion from UTF-8 to UTF-8.

(civclient:4432): Gtk-CRITICAL **: file gtktextbuffer.c: line 548:
assertion `g_utf8_validate (text, len, NULL)' failed
start
Starting game.
> 
Player 'Andrew Jackson' now has AI skill level 'easy'.
Player 'Ngo Ding Diem' now has AI skill level 'easy'.
Player 'João I' now has AI skill level 'easy'.
Player 'Vytautas' now has AI skill level 'easy'.
Player 'Oliver Cromwell' now has AI skill level 'easy'.
Player 'Stilicho' now has AI skill level 'easy'.

(civclient:4432): Gtk-CRITICAL **: file gtktextbuffer.c: line 548:
assertion `g_utf8_validate (text, len, NULL)' failed
1: last message repeated 2 times
1: last message repeated 2 times (total 4 repeats)
1: last message repeated 4 times (total 8 repeats)
1: last message repeated 8 times (total 16 repeats)

** (civclient:4432): WARNING **: Invalid UTF8 string passed to
pango_layout_set_text()

** (civclient:4432): WARNING **: Invalid UTF8 string passed to
pango_layout_set_text()

** (civclient:4432): WARNING **: Invalid UTF8 string passed to
pango_layout_set_text()

and there were *a lot* more messages after that.  Of course, that game
was started before the whole "is_sane_name" patching happened, so there
might be some invalid city names.  I'll try to attach the save game in a
few minutes (on port 8088).  Here's an ldd of civclient just so you can
see what I'm linked against.

dev-null:{bretta}$ ldd /usr/local/bin/civclient
        libsocket.so.1 =>        /usr/lib/libsocket.so.1
        libnsl.so.1 =>   /usr/lib/libnsl.so.1
        libintl.so.3 =>  /usr/local/lib/libintl.so.3
        libiconv.so.2 =>         /usr/local/lib/libiconv.so.2
        libgtk-x11-2.0.so.0 =>   /usr/lib/libgtk-x11-2.0.so.0
        libgdk-x11-2.0.so.0 =>   /usr/lib/libgdk-x11-2.0.so.0
        libatk-1.0.so.0 =>       /usr/lib/libatk-1.0.so.0
        libgdk_pixbuf-2.0.so.0 =>        /usr/lib/libgdk_pixbuf-2.0.so.0
        libm.so.1 =>     /usr/lib/libm.so.1
        libpangox-1.0.so.0 =>    /usr/lib/libpangox-1.0.so.0
        libpango-1.0.so.0 =>     /usr/lib/libpango-1.0.so.0
        libgobject-2.0.so.0 =>   /usr/lib/libgobject-2.0.so.0
        libgmodule-2.0.so.0 =>   /usr/lib/libgmodule-2.0.so.0
        libdl.so.1 =>    /usr/lib/libdl.so.1
        libglib-2.0.so.0 =>      /usr/lib/libglib-2.0.so.0
        libnls.so.1 =>   /usr/lib/libnls.so.1
        libz.so.1 =>     /usr/lib/libz.so.1
        libc.so.1 =>     /usr/lib/libc.so.1
        libmp.so.2 =>    /usr/lib/libmp.so.2
        libgcc_s.so.1 =>         /usr/local/lib/libgcc_s.so.1
        libXext.so.0 =>  /usr/lib/libXext.so.0
        libX11.so.4 =>   /usr/lib/libX11.so.4
        /usr/platform/SUNW,Ultra-5_10/lib/libc_psr.so.1

It's linked against the GNU iconv package in /usr/local.

-- 
Brett Albertson
brett.albertson@xxxxxxxxxxxx


[Prev in Thread] Current Thread [Next in Thread]