Welcome to the Builder Academy

Question Another crash bug

More
31 Jan 2018 14:31 #7488 by Sascha
Replied by Sascha on topic Another crash bug
When hypothesizing about possible causes of this, Whisky has been thinking that it's tied to characters created after I put in Thomas's clan code. Noteably, one character named Ser seems to be the one that crashes us at login. This morning I went to take a look at when Ser was created so I could compare it to when I made that code change. It looks like Ser doesn't really exist anymore as a created character that is level 4.

[ 39] ( 4) Ser Thu Jan 25 19:30:22 2018 <-- I know he exists, and I've seen him in play.
[ 41] (102) Fizban Tue Jan 30 19:52:24 2018
[ 42] ( 1) Nauzhror Tue Jan 30 19:53:00 2018
25 players listed.

i1 510H 110M 92V >
stat file ser <-- Take a look at his file... interesting.
neutral PC '(null)' IDNum: [ 0], In room [ 0], Loadroom : [ 0]
Title: <None>
D-Des: <None>
Class: Channeler, Lev: [ 0], XP: [ 0], Align: [ 0]
Created: [Wed Dec 31 1969], Last Logon: [Wed Dec 31 1969]
Played: [0h 0m], Age: [1433], STL[0]/per[3]/NSTL[0]
Str: [0/0] Int: [0] Wis: [0] Dex: [0] Con: [0] Cha: [0]
Hit p.:[0/0+0] Mana p.:[0/0+4] Move p.:[0/0+2]
Gold: [ 0], Bank: [ 0] (Total: 0), Screen [80x22]
AC: [0+6/10], Hitroll: [ 0], Damroll: [ 0], Saving throws: [0/0/0/0/0]
Pos: Standing, Fighting: Nobody, Idle Timer (in tics) [0]
PLR: NOBITS
PRF: NOBITS
Quest Points: [ 0] Quests Completed: [ 0]
Carried: weight: 0, items: 0; Items in: inventory: 0, eq: 0
Clan: [] Rank: []
Hunger: 0, Thirst: 0, Drunk: 0
Master is: <none>, Followers are: <none>
AFF: NOBITS
Triggers:
None.

i1 510H 110M 92V >
stat file Ser <-- Just in case, checked with a capital S, you never know...
neutral PC '(null)' IDNum: [ 0], In room [ 0], Loadroom : [ 0]
Title: <None>
D-Des: <None>
Class: Channeler, Lev: [ 0], XP: [ 0], Align: [ 0]
Created: [Wed Dec 31 1969], Last Logon: [Wed Dec 31 1969]
Played: [0h 0m], Age: [1433], STL[0]/per[3]/NSTL[0]
Str: [0/0] Int: [0] Wis: [0] Dex: [0] Con: [0] Cha: [0]
Hit p.:[0/0+0] Mana p.:[0/0+4] Move p.:[0/0+2]
Gold: [ 0], Bank: [ 0] (Total: 0), Screen [80x22]
AC: [0+6/10], Hitroll: [ 0], Damroll: [ 0], Saving throws: [0/0/0/0/0]
Pos: Standing, Fighting: Nobody, Idle Timer (in tics) [0]
PLR: NOBITS
PRF: NOBITS
Quest Points: [ 0] Quests Completed: [ 0]
Carried: weight: 0, items: 0; Items in: inventory: 0, eq: 0
Clan: [] Rank: []
Hunger: 0, Thirst: 0, Drunk: 0
Master is: <none>, Followers are: <none>
AFF: NOBITS
Triggers:
None.

i1 510H 110M 92V >

Will you stand against the coming Storm? After the Breaking: STORMRIDERS MUD - atbmud.dune.net port 4000

Please Log in or Create an account to join the conversation.

More
31 Jan 2018 20:38 #7491 by thomas
Replied by thomas on topic Another crash bug
Ok, the segfault at
Code:
__strncmp_ssse3 () at ../sysdeps/x86_64/multiarch/../strcmp.S:209
makes me think we're dealing with a NULL pointer issue.
It is likely that Ser's player file has become corrupted by the crashing. Check it out in the lib/plrfiles/P-T/ folder.

I think the problem is that GET_PASSWORD(d->character) returns NULL in this code:
Code:
if (strncmp(CRYPT(arg, GET_PASSWD(d->character)), GET_PASSWD(d->character), MAX_PWD_LENGTH))
strncmp() really doesn't like NULL pointers.

I suggest trying to remove him from the index, until further notice. That means copying lib/plrfiles/P-T/ser.plr to somewhere else and removing the line with his name from lib/plrfiles/index.
An alternative would be "set file ser password something", but that is hard to communicate to him afterwards. At least if you move the file, he can make a new char and be reimbursed once he logs on as a level 1 again...

I have reproduced this locally now. I suspect lib/plrfiles/P-T/ser.plr is an empty file. That gives this exact behaviour.
The following user(s) said Thank You: WhiskyTest

Please Log in or Create an account to join the conversation.

More
31 Jan 2018 23:32 #7492 by Sascha
Replied by Sascha on topic Another crash bug
This is all great stuff, I'm learning so much, thank you!

You're right, Ser's player file is zip-zero-nada-empty. I've followed your instructions to remove that character entirely. Alas, poor Ser, we knew him well... :)

Question - is this a result, but not the cause, of the crash most recently reported? As in, is something still in there to cause a crash and Ser's file was just a casualty from that?

Will you stand against the coming Storm? After the Breaking: STORMRIDERS MUD - atbmud.dune.net port 4000

Please Log in or Create an account to join the conversation.

More
01 Feb 2018 21:25 #7515 by thomas
Replied by thomas on topic Another crash bug

Sascha wrote: Question - is this a result, but not the cause, of the crash most recently reported? As in, is something still in there to cause a crash and Ser's file was just a casualty from that?


We can't really tell. This particular bug is caused by him having an empty file. Why it was empty, noone currently knows.
The following user(s) said Thank You: Sascha

Please Log in or Create an account to join the conversation.

More
01 Feb 2018 21:42 #7517 by Sascha
Replied by Sascha on topic Another crash bug
Super, thank you! I truly appreciate your follow-up on this.

I deleted that file and so far so good. I tried editing the index and even though the index file itself shows as the character name removed, my plist still shows that character. I'm not sure why, but the important thing is that the corrupt file is gone, and there's nothing to stat.

Thanks again!

Will you stand against the coming Storm? After the Breaking: STORMRIDERS MUD - atbmud.dune.net port 4000

Please Log in or Create an account to join the conversation.

More
07 Feb 2018 19:52 #7553 by Sascha
Replied by Sascha on topic Another crash bug
Quick update - looks like that was the fix.

i1 510H 110M 92V >
uptime
Up since Wed Jan 31 16:47:33 2018: 6 days, 20:07

Thanks again, you rock!

Will you stand against the coming Storm? After the Breaking: STORMRIDERS MUD - atbmud.dune.net port 4000

Please Log in or Create an account to join the conversation.

Time to create page: 0.210 seconds