Moin,
habe einen core down, welchen ich mir nicht selbst beantworten kann.
bt:
Code
- Program terminated with signal 11, Segmentation fault.
- #0 ITEM_MANAGER::SaveSingleItem (item=0x3d932ca0) at item_manager.cpp:451
- warning: Source file is more recent than executable.
- 451 t.owner = (t.window == SAFEBOX || t.window == MALL) ? item->GetOwner()->GetDesc()->GetAccountTable().id : item->GetOwner()->GetPlayerID();
- [New Thread 28c1c03428c1c900 (LWP 100635/<unknown>)]
- [New Thread 88a886028c1c600 (LWP 100633/<unknown>)]
- [New Thread 28c1c93428c1c300 (LWP 100632/<unknown>)]
- [New Thread 28c1c63428c1c000 (LWP 101624/<unknown>)]
- Cannot find new threads: generic error
- (gdb) bt full
- #0 ITEM_MANAGER::SaveSingleItem (item=0x3d932ca0) at item_manager.cpp:451
- this = (ITEM_MANAGER *) Cannot access memory at address 0x0
Die Funktion:
Eventuell habt ihr nen Ansatz
Code
- void ITEM_MANAGER::SaveSingleItem(LPITEM item)
- {
- if (!item->GetOwner())
- {
- DWORD dwID = item->GetID();
- DWORD dwOwnerID = item->GetLastOwnerPID();
- db_clientdesc->DBPacketHeader(HEADER_GD_ITEM_DESTROY, 0, sizeof(DWORD) + sizeof(DWORD));
- db_clientdesc->Packet(&dwID, sizeof(DWORD));
- db_clientdesc->Packet(&dwOwnerID, sizeof(DWORD));
- sys_log(1, "ITEM_DELETE %s:%u", item->GetName(), dwID);
- return;
- }
- sys_log(1, "ITEM_SAVE %s:%d in %s window %d", item->GetName(), item->GetID(), item->GetOwner()->GetName(), item->GetWindow());
- TPlayerItem t;
- t.id = item->GetID();
- t.window = item->GetWindow();
- t.pos = t.window == EQUIPMENT ? item->GetCell() - INVENTORY_MAX_NUM : item->GetCell();
- t.count = item->GetCount();
- t.vnum = item->GetOriginalVnum();
- t.owner = (t.window == SAFEBOX || t.window == MALL) ? item->GetOwner()->GetDesc()->GetAccountTable().id : item->GetOwner()->GetPlayerID();
- thecore_memcpy(t.alSockets, item->GetSockets(), sizeof(t.alSockets));
- thecore_memcpy(t.aAttr, item->GetAttributes(), sizeof(t.aAttr));
- db_clientdesc->DBPacketHeader(HEADER_GD_ITEM_SAVE, 0, sizeof(TPlayerItem));
- db_clientdesc->Packet(&t, sizeof(TPlayerItem));
- }