sodipodi na amd64 b0rkuje

Greg Iaskievitch gj w kde.org.uk
Czw, 3 Mar 2005, 00:13:10 CET


Greg Iaskievitch wrote:

>
> Witam.
>
> Sodipodi z ac-test nie dziala na amd64 :
>
> (gdb) symbol-file /usr/lib/debug/usr/bin/sodipodi.debug
> Reading symbols from /usr/lib/debug/usr/bin/sodipodi.debug...done.
> (gdb) run
> Starting program: /usr/bin/sodipodi
>
> Program received signal SIGSEGV, Segmentation fault.
> nr_svp_from_svl (svl=0x0, flat=0x0) at nr-svp.c:75
> 74              svp->length = nsegs;
> (gdb) p svp
> $1 = (NRSVP *) 0x0
>
>
> pomysly?
>
> Ja dopiero bede mogl popatrzec w przyszlym tygodniu.

Dobra, stwierdzilem ze sprobuje szybko. Tam ma byc linia 74 wczesniej, 
ja mam 75 bo dodalem include <stdlib.h>, co nie pomoglo (a czasem pomaga).

Ok, ten kawalek kodu wyglada tak:
  
  svp = malloc (sizeof (NRSVP) + (nsegs - 1) * sizeof (NRSVPSegment));
        svp->length = nsegs;
        if (nsegs > 0) {
   ...

przy czym nsegs == 0. Wiec moim zdaniem ten malloc jest w zlym miejscu 
kodu. Moze, bo nie mam czasu zeby zobaczyc dobadac dalsza geneze tych 
zmiennych, i jak w ogole dziala ten kod.
Jesli ktos ma zdrowie i umiejtnosci, to bym prosil. Jesli nie, to niech 
mnie ktos kopnie po wtorku zebym to zrobil.

Cheers.

-- 
GJ




Więcej informacji o liście dyskusyjnej pld-devel-pl