Here's a bt of the child amule (bt full doesn't give extra information (it says no symbol table info available, even though my amule was compiled with debugging information. I assume it is because all functions in backtrace tree are not part of amule code.))
'thread apply all bt' does not seem to do anything, but I'll keep executing it before producing further backtraces.
(gdb) bt
#0 0x40aa27a2 in fts_children () from /lib/libc.so.6
#1 0x40aa286c in poll () from /lib/libc.so.6
#2 0x400319c0 in pthread_detach () from /lib/libpthread.so.0
#3 0x40aab037 in clone () from /lib/libc.so.6
(gdb)
The parent process bt is longer, so I've put it
here. I should mention that "reloadaIPF", a function that is part of the backtrace, is a simple two liner I put in amuleDlg.cpp to handle the USR1 signal, so that I can have amule reload the filters at scheduled times.
Here's the code for the function.
void reloadaIPF(int i){
theApp.ipfilter->Reload();
theApp.clientlist->FilterQueues();
}
Is this wrong? Is there a problem with applying a filter reload like this? Please let me know if it was two naiv of me to think I could get by with something this simple.
Incidentally, an actual crashed occurred today, which might not even be related to this ipf reloading problem, the bt for which I've put
here.
Sorry for the pile of confusion, and thanks again in advance for any hints you might have.
Paulo