One Hour One Life Forums

a multiplayer game of parenting and civilization building

You are not logged in.

#1 2018-03-11 21:45:01

ryantm
Member
Registered: 2018-03-11
Posts: 3

Linux segfault

Hello.

The game is segfaulting almost every minute on Linux. gdb output:

Sending message to server: LOGIN                        
Got length 9 message
ACCEPTED

Got length 27 message
MC
32 30 263 -703
6419 998

Got map chunk with bin size 6419, compressed size 998
First chunk isn't too far from center, using 0,0 as our global offset
Map center = 279,-688

Thread 1 "OneLifeApp" received signal SIGSEGV, Segmentation fault.
0x0808f633 in LivingLifePage::step (this=0x9581890) at LivingLifePage.cpp:7618
7618	LivingLifePage.cpp: No such file or directory.

strace output:

write(1, "PU\n4556 347 0 0 911 -13 292,402,"..., 1024PU
4556 347 0 0 911 -13 292,402,402,402 0 911 -13 -1 0.16 0 0 921 -14 48.83 60.00 3.75 199;202;0;0;200;198,402,402,402 0 0 -1
4574 355 0 0 183 -78 0 0 0 0 -1 0.21 1 0 182 -78 45.54 60.00 3.75 199;201;203;203;200;198 0 0 -1
4578 354 0 0 169 -627 484,292:518:518,292:518:518:197,292:59:59:560,292:71:74:59 0 144 -642 -1 0.25 0 0 173 -639 44.68 60.00 3.75 199;202;203;203;200;198,402,402,402,402 0 0 -1
4604 19 0 0 -99 -458 72 0 -107 -457 -1 0.25 1 0 -97 -458 41.85 60.00 3.75 199;202;203;203;200;198 0 0 -1
4664 355 0 0 -102 -461 0 0 0 0 -1 0.99 1 0 -103 -461 28.62 60.00 3.75 199;202;203;203;200;198 0 0 -1
4665 347 0 0 125 -78 0 0 0 0 -1 0.09 0 0 124 -78 28.57 60.00 3.75 0;0;203;203;200;0 0 0 -1
4680 353 0 0 168 -76 402 0 0 0 400 0.11 1 0 169 -76 25.75 60.00 3.75 0;202;0;0;200;198 0 0 -1
4714 19 0 0 163 -76 292,209,209,209 0 163 -76 -1 0.08 0 0 180 -61 11.60 60.00 3.75 0;0;0;0;200;198,772,774 0 0 -1
4724 350 0 0 -117 -326 0 0 0 0 -1 0.21 0 0 -140 -314 23.53 60.00 3.75 199;201;203;203;200;198 0 0 -1
4735 353 0 0 16 -3) = 1024
write(1, "53 0 0 0 0 -1 0.07 1 0 15 -353 2"..., 102453 0 0 0 0 -1 0.07 1 0 15 -353 21.28 60.00 3.75 0;0;0;0;0;0 0 0 -1
4740 19 0 0 168 -76 402 0 0 0 796 0.07 1 0 169 -76 6.34 60.00 3.28 0;0;0;203;0;198,402,402 0 0 -1
4750 350 0 0 -40 -211 31 0 0 0 30 0.07 0 0 -40 -177 4.54 60.00 3.28 0;0;0;0;0;0 0 0 -1
4758 353 0 0 -237 -455 0 0 0 0 -1 0.07 1 0 -236 -453 17.66 60.00 3.75 0;0;0;0;0;0 0 0 -1
4759 19 0 0 -234 -455 31 0 0 0 745 0.07 1 0 -235 -455 3.50 60.00 3.28 0;0;0;0;0;0 0 0 -1
4762 19 0 0 58 32 292,34 0 58 32 -1 0.07 0 0 6 21 17.10 60.00 3.75 0;0;0;0;0;0 0 0 -1
4764 350 0 0 -196 -356 1064 0 -196 -356 -1 0.07 0 0 -195 -356 16.99 60.00 3.75 0;0;0;0;0;0 0 0 -1
4765 351 0 0 -197 -357 0 0 0 0 -1 0.09 1 0 -197 -358 2.93 60.00 3.28 0;712;0;0;0;0 0 0 -1
4772 350 0 0 125 -73 0 0 0 0 -1 0.07 1 0 124 -73 16.07 60.00 3.75 0;0;0;0;0;0 0 0 -1
4773 351 0 0 0 0 0 0 0 0 -1 0.07 0 0 119 -69 1.90 60.00 2.81 0;0;0;0;0;0 0 0 -1
4775 347 0 0 0 0 0 0 0 0 -1 0.07 0 0 -38 -473 1.72 60.00 2.81 0;0;0;0;0;0 0 0 -1
4776 351 0 0 -38 -471 0 0 0 0 -1 0.07 1 0 -41 -474 15.52 60.00 3.75 0;0;0;) = 1024
write(1, "0;0;0 0 0 -1\n", 130;0;0 0 0 -1
)          = 13
write(1, "4777 353 0 0 124 -74 0 0 0 0 -1 "..., 844777 353 0 0 124 -74 0 0 0 0 -1 0.07 1 0 124 -74 0.51 60.00 2.81 0;0;0;0;0;0 0 0 -1
) = 84
write(1, "4779 353 0 0 0 0 0 0 0 0 -1 0.07"..., 774779 353 0 0 0 0 0 0 0 0 -1 0.07 1 0 3 21 0.00 60.00 2.81 0;0;0;0;0;0 0 0 -1
) = 77
write(1, "#\n", 2#
)                      = 2
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 123PLAYER_UPDATE with heldOrVal=0, heldOrx=911, heldOry=-13, pX=921, pY=-14, heldTransSrcID=-1, holdingString=292,402,402,402
) = 123
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 105PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=182, pY=-78, heldTransSrcID=-1, holdingString=0
) = 105
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 168PLAYER_UPDATE with heldOrVal=0, heldOrx=144, heldOry=-642, pX=173, pY=-639, heldTransSrcID=-1, holdingString=484,292:518:518,292:518:518:197,292:59:59:560,292:71:74:59
) = 168
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 113PLAYER_UPDATE with heldOrVal=0, heldOrx=-107, heldOry=-457, pX=-97, pY=-458, heldTransSrcID=-1, holdingString=72
) = 113
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 107PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=-103, pY=-461, heldTransSrcID=-1, holdingString=0
) = 107
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 105PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=124, pY=-78, heldTransSrcID=-1, holdingString=0
) = 105
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 108PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=169, pY=-76, heldTransSrcID=400, holdingString=402
) = 108
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 123PLAYER_UPDATE with heldOrVal=0, heldOrx=163, heldOry=-76, pX=180, pY=-61, heldTransSrcID=-1, holdingString=292,209,209,209
) = 123
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 107PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=-140, pY=-314, heldTransSrcID=-1, holdingString=0
) = 107
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 105PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=15, pY=-353, heldTransSrcID=-1, holdingString=0
) = 105
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 108PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=169, pY=-76, heldTransSrcID=796, holdingString=402
) = 108
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 107PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=-40, pY=-177, heldTransSrcID=30, holdingString=31
) = 107
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 107PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=-236, pY=-453, heldTransSrcID=-1, holdingString=0
) = 107
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 109PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=-235, pY=-455, heldTransSrcID=745, holdingString=31
) = 109
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 109PLAYER_UPDATE with heldOrVal=0, heldOrx=58, heldOry=32, pX=6, pY=21, heldTransSrcID=-1, holdingString=292,34
) = 109
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 116PLAYER_UPDATE with heldOrVal=0, heldOrx=-196, heldOry=-356, pX=-195, pY=-356, heldTransSrcID=-1, holdingString=1064
) = 116
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 107PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=-197, pY=-358, heldTransSrcID=-1, holdingString=0
) = 107
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 105PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=124, pY=-73, heldTransSrcID=-1, holdingString=0
) = 105
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 105PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=119, pY=-69, heldTransSrcID=-1, holdingString=0
) = 105
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 106PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=-38, pY=-473, heldTransSrcID=-1, holdingString=0
) = 106
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 106PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=-41, pY=-474, heldTransSrcID=-1, holdingString=0
) = 106
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 105PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=124, pY=-74, heldTransSrcID=-1, holdingString=0
) = 105
write(1, "PLAYER_UPDATE with heldOrVal=0, "..., 102PLAYER_UPDATE with heldOrVal=0, heldOrx=0, heldOry=0, pX=3, pY=21, heldTransSrcID=-1, holdingString=0
) = 102
write(1, "Got first PLAYER_UPDATE message,"..., 47Got first PLAYER_UPDATE message, our ID = 4779
) = 47
write(1, "Got compressed message header:\n", 31Got compressed message header:
) = 31
write(1, "CM\n440 219\n", 11CM
440 219
)           = 11
write(1, "\n\n", 2

)                     = 2
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x54} ---

