Advertisement
RLka

Untitled

Sep 29th, 2012
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.82 KB | None | 0 0
  1. data/pcs.txt:Caught SIGSEGV (Segfault). Please post the following on http://forums.polserver.com/tracker.php :
  2. === CUT ===
  3. Build: POL099-2011-05-02 Break Everything Even Rudder (ubuntu)
  4. Last Script: scripts/misc/equiptest.ecl PC: 3
  5. Stack Backtrace:
  6. ./pol-dynamic() [0x82b5f2c]
  7. [0xb5f400]
  8. ./pol-dynamic() [0x8250f08]
  9. ./pol-dynamic() [0x81e8897]
  10. ./pol-dynamic() [0x8094f69]
  11. ./pol-dynamic() [0x809604e]
  12. ./pol-dynamic() [0x81da71e]
  13. ./pol-dynamic() [0x81dadf0]
  14. ./pol-dynamic() [0x81dbd33]
  15. ./pol-dynamic() [0x81532f7]
  16. ./pol-dynamic() [0x815431b]
  17. ./pol-dynamic() [0x82c2b9b]
  18. /lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xe7) [0x2eae37]
  19. ./pol-dynamic() [0x804d7b1]
  20. === CUT ===
  21. Segmentation fault
  22.  
  23.  
  24. rl@RL-Linux:~/pol099$ gdb pol-dynamic
  25. Reading symbols from /home/rl/pol099/pol-dynamic...done.
  26. (gdb) l *0x82b5f2c
  27. 0x82b5f2c is in segv_handler(int) (clib/strexcpt.cpp:276).
  28. 271 cerr << "Last Script: " << scripts_thread_script << " PC: " << scripts_thread_scriptPC << endl;
  29. 272 cerr << "Stack Backtrace:" << endl;
  30. 273
  31. 274 void* bt[ 200 ];
  32. 275 int n = backtrace( bt, 200 );
  33. 276 char** strings = backtrace_symbols( bt, n );
  34. 277 for (int i = 0; i < n; i++)
  35. 278 {
  36. 279 Log( "%s\n", strings[ i ] );
  37. 280 cerr << strings[ i ] << endl;
  38. (gdb) l *0xb5f400
  39. No source file for address 0xb5f400.
  40. (gdb) l *0x8250f08
  41. 0x8250f08 is in Realm::valid(unsigned short, unsigned short, short) const (plib/realm.h:157).
  42. 152 Realm( const Realm& );
  43. 153
  44. 154 public:
  45. 155 inline RealmDescriptor _Descriptor() const
  46. 156 {
  47. 157 if (is_shadowrealm)
  48. 158 return baserealm->_Descriptor();
  49. 159 return _descriptor;
  50. 160 }
  51. 161 };
  52. (gdb) l *0x81e8897
  53. 0x81e8897 is in UObject::readProperties(ConfigElem&) (pol/uobject.cpp:287).
  54. 282
  55. 283 realm = find_realm( elem.remove_string("Realm", "britannia") );
  56. 284 x = elem.remove_ushort( "X" );
  57. 285 y = elem.remove_ushort( "Y" );
  58. 286 z = static_cast<s8>(elem.remove_int( "Z" ));
  59. 287 if( !realm->valid(x,y,z) )
  60. 288 {
  61. 289 x = static_cast<u16>(realm->width()) - 1;
  62. 290 y = static_cast<u16>(realm->height()) - 1;
  63. 291 z = 0;
  64. (gdb) l *0x8094f69
  65. 0x8094f69 is in Character::readCommonProperties(ConfigElem&) (pol/mobile/charactr.cpp:1071).
  66. 1066
  67. 1067 registered_house = elem.remove_ulong( "REGISTEREDHOUSE", 0 );
  68. 1068
  69. 1069 base::readProperties( elem );
  70. 1070
  71. 1071 if (name_ == "")
  72. 1072 {
  73. 1073 cerr << "Character '" << hexint(serial) << "' has no name!"
  74. 1074 << endl;
  75. 1075 throw runtime_error( "Data integrity error" );
  76. (gdb) l *0x809604e
  77. 0x809604e is in Character::readProperties(ConfigElem&) (pol/mobile/charactr.cpp:1273).
  78. 1268 }
  79. 1269
  80. 1270 void Character::readProperties( ConfigElem& elem )
  81. 1271 {
  82. 1272 readCommonProperties( elem );
  83. 1273 readAttributesAndVitals( elem );
  84. 1274
  85. 1275 last_corpse = elem.remove_ulong("LastCorpse", 0);
  86. 1276 }
  87. 1277
  88. (gdb) l *0x81da71e
  89. 0x81da71e is in read_character(ConfigElem&) (pol/uimport.cpp:92).
  90. 87
  91. 88 try
  92. 89 {
  93. 90 // note chr->logged_in is true..
  94. 91 chr->readProperties( elem );
  95. 92 chr->clear_dirty();
  96. 93
  97. 94 // readProperties gets the serial, so we can't add to the objecthash until now.
  98. 95 objecthash.Insert(chr.get());
  99. 96 }
  100. (gdb) l *0x81dadf0
  101. 0x81dadf0 is in slurp(char const*, char const*, int) (pol/uimport.cpp:386).
  102. 381 catch( std::exception& )
  103. 382 {
  104. 383 if (!config.ignore_load_errors)
  105. 384 throw;
  106. 385 }
  107. 386 ++nobjects;
  108. 387 }
  109. 388
  110. 389 wallclock_t finish = wallclock();
  111. 390
  112. (gdb) l *0x81dbd33
  113. 0x81dbd33 is in read_data() (pol/uimport.cpp:422).
  114. 417 slurp( (config.world_data_path + "objects.txt").c_str(), "CHARACTER NPC ITEM GLOBALPROPERTIES" );
  115. 418 }
  116. 419
  117. 420 void read_pcs_dat()
  118. 421 {
  119. 422 slurp( (config.world_data_path + "pcs.txt").c_str(), "CHARACTER ITEM", SYSFIND_SKIP_WORLD );
  120. 423 }
  121. 424
  122. 425 void read_pcequip_dat()
  123. 426 {
  124. (gdb) l *0x81532f7
  125. 0x81532f7 is in xmain_inner(int, char**) (pol/pol.cpp:2081).
  126. 2076 checkpoint( "reading account data" );
  127. 2077 read_account_data();
  128. 2078
  129. 2079 checkpoint( "reading data" );
  130. 2080 read_data();
  131. 2081 wallclock_t rd_end = wallclock();
  132. 2082 int ms = wallclock_diff_ms( rd_start, rd_end );
  133. 2083 cout << "Done! " << ms << " milliseconds."<< endl;
  134. 2084
  135. 2085 allocate_intrinsic_weapon_serials();
  136. (gdb) l *0x815431b
  137. 0x815431b is in xmain(int, char**) (pol/pol.cpp:2334).
  138. 2329 strcpy( progverstr, polverstr );
  139. 2330 strcpy( buildtagstr, polbuildtag );
  140. 2331 progver = polver;
  141. 2332
  142. 2333 return xmain_outer( argc, argv );
  143. 2334 }
  144. 2335 #endif
  145. 2336
  146. (gdb) ^CQuit
  147. (gdb) l *0x82c2b9b
  148. 0x82c2b9b is in main (clib/xmain.cpp:81).
  149. 76 cerr << "Execution aborted due to generic exception." << endl;
  150. 77 exitcode = 2;
  151. 78 }
  152. 79 #endif
  153. 80 return exitcode;
  154. 81 }
  155. 82
  156. 83 string xmain_exepath;
  157. 84 string xmain_exedir;
  158. 85
  159. (gdb) l *0x804d7b1
  160. No source file for address 0x804d7b1.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement