(11-23-2012, 12:17 AM)xoft Wrote: Assertions are exactly for debugging - they are operations that verify that things are what the programmer assumes them to be, but these checks are too costly to perform in runtime. Instead, it is expected that the developers catch all of their occurences in debug mode. That's why they don't appear in release mode.A clean checkout of r1061 (with or without lib updates) is currently running here
Can you post a gdb stack trace of such an assert? I'm very interested in what the circumstances were when it happenned.
(11-23-2012, 12:17 AM)xoft Wrote: The library upgrades look useful enough (and most importantly, not-breaking-anything enough ), so I'll integrate them when I have time. Or ask FakeTruth to give you write access to the svnThanks, svn write access is not necessary. I won't have that much to contribute to the code
Assertation:
Code:
[f0d12700|18:35:32] Assertion failed: m_ReadPos < m_BufferSize, file source/ByteBuffer.cpp, line 578
MCServer: source/ByteBuffer.cpp:578: void cByteBuffer::CheckValid() const: Assertion `0' failed.
Program received signal SIGABRT, Aborted.
[Switching to Thread 0x7ffff0d12700 (LWP 14701)]
0x00007ffff70cd475 in *__GI_raise (sig=<optimized out>)
at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
64 ../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
Threads:
Code:
Id Target Id Frame
14 Thread 0x7ffff0d12700 (LWP 14701) "MCServer" 0x00007ffff70cd475 in *__GI_raise (
sig=<optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
* 13 Thread 0x7ffff1513700 (LWP 14700) "MCServer" 0x00007ffff716773d in read ()
at ../sysdeps/unix/syscall-template.S:82
12 Thread 0x7ffff1d14700 (LWP 14699) "MCServer" 0x00007ffff714487d in nanosleep ()
at ../sysdeps/unix/syscall-template.S:82
11 Thread 0x7ffff25e2700 (LWP 14698) "MCServer" 0x00007ffff74303cd in accept ()
at ../sysdeps/unix/syscall-template.S:82
8 Thread 0x7ffff3919700 (LWP 14695) "MCServer" sem_wait ()
at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_wait.S:86
7 Thread 0x7ffff411a700 (LWP 14694) "MCServer" sem_wait ()
at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_wait.S:86
6 Thread 0x7ffff491b700 (LWP 14693) "MCServer" sem_wait ()
at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_wait.S:86
5 Thread 0x7ffff511c700 (LWP 14692) "MCServer" sem_wait ()
at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_wait.S:86
4 Thread 0x7ffff591d700 (LWP 14691) "MCServer" sem_wait ()
at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_wait.S:86
3 Thread 0x7ffff6899700 (LWP 14690) "MCServer" 0x00007ffff74303cd in accept ()
at ../sysdeps/unix/syscall-template.S:82
2 Thread 0x7ffff709a700 (LWP 14689) "MCServer" sem_wait ()
at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_wait.S:86
1 Thread 0x7ffff7fe4720 (LWP 14686) "MCServer" 0x00007ffff714487d in nanosleep ()
at ../sysdeps/unix/syscall-template.S:82
Thread #14:
Code:
#0 0x00007ffff70cd475 in *__GI_raise (sig=<optimized out>)
at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1 0x00007ffff70d06f0 in *__GI_abort () at abort.c:92
#2 0x00007ffff70c6621 in *__GI___assert_fail (assertion=0x82e94f "0", file=<optimized out>,
line=578, function=0x82ea20 "void cByteBuffer::CheckValid() const") at assert.c:81
#3 0x00000000006c7f0b in cByteBuffer::CheckValid (this=0xd46e40) at source/ByteBuffer.cpp:578
#4 0x00000000006297e9 in cProtocol125::ParsePlayerOnGround (this=0xd46df0)
at source/Protocol/Protocol125.cpp:1189
#5 0x0000000000628305 in cProtocol125::ParsePacket (this=0xd46df0, a_PacketType=10 '\n')
at source/Protocol/Protocol125.cpp:921
#6 0x0000000000622442 in cProtocol132::ParsePacket (this=0xd46df0, a_PacketType=10 '\n')
at source/Protocol/Protocol132.cpp:473
#7 0x0000000000627f8e in cProtocol125::DataReceived (this=0xd46df0,
a_Data=0x7ffff0d11610 "\n\001", a_Size=2) at source/Protocol/Protocol125.cpp:868
#8 0x0000000000621299 in cProtocol132::DataReceived (this=0xd46df0,
a_Data=0x7ffff0d118d0 "L-\351\020\026nSB\334c\212Y\022K{\264\212j\235\334\304>\200\327G\006\213/6\377\370\337\017\373\250\v\345\353\"'S\341K\221~\373S\017\065\036NJ`J\241\373\233\254l\027\323pu\260\027\247\033N\361z\270{\240\031\321\360\377\177", a_Size=2) at source/Protocol/Protocol132.cpp:188
#9 0x000000000062b2ca in cProtocolRecognizer::DataReceived (this=0xd58860,
a_Data=0x7ffff0d118d0 "L-\351\020\026nSB\334c\212Y\022K{\264\212j\235\334\304>\200\327G\006\213/6\377\370\337\017\373\250\v\345\353\"'S\341K\221~\373S\017\065\036NJ`J\241\373\233\254l\027\323pu\260\027\247\033N\361z\270{\240\031\321\360\377\177", a_Size=2)
at source/Protocol/ProtocolRecognizer.cpp:82
#10 0x0000000000713727 in cClientHandle::DataReceived (this=0xd46830,
a_Data=0x7ffff0d118d0 "L-\351\020\026nSB\334c\212Y\022K{\264\212j\235\334\304>\200\327G\006\213/6\377\370\337\017\373\250\v\345\353\"'S\341K\221~\373S\017\065\036NJ`J\241\373\233\254l\027\323pu\260\027\247\033N\361z\270{\240\031\321\360\377\177", a_Size=2) at source/ClientHandle.cpp:1739
#11 0x0000000000659c88 in cSocketThreads::cSocketThread::ReadFromSockets (this=0xd58a80,
a_Read=0x7ffff0d11d20) at source/OSSupport/SocketThreads.cpp:600
#12 0x0000000000659644 in cSocketThreads::cSocketThread::Execute (this=0xd58a80)
at source/OSSupport/SocketThreads.cpp:517
#13 0x000000000065bdde in cIsThread::thrExecute (a_Param=0xd58a80)
at source/OSSupport/IsThread.h:62
#14 0x00007ffff7428b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#15 0x00007ffff717370d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#16 0x0000000000000000 in ?? ()
Thread #13:
Code:
#0 0x00007ffff716773d in read () at ../sysdeps/unix/syscall-template.S:82
#1 0x00007ffff710ce68 in _IO_new_file_underflow (fp=0x7ffff741c6c0) at fileops.c:606
#2 0x00007ffff710e54e in _IO_default_uflow (fp=0x0) at genops.c:440
#3 0x00007ffff7105a2b in _IO_getc (fp=0x7ffff741c6c0) at getc.c:41
#4 0x00007ffff7b6e63d in __gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >::underflow()
() from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5 0x00007ffff7b509c3 in std::basic_istream<char, std::char_traits<char> >& std::getline<char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, char) ()
from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6 0x00000000006f3f4c in cRoot::InputThread (a_Params=0x7fffffffe140) at source/Root.cpp:75
#7 0x000000000065b34a in cThread::MyThread (a_Param=0xb84dd0) at source/OSSupport/Thread.cpp:124
#8 0x00007ffff7428b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
#9 0x00007ffff717370d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#10 0x0000000000000000 in ?? ()