log.txt:

L1 | Sun Mar 11 14:40:59 2018 (765 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x0_y0.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (766 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x0_y0_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (766 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x1_y0.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (766 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x1_y0_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (766 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x2_y0.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (766 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x2_y0_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (766 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x3_y0.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (766 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x3_y0_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (766 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x0_y1.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (766 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x0_y1_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (766 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x1_y1.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (766 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x1_y1_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (766 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x2_y1.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (767 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x2_y1_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (767 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x3_y1.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (767 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x3_y1_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (767 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x0_y2.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (767 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x0_y2_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (767 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x1_y2.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (767 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x1_y2_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (767 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x2_y2.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (767 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x2_y2_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (767 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x3_y2.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (767 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x3_y2_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (767 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x0_y3.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (768 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x0_y3_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (768 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x1_y3.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (768 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x1_y3_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (768 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x2_y3.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (768 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x2_y3_square.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (768 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x3_y3.tga does not exist
L1 | Sun Mar 11 14:40:59 2018 (768 ms) | general | CRITICAL ERROR:  TGA file groundTileCache/biome_99999_x3_y3_square.tga does not exist

Offline

#2 2018-03-11 21:59:30

ryantm
Member
Registered: 2018-03-11
Posts: 3

Re: Linux segfault

I think I fixed the groundTileCache problem by deleting the groundTileCache directory, but I'm still getting tons of segfaults:

_newselect(4, [3], NULL, NULL, {tv_sec=0, tv_usec=0}) = 0 (Timeout)
_newselect(16, [15], NULL, NULL, {tv_sec=0, tv_usec=0}) = 0 (Timeout)
ioctl(8, DRM_IOCTL_RADEON_GEM_WAIT_IDLE, 0xff9e51c4) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_WAIT_IDLE, 0xff9e5214) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_VA, 0xff9e51e4) = 0
ioctl(8, DRM_IOCTL_GEM_CLOSE, 0xff9e51dc) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_VA, 0xff9e51e4) = 0
ioctl(8, DRM_IOCTL_GEM_CLOSE, 0xff9e51dc) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_CREATE, 0xff9e50a0) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_VA, 0xff9e5088) = 0
futex(0x96fb0bc, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x96fb078, FUTEX_WAKE_PRIVATE, 1) = 1
ioctl(8, DRM_IOCTL_RADEON_GEM_CREATE, 0xff9e50c0) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_VA, 0xff9e50a8) = 0
futex(0x96fb0b8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x96fb078, FUTEX_WAKE_PRIVATE, 1) = 1
poll([{fd=4, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=4, revents=POLLOUT}])
writev(4, [{iov_base="\224\1\22\0\21\0@\3\6\0\240\3d\t\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=72}], 1) = 72
write(14, "2 T 1520805500.743000 xs 1 2 0 \n", 32) = 32
poll([{fd=4, events=POLLIN}], 1, -1)    = 1 ([{fd=4, revents=POLLIN}])
recvmsg(4, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="#\224\213\t\0\0\0\0\2\0\0\0\3\0\240\3\21\0@\3c\t\0\0\4\0\240\3\5\0\240\3"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 72
recvmsg(3, {msg_namelen=0}, 0)          = -1 EAGAIN (Resource temporarily unavailable)
_newselect(4, [3], NULL, NULL, {tv_sec=0, tv_usec=0}) = 0 (Timeout)
_newselect(16, [15], NULL, NULL, {tv_sec=0, tv_usec=0}) = 0 (Timeout)
ioctl(8, DRM_IOCTL_RADEON_GEM_WAIT_IDLE, 0xff9e51c4) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_WAIT_IDLE, 0xff9e5214) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_VA, 0xff9e51e4) = 0
ioctl(8, DRM_IOCTL_GEM_CLOSE, 0xff9e51dc) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_VA, 0xff9e51e4) = 0
ioctl(8, DRM_IOCTL_GEM_CLOSE, 0xff9e51dc) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_CREATE, 0xff9e50a0) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_VA, 0xff9e5088) = 0
futex(0x96fb0bc, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x96fb078, FUTEX_WAKE_PRIVATE, 1) = 1
ioctl(8, DRM_IOCTL_RADEON_GEM_CREATE, 0xff9e50c0) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_VA, 0xff9e50a8) = 0
futex(0x96fb0b8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x96fb078, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x9826b10, FUTEX_WAIT_PRIVATE, 0, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x9826acc, FUTEX_WAKE_PRIVATE, 1) = 0
poll([{fd=4, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=4, revents=POLLOUT}])
writev(4, [{iov_base="\224\1\22\0\21\0@\3\4\0\240\3e\t\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=72}], 1) = 72
write(14, "2 T 1520805500.759000 xs 1 2 0 \n", 32) = 32
poll([{fd=4, events=POLLIN}], 1, -1)    = 1 ([{fd=4, revents=POLLIN}])
recvmsg(4, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="#\224\214\t\0\0\0\0\2\0\0\0\3\0\240\3\21\0@\3d\t\0\0\6\0\240\3\7\0\240\3"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 72
recvmsg(3, {msg_namelen=0}, 0)          = -1 EAGAIN (Resource temporarily unavailable)
_newselect(4, [3], NULL, NULL, {tv_sec=0, tv_usec=0}) = 0 (Timeout)
_newselect(16, [15], NULL, NULL, {tv_sec=0, tv_usec=0}) = 0 (Timeout)
ioctl(8, DRM_IOCTL_RADEON_GEM_WAIT_IDLE, 0xff9e51c4) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_WAIT_IDLE, 0xff9e5214) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_VA, 0xff9e51e4) = 0
ioctl(8, DRM_IOCTL_GEM_CLOSE, 0xff9e51dc) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_VA, 0xff9e51e4) = 0
ioctl(8, DRM_IOCTL_GEM_CLOSE, 0xff9e51dc) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_CREATE, 0xff9e50a0) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_VA, 0xff9e5088) = 0
futex(0x96fb0bc, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x96fb078, FUTEX_WAKE_PRIVATE, 1) = 1
ioctl(8, DRM_IOCTL_RADEON_GEM_CREATE, 0xff9e50c0) = 0
ioctl(8, DRM_IOCTL_RADEON_GEM_VA, 0xff9e50a8) = 0
futex(0x96fb0b8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x96fb078, FUTEX_WAKE_PRIVATE, 1) = 1
poll([{fd=4, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=4, revents=POLLOUT}])
writev(4, [{iov_base="\224\1\22\0\21\0@\3\6\0\240\3f\t\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=72}], 1) = 72
write(14, "2 T 1520805500.775000 xs 1 2 0 \n", 32) = 32
poll([{fd=4, events=POLLIN}], 1, -1)    = 1 ([{fd=4, revents=POLLIN}])
recvmsg(4, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="#\224\215\t\0\0\0\0\2\0\0\0\3\0\240\3\21\0@\3e\t\0\0\4\0\240\3\5\0\240\3"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 72
recvmsg(3, {msg_namelen=0}, 0)          = -1 EAGAIN (Resource temporarily unavailable)
_newselect(4, [3], NULL, NULL, {tv_sec=0, tv_usec=0}) = 0 (Timeout)
_newselect(16, [15], NULL, NULL, {tv_sec=0, tv_usec=0}) = 1 (in [15], left {tv_sec=0, tv_usec=0})
recv(15, "MC\n32 30 380 -995\n6243 803\n#x\1\305Y"..., 512, 0) = 512
_newselect(16, [15], NULL, NULL, {tv_sec=0, tv_usec=0}) = 1 (in [15], left {tv_sec=0, tv_usec=0})
recv(15, "#\213\0\302\336r\204%n\307)\246\235\247\335!\212d6\20\366:\3168\371\335L[\352\205\210\356"..., 512, 0) = 512
_newselect(16, [15], NULL, NULL, {tv_sec=0, tv_usec=0}) = 1 (in [15], left {tv_sec=0, tv_usec=0})
recv(15, "\267\211\225XX\331\2103l\347\26L\253t\337J\343\211\24\25\rP\221\367I\333f5ataA"..., 512, 0) = 512
_newselect(16, [15], NULL, NULL, {tv_sec=0, tv_usec=0}) = 1 (in [15], left {tv_sec=0, tv_usec=0})
recv(15, "\31m\217\231\303\206C\325T\267\362\275\237z\0344S\30\362*s\24,\33\366\377\34i\31\216\354w"..., 512, 0) = 512
_newselect(16, [15], NULL, NULL, {tv_sec=0, tv_usec=0}) = 1 (in [15], left {tv_sec=0, tv_usec=0})
recv(15, "^H\366\220\310\2339\247r\4\202\4\370\276\21\222\203\371g21]I\16\3\356\212\252\273\227\242\244"..., 512, 0) = 178
_newselect(16, [15], NULL, NULL, {tv_sec=0, tv_usec=0}) = 0 (Timeout)
write(1, "Got length 27 message\n", 22Got length 27 message
) = 22
write(1, "MC\n32 30 380 -995\n6243 803\n", 27MC
32 30 380 -995
6243 803
) = 27
write(1, "\n", 1
)                       = 1
write(1, "Got map chunk with bin size 6243"..., 54Got map chunk with bin size 6243, compressed size 803
) = 54
write(1, "First chunk isn't too far from c"..., 70First chunk isn't too far from center, using 0,0 as our global offset
) = 70
brk(0xd7aa000)                          = 0xd7aa000
brk(0xd7cb000)                          = 0xd7cb000
write(1, "Map center = 396,-980\n", 22Map center = 396,-980
) = 22
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x4d} ---
+++ killed by SIGSEGV +++
Segmentation fault

Offline

#3 2018-04-15 19:36:59

vam52
Member
Registered: 2018-04-15
Posts: 1

Re: Linux segfault

I'm keep having segfault in Linux before the game start, black screen, no map.

gdb traced to the number of strings with getObject(id) returned NULL
I fixed like 4 or 5 such strings in game source with NULL-pointer check
(ObjectRecord *obj = getObject(id) ... if (obj) { ... })

After that I was able to play for a 2 seconds or so till the next crash.

I'm not sure if it's normal to get NULL pointer object for positive object ID.

So, did anybody else get same problem on Linux?

I run ./pullAndBuildLatest, then ./runToBuild and ./OneLifeApp
Therefore I should have latest version, right?

Okay, I just deleted everything and run ./pullAndBuildLatest
after that problem has gone.

Offline

Board footer

Powered by FluxBB