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.