Hallo zusammen
Ich habe hier ein kleines (?) Problem. Selten stürzt meine Mod ab und es kommt im debug-modus diese Meldung:
[cpp][4ef4dtof7][assert]: src/engine/server/server.cpp(117): id errorProgram received Signal SIGSEGV, Segmentation fault [Switching to Thread 0xf75106c0 (LUP 21044)] 0x0S065fe2 in dtog_tareak () at src/taase/system.c:85 85 *((unsigned*)0) = 0x0;Current language: auto; currently c[/cpp]
Ich nehme jetzt mal an, da server.cpp line 117 NewId ist, dass der Fehler was mit snap zu tun hat, beziehungsweise mit snap bei neuen Entitys.
[cpp]int CSnapIDPool::NewID()
{
int64 Now = time_get();
// process timed ids
while(m_FirstTimed != -1 && m_aIDs[m_FirstTimed].m_Timeout < Now)
RemoveFirstTimeout();
int ID = m_FirstFree;
dbg_assert(ID != -1, "id error"); <------------------------------------------------117
if(ID == -1)
return ID;
m_FirstFree = m_aIDs[m_FirstFree].m_Next;
m_aIDs[ID].m_State = 1;
m_Usage++;
m_InUsage++;
return ID;
}[/cpp]
Meine Frage ist nun, wie kann so ein Bug entstehen? Hatte jemand zufällig schon mal diesen Error? Der Bug tritt immer erst nach einer gewissen Zeit auf.
Vielen Dank schonmal.
Grüsse
FunElefant
Ich habe hier ein kleines (?) Problem. Selten stürzt meine Mod ab und es kommt im debug-modus diese Meldung:
[cpp][4ef4dtof7][assert]: src/engine/server/server.cpp(117): id errorProgram received Signal SIGSEGV, Segmentation fault [Switching to Thread 0xf75106c0 (LUP 21044)] 0x0S065fe2 in dtog_tareak () at src/taase/system.c:85 85 *((unsigned*)0) = 0x0;Current language: auto; currently c[/cpp]
Ich nehme jetzt mal an, da server.cpp line 117 NewId ist, dass der Fehler was mit snap zu tun hat, beziehungsweise mit snap bei neuen Entitys.
[cpp]int CSnapIDPool::NewID()
{
int64 Now = time_get();
// process timed ids
while(m_FirstTimed != -1 && m_aIDs[m_FirstTimed].m_Timeout < Now)
RemoveFirstTimeout();
int ID = m_FirstFree;
dbg_assert(ID != -1, "id error"); <------------------------------------------------117
if(ID == -1)
return ID;
m_FirstFree = m_aIDs[m_FirstFree].m_Next;
m_aIDs[ID].m_State = 1;
m_Usage++;
m_InUsage++;
return ID;
}[/cpp]
Meine Frage ist nun, wie kann so ein Bug entstehen? Hatte jemand zufällig schon mal diesen Error? Der Bug tritt immer erst nach einer gewissen Zeit auf.
Vielen Dank schonmal.
Grüsse
FunElefant