lylambda, Thursday 05 August 2010 à 00:03
|
|
Subscription date : 06 September 2009
Messages : 1635
|
J'ai reproduit le crash avec ddd en lançant le lecteur de musique (Guayadeque), en remettant MP dans le dock, puis en le redétachant. À ce moment, CD se fige.
Voici un imprim écran du Backtrace :
|
fabounet, Thursday 05 August 2010 à 09:56
|
|
Subscription date : 30 November 2007
Messages : 17118
|
oh merci, il y'a effectivement un bug bien planqué ! |
lylambda, Thursday 05 August 2010 à 12:39
|
|
Subscription date : 06 September 2009
Messages : 1635
|
Ravis de t'avoir été utile ... surtout que j'en bénéficierais bientôt .
Par curiosité, à quoi tu vois le bug (si c'est pas trop compliqué pour un profane )? |
fabounet, Thursday 05 August 2010 à 14:02
|
|
Subscription date : 30 November 2007
Messages : 17118
|
ça plante sur un cairo_surface_destroy (un free donc).
c'est donc soit un double free, soit un pointeur en entrée qui est foirreux.
mais la fonction set_image_on_icon fait pas mal de trucs avant, donc peu de chance pour un pointeur invalide (ça aurait planté avant) => on cherche un double free.
en lisant le code j'ai vu qu'on détruit le reflet sans en remettre un si le container n'en affiche pas, or tu es passé d'un desklet à un dock puis à un desklet => on est passés 2 fois à cet endroit sans changer le pointeur => double free  |
lylambda, Thursday 05 August 2010 à 14:40
|
|
Subscription date : 06 September 2009
Messages : 1635
|
Le pire c'est que j'ai compris ! Merci pour l'explication |
|