VPhysicsInitNormal is not guaranteed to return non-null. It can fail for a
variety of reasons. Take a look at CBaseEntity::VPhysicsInitNormal in
baseentity_shared.cpp to see.

-----Original Message-----
From: hlcoders-boun...@list.valvesoftware.com
[mailto:hlcoders-boun...@list.valvesoftware.com] On Behalf Of Nick
Sent: Monday, October 11, 2010 6:00 PM
To: Discussion of Half-Life Programming
Subject: [hlcoders] void CTripmineGrenade::Spawn( void ) linux crash
orangebox stock code.......

gcc (GCC) 4.2.4

Linux dual-core 2.6.28-19-generic #65-Ubuntu SMP Thu Sep 16 14:14:28 UTC
2010 i686 GNU/Linux

n...@dual-core:~/srcds/orangebox/orangebox$ ./srcds_i486 --version
Warning: falling back to auto detection of vproject directory.
Unable to find gameinfo.txt. Solutions:

1. Read http://www.valve-erc.com/srcsdk/faq.html#NoGameDir





ldd server_i486.so
        linux-gate.so.1 =>  (0xb7784000)
        libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb6457000)
        libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb6453000)
        tier0_i486.so => not found
        vstdlib_i486.so => not found
        steam_api_i486.so => not found
        libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb62ef000)
        /lib/ld-linux.so.2 (0xb7785000)




69      void CTripmineGrenade::Spawn( void )
70      {
71              Precache( );
72              // motor
(gdb) l
73              SetMoveType( MOVETYPE_FLY );
74              SetSolid( SOLID_BBOX );
75              SetModel( "models/Weapons/w_slam.mdl" );
76
77          IPhysicsObject *pObject = VPhysicsInitNormal( SOLID_BBOX,
GetSolidFlags() | FSOLID_TRIGGER, true );
78              pObject->EnableMotion( false );
79              SetCollisionGroup( COLLISION_GROUP_WEAPON );
80
81              SetCycle( 0.0f );
82              m_nBody                 = 3;



(gdb) bt
#0  0xb520b112 in CTripmineGrenade::Spawn (this=0xbdf5bf0) at
../game/server/hl2mp/grenade_tripmine.cpp:78
#1  0xb4ef5d39 in DispatchSpawn (pEntity=0xbdf5bf0) at
../game/server/util.cpp:1880
#2  0xb4d0d348 in CBaseEntity::Create (szName=0xb53ba629 "npc_tripmine",
vecorig...@0xbfbedfac, vecangl...@0xbfbedf54,
pOwner=0x0)
    at ../game/server/baseentity.cpp:2976
#3  0xb5064b4e in CWeapon_SLAM::TripmineAttach (this=0xbdf28d8) at
../game/server/../shared/hl2mp/weapon_slam.cpp:381
#4  0xb5064d70 in CWeapon_SLAM::WeaponIdle (this=0xbdf28d8) at
../game/server/../shared/hl2mp/weapon_slam.cpp:875
#5  0xb5063c16 in CWeapon_SLAM::ItemPostFrame (this=0xbdf28d8) at
../game/server/../shared/hl2mp/weapon_slam.cpp:789
#6  0xb4fa108d in CBasePlayer::ItemPostFrame (this=0xbdd0810) at
../game/server/../shared/baseplayer_shared.cpp:229
#7  0xb50af8f1 in CHL2_Player::ItemPostFrame (this=0xbdd0810) at
../game/server/hl2/hl2_player.cpp:3588
#8  0xb4e5b3a9 in CBasePlayer::PostThink (this=0xbdd0810) at
../game/server/player.cpp:4436
#9  0xb50b4643 in CHL2_Player::PostThink (this=0xbdd0810) at
../game/server/hl2/hl2_player.cpp:891
#10 0xb5205732 in CHL2MP_Player::PostThink (this=0xbdd0810) at
../game/server/hl2mp/hl2mp_player.cpp:998
#11 0xb4e68a5e in CPlayerMove::RunPostThink (this=0xb56a56b8,
player=0xbdd0810) at ../game/server/player_command.cpp:302
#12 0xb4e69a6c in CPlayerMove::RunCommand (this=0xb56a56b8,
player=0xbdd0810, ucmd=0xbdeddac, moveHelper=0xb566cae8)
    at ../game/server/player_command.cpp:424




(gdb) print pObject
$3 = (IPhysicsObject *) 0x0
(gdb) print this
$4 = (CTripmineGrenade * const) 0xbdf5bf0
(gdb)


how on earth is pObject null when it was just created?

77          IPhysicsObject *pObject = VPhysicsInitNormal( SOLID_BBOX,
GetSolidFlags() | FSOLID_TRIGGER, true );
78              pObject->EnableMotion( false );

src\game\server\hl2mp\grenade_tripmine.cpp


I am really really lost here.

_______________________________________________
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

Reply via email to