Could very well be a memory overwrite,etc. somewhere. Which would lead to a
potentially false call stack/overwritten memory, etc. Even if the call stack
is correct it could be that something else overwrote the memory that was
originally in that pointer passed in with garbage.
----- Original Message -----
From: "RYell" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Friday, November 23, 2007 4:15 AM
Subject: Re: [hlcoders] Re: Help with server crash please
I'd like to try something, yes, however that assert probably won't be useful
if we don't change the way we test. This is a server crash which only
happens in the dedicated (online) server we use. I cannot replicated it
because the only thing I know is it happens when several players are in that
specific map, after some time of playing, sometimes even doesn't happen. So
I guess the only chance is to start a local server, get some people in, and
wait for that assert, right?
Anyway, this only happens in unmodified code areas (*hand in heart*) from
the SDK, that filthy call stack is just wrong if it suggest the opposite :)
Where are the Valve gods when you need them?
------------------------------
Ángel Oliver (RYell) - Project Lead Fistful of Frags.
Well, the whole call stack is inside the server.dll, so if this problem
is not caused by something you did you should still be able to fix it or
work around it. Why don't you try the last thing I proposed?
You should create an assert in PhysicsMarkEntitiesAsTouching for
"other"
and try to debug this problem using the call stack.
-Archy
RYell wrote:
Sorry, again, I didn't removed a null check in Valve's code, that has
nothing to do here. Everything in my mod related to collisions/physics
is
default code from November 2006 "ep1" build, I never opened those files
before this error happened, and well, the last thing I'd do is just
that.
Thank you anyway.
------------------------------
Ángel Oliver (RYell) - Project Lead Fistful of Frags.
Date: Thu, 22 Nov 2007 12:05:33 +0100
From: =?ISO-8859-1?Q?Julian_Mosch=FCring?= <[EMAIL PROTECTED]>
To: [email protected]
Subject: Re: [hlcoders] Re: Help with server crash please
Reply-To: [email protected]
Well, the main crash is pretty oblivious:
PhysicsMarkEntitiesAsTouching is called with "other" set to null, it
then calls the member func PhysicsMarkEntityAsTouched of "other"
which
is baaaad and should never happen.
I think bloodykennys right, you removed the null check somewhere.
The
passed pointer for "other" is normally checked for null in
CMoveHelperServer::ProcessImpacts and again in
CBaseEntity::PhysicsImpact (which btw is normally called in
ProcessImpacts line 241; but your stacktrace says that
PhysicsMarkEntitiesAsTouching is directly called from there??).
You should create an assert in PhysicsMarkEntitiesAsTouching for
"other"
and try to debug this problem using the call stack.
-archy
RYell wrote:
Thanks for the reply but wasn't very useful, sorry. After a year
coding for
my mod I know what a null pointer is and how to prevent that to
happen. None
of the physic code has been modified so seems like this isn't my
fault. I
wouldn't post here because a null pointer anyway.
Regarding the corrupted stack, well never had one of that, how
can I be
sure? Shouldn't that happen when the mdmp file has only OS calls
in
it? I
showing you a call stack which points clearly to server.dll.
I think this is some sort of bug in Valve code, so I'm surprised
nobody
seems to care about it. Probably it doesn't happen in other mods
because you
aren't using the same feature than me. Let me show you the
possible
cause of
this bug:
http://img7.imagevenue.com/img.php?image=3D23765_fof_122_872lo.jpg
Players walk over prop_physics_respawnable (wooden planks) most
of the
time,
that's not common definitively. Those props have the motion
disabled
flag
checked. The crash only happens in this level, and it does
occasionally, or
sometimes even doesn't happen. Maybe we are playing during 20
minutes
that
map and then it crashes, always the same error in this line
touchlink_t *link =3D (touchlink_t*)g_EdictTouchLinks.Alloc(
sizeof(touchlink_t) );
However I don't understand at all the physic engine, need help
to fix
this.
Any help will be appreciated, I'm in the final testing stage of
my mod
and
would like to release it without this nasty bug.
------------------------------
=C1ngel Oliver (RYell) - Project Lead Fistful of Frags.
From: [EMAIL PROTECTED]
Subject: Re: [hlcoders] Help with server crash please.
Reply-To: [email protected]
Either the heap/stack is corrupt or
Physics_RunThinkFunctions() has
been
mo=3D
dified from the Valve SDK default to not do it's "if (
pPlayer )"
check.
_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives,
please visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders
_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please
visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders