Page 1 of 1

[FIXED] 0.0.29 (Git) eAthena client segfaults

Posted: 11 May 2009, 12:50
by Ces
Well, I thought it was time to test the merged client. Builds nicely but crashes after logging in.

* System: Ubuntu 9.04 (Jaunty).
* Libraries: ldd
* Removed user configuration
* Building: git pull ; autoreconf -i ; ./configure ; make
* Running: ./src/tmw --no-opengl (--skip-update) --data ~/kod/tmw/tmwdata

Log file (running with --skip-update/-u):

Code: Select all

[11:26:41.81] Network: Server: The Mana World (81.161.192.4:6122)
[11:26:41.85] Window::~Window("Användarnamn")
[11:26:41.85] State: CHAR_SERVER
[11:26:42.31] State: LOADDATA
[11:26:42.31] Warning: Failed to load colors.xml: Filen eller katalogen finns inte
[11:26:42.31] Error loading colors.xml
[11:26:42.31] Trying TMW's color file, hair.xml.
[11:26:42.31] Loaded /home/kess/kod/tmw/tmwdata/hair.xml
[11:26:42.31] Initializing item database...
[11:26:42.31] Loaded /home/kess/kod/tmw/tmwdata/items.xml
Log file (running without --skip-update/-u):

Code: Select all

[11:45:18.74] Window::~Window("Uppdaterar...")
[11:45:18.74] State: LOADDATA
[11:45:18.74] Warning: Failed to load colors.xml: Filen eller katalogen finns inte
[11:45:18.74] Error loading colors.xml
[11:45:18.74] Trying TMW's color file, hair.xml.
[11:45:18.74] Loaded /home/kess//.tmw/updates/updates.themanaworld.org/update-75ac8ab..6b01565.zip/hair.xml
[11:45:18.74] Initializing item database...
[11:45:18.75] Loaded /home/kess//.tmw/updates/updates.themanaworld.org/update-6b01565..9d0c1cf.zip/items.xml
Blah! I don’t get it. :|

Re: 0.0.29 (Git) eAthena client segfaults

Posted: 11 May 2009, 12:55
by Crush
When running with --skip-update and -u do you use the latest git pull of the client files?

Re: 0.0.29 (Git) eAthena client segfaults

Posted: 11 May 2009, 13:06
by Ces
Yes. I just double-checked.

Re: 0.0.29 (Git) eAthena client segfaults

Posted: 11 May 2009, 13:10
by Jaxad0127
No console output? Can you try gdb?

Re: 0.0.29 (Git) eAthena client segfaults

Posted: 11 May 2009, 13:45
by Ces
Let’s see, I still haven’t learned to use gdb.

Code: Select all

(gdb) run -d $HOME/kod/tmw/tmwdata
Starting program: /home/kess/kod/tmw/tmw/src/tmw -d $HOME/kod/tmw/tmwdata
...
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb71986f0 (LWP 26776)]
0xb7edccfc in xmlStrEqual () from /usr/lib/libxml2.so.2
(gdb) bt
#0  0xb7edccfc in xmlStrEqual () from /usr/lib/libxml2.so.2
#1  0xb7e80082 in xmlHasProp () from /usr/lib/libxml2.so.2
#2  0xb7e810d8 in xmlGetProp () from /usr/lib/libxml2.so.2
#3  0x0814fd02 in XML::getProperty ()
#4  0x08132a9c in ItemDB::load ()
#5  0x0817a3c3 in main ()
This doesn’t say me much.

Re: 0.0.29 (Git) eAthena client segfaults

Posted: 11 May 2009, 14:11
by Crush
Oh, it does say a lot when you are familiar with the sourcecode. It says that the problem is a segmentation fault during the xml parsing of items.xml. The crash happens inside of the libxml library function xmlStrEqual.

Which version of libxml2 are you using?

Re: 0.0.29 (Git) eAthena client segfaults

Posted: 11 May 2009, 14:44
by Ces
Crush wrote:Which version of libxml2 are you using?
2.6.32.dfsg-5ubuntu4

And thanks for explaining about the gdb output, I think I understand the basic concept of backtrace now. ;)

Re: 0.0.29 (Git) eAthena client segfaults

Posted: 11 May 2009, 15:25
by Ces
Thanks, Jaxad, your patch solved it. :D

Re: 0.0.29 (Git) eAthena client segfaults

Posted: 11 May 2009, 15:32
by Jaxad0127
I've committed a fix for this.