Sign in to follow this  


Recommended Posts

This is a part of the code of character's inventory system. This part will swap two inventory slots (itemslot[i][j] and highlight). They will swap array of item pointer, number of item in that slot(stack), default slot background and current slot background. It's fine when they swap for the first time, but when trying to swap back, that error occured, right after break; command.

I've googled a bit and found out this error has something to do with segment fault or memory leaks, but I have no idea which part of the code that cause this. Can anyone point out?

None of these function leads to delete or delete[], btw;

for(int i = 0; i< 5; i++) for(int j = 0; j< 5; j++)
ItemSlot slot = *itemslot[i][j];
itemslot[i][j]->stack = highlight->stack;
itemslot[i][j]->item = highlight->item;
stringstream s, s2;
s << itemslot[i][j]->stack;
itemslot[i][j]->buttondefaultimage = highlight->buttondefaultimage;
highlight->stack = slot.stack;
highlight->item = slot.item;
s2 << slot.stack;
highlight->button->SetText((slot.stack > 0)? s2.str() : "");
highlight->buttondefaultimage = slot.buttondefaultimage;
for(int k = 0; k< 3; k++)
Image *img = itemslot[i][j]->button->GetImage(k);
itemslot[i][j]->button->SetImage(k, highlight->button->GetImage(k));
highlight->button->SetImage(k, img);
highlight = null;
[/CODE] Edited by Knight52

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this