edje - double make sure edje messages are zero'd due to a segv i saw
i saw a segv on freeing em->msg as it was a junk ptr... i dont know for sure it msg was properly initted but as em is recycled from trash be sure and zero it when digging out of trash because em->msg was not a valid ptr (and i wasnt using valgrind at the time to know for sure and cant find this with valgrind now). @fix
This commit is contained in:
parent
244b1446fc
commit
f850cf6a00
|
@ -354,13 +354,14 @@ _edje_message_new(Edje *ed, Edje_Queue queue, Edje_Message_Type type, int id)
|
||||||
Edje_Message *em;
|
Edje_Message *em;
|
||||||
|
|
||||||
em = _edje_msg_trash_pop();
|
em = _edje_msg_trash_pop();
|
||||||
if (!em) em = calloc(1, sizeof(Edje_Message));
|
if (em) memset(em, 0, sizeof(Edje_Message));
|
||||||
|
else em = calloc(1, sizeof(Edje_Message));
|
||||||
if (!em) return NULL;
|
if (!em) return NULL;
|
||||||
em->edje = ed;
|
em->edje = ed;
|
||||||
|
em->edje->message.num++;
|
||||||
em->queue = queue;
|
em->queue = queue;
|
||||||
em->type = type;
|
em->type = type;
|
||||||
em->id = id;
|
em->id = id;
|
||||||
em->edje->message.num++;
|
|
||||||
return em;
|
return em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue