ave

imam naslednji problem:
ko iz callback funkcije klicem eno drugo funkcijo, se pojavi segmentation
fault, ce pa isto funkcijo klicem iz destruktorja Ggg::~Ggg() ali
konstruktorja Ggg(), pa vse lepo
deluje.

callback funkcija:
void sprintaj(GtkWidget *widget, gpointer data) {
   printf("hahahagaga\n"); //to pa dela
   tiskaj(); //funkcija, ki jo hocem klicati, dobim segm. fault
}
v konstruktorju Ggg::Ggg():    
gtk_signal_connect_object(GTK_OBJECT(open_item),"activate",\
        GTK_SIGNAL_FUNC(sprintaj),NULL);


funkcija, ki jo hocem klicati (ki klice druge funkcije iz drugih razredov)
void Ggg::tiskaj() {
   tisk->zacniTisk();
   for (int i=0;i<18;i++) {
        tisk->dodajNaslov(baza->dobiNaslov(i));
   }
   tisk->koncajTisk();
}

tisk in baza sta razreda, odprta v konstruktorju Ggg classa.
class Ggg {
   public:
      Ggg();
      ~Ggg();
      void tiskaj();
   private:
        ...
      Tisk *tisk;
      Baza *baza;
      void sprintaj(GtkWidget *widget, gpointer data);
        ...
};

s funkcijami v baza in tisk ni nic narobe, ker vse lepo deluje, ce jih
klicem iz konstruktorja ali destruktorja ali iz kjerkoli drugod.

kje ga lomim?

vale,

iztok pizorn, [EMAIL PROTECTED]
The Enigma which is so simple that nobody can solve it. 


Reply via email to