Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Caught SIGSEGV (Segfault). Please post the following on http://forums.polserver.com/tracker.php :
- === CUT ===
- Build: POL099-2011-05-02 Break Everything Even Rudder (ubuntu)
- Last Script: pkg/systems/repsys/hook/repsys.ecl PC: 41
- Stack Backtrace:
- ./pol-dynamic() [0x82b655c]
- [0xbe7400]
- ./pol-dynamic() [0x80e294c]
- ./pol-dynamic() [0x80603e2]
- ./pol-dynamic() [0x814db50]
- ./pol-dynamic() [0x81507ee]
- ./pol-dynamic() [0x821c83d]
- ./pol-dynamic() [0x81a0542]
- ./pol-dynamic() [0x82bd6f2]
- ./pol-dynamic() [0x82be01b]
- /lib/i386-linux-gnu/libpthread.so.0(+0x5e99) [0x46de99]
- /lib/i386-linux-gnu/libc.so.6(clone+0x5e) [0x2d1cbe]
- === CUT ===
- Segmentation fault
- Reading symbols from /home/rl/pol099/pol-dynamic...done.
- (gdb) l *0x82b655c
- 0x82b655c is in segv_handler(int) (clib/strexcpt.cpp:276).
- 271 cerr << "Last Script: " << scripts_thread_script << " PC: " << scripts_thread_scriptPC << endl;
- 272 cerr << "Stack Backtrace:" << endl;
- 273
- 274 void* bt[ 200 ];
- 275 int n = backtrace( bt, 200 );
- 276 char** strings = backtrace_symbols( bt, n );
- 277 for (int i = 0; i < n; i++)
- 278 {
- 279 Log( "%s\n", strings[ i ] );
- 280 cerr << strings[ i ] << endl;
- (gdb) l *0x80e294c
- 0x80e294c is in JusticeRegion::RunNoCombatCheck(Client*) (pol/guardrgn.cpp:84).
- 79 return res->isTrue();
- 80 }
- 81
- 82 bool JusticeRegion::RunNoCombatCheck(Client* client)
- 83 {
- 84 JusticeRegion* cur_justice_region = client->gd->justice_region;
- 85
- 86 if ( (cur_justice_region != NULL) && cur_justice_region->nocombat_ != false )
- 87 {
- 88 return true;
- (gdb) l *0x80603e2
- 0x80603e2 is in handle_attack(Client*, PKTIN_05*) (pol/mobile/attack.cpp:66).
- 61 }
- 62
- 63 if( defender->acct != NULL )
- 64 {
- 65 JusticeRegion* cur_justice_region = client->gd->justice_region;
- 66 if( cur_justice_region->RunNoCombatCheck(defender->client) == true )
- 67 {
- 68 client->chr->send_highlight();
- 69 send_sysmessage( client, "Combat is not allowed in this area." );
- 70 return;
- (gdb) l *0x814db50
- 0x814db50 is in process_data(Client*) (pol/pol.cpp:823).
- 818 {
- 819 try {
- 820 dtrace(10) << "Client#" << client->instance_ << ": message " << hexint( static_cast<unsigned short>(msgtype)) << endl;
- 821 CLIENT_CHECKPOINT(26);
- 822 (*handler[msgtype].func)(client, client->buffer);
- 823 CLIENT_CHECKPOINT(27);
- 824 restart_all_clients();
- 825 }
- 826 catch( std::exception& ex )
- 827 {
- (gdb) l *0x81507ee
- 0x81507ee is in client_io_thread(Client*) (pol/pol.cpp:1142).
- 1137
- 1138 if (FD_ISSET( client->csocket, &c_recv_fd ))
- 1139 {
- 1140 checkpoint = 4;
- 1141 CLIENT_CHECKPOINT(6);
- 1142 if (process_data( client ))
- 1143 {
- 1144 CLIENT_CHECKPOINT(17);
- 1145 PolLock lck;
- 1146
- (gdb) l *0x821c83d
- 0x821c83d is in UoClientThread::run() (pol/uolisten.cpp:81).
- 76 clients.size(),
- 77 ifdesc.c_str() );
- 78 }
- 79
- 80 client_io_thread( client );
- 81 }
- 82
- 83 void uo_client_listener_thread( void* arg )
- 84 {
- 85 UoClientListener* ls = static_cast<UoClientListener*>(arg);
- (gdb) l *0x81a0542
- 0x81a0542 is in _thread_stub2(void*) (/usr/include/c++/4.5/backward/auto_ptr.h:168).
- 163 * The C++ standard says there is supposed to be an empty throw
- 164 * specification here, but omitting it is standard conforming. Its
- 165 * presence can be detected only if _Tp::~_Tp() throws, but this is
- 166 * prohibited. [17.4.3.6]/2
- 167 */
- 168 ~auto_ptr() { delete _M_ptr; }
- 169
- 170 /**
- 171 * @brief Smart pointer dereferencing.
- 172 *
- (gdb) l *0x82bd6f2
- 0x82bd6f2 is in threadhelp::run_thread(void (*)(void*), void*) (clib/threadhelp.cpp:144).
- 139 res = pthread_attr_setdetachstate( &create_detached_attr, PTHREAD_CREATE_DETACHED );
- 140 passert_always( res == 0 );
- 141 }
- 142 void threadsem_lock()
- 143 {
- 144 pid_t pid = getpid();
- 145 int res = pthread_mutex_lock( &threadsem );
- 146 if (res != 0)
- 147 {
- 148 Log( "pthread_mutex_lock: res=%d, pid=%d\n", res, pid );
- (gdb) l *0x82be01b
- 0x82be01b is in threadhelp::thread_stub2(void*) (clib/threadhelp.cpp:282).
- 277 run_thread( entry_noparam );
- 278
- 279 #ifdef _WIN32
- 280 _endthreadex(0);
- 281 #else
- 282 pthread_exit(NULL);
- 283 #endif
- 284 return 0;
- 285 }
- 286
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement