Reply To: 20051114 linux crash …

#3815
saintdev
Guest

how about this?

Breakpoint 1, dispatch_output_end (pwsc=0x8e, pqi=0x56f270) at dispatch.c:521
521 int dispatch_output_end(WS_CONNINFO *pwsc, DBQUERYINFO *pqi) {
(gdb) step
522 OUTPUT_INFO *poi = pqi->output_info;
(gdb)
521 int dispatch_output_end(WS_CONNINFO *pwsc, DBQUERYINFO *pqi) {
(gdb)
524 if((poi) && (poi->xml_output) && (poi->stack_height)) {
(gdb)
528 config_set_status(pwsc,pqi->session_id,NULL);
(gdb)
config_set_status (pwsc=0x57d170, session=7728064, fmt=0x75ebc0 “”)
at configfile.c:1241
1241 void config_set_status(WS_CONNINFO *pwsc, int session, char *fmt, …) {
(gdb)
1247 DPRINTF(E_DBG,L_CONF,”Entering config_set_statusn”);
(gdb) finish
Run till exit from #0 config_set_status (pwsc=0x57d170, session=0, fmt=0x0)
at configfile.c:1247
Entering config_set_status
Exiting config_set_status
dispatch_output_end (pwsc=0x57d170, pqi=0x75ebc0) at dispatch.c:529
529 free(poi);
(gdb) step
err_free (file=0x75ebc0 “”, line=5755248, ptr=0x75ebc0) at err.c:359
359 void err_free(char *file, int line, void *ptr) {
(gdb)
362 if(err_lock_mutex())
(gdb)
err_lock_mutex () at err.c:237
237 int err_lock_mutex(void) {
(gdb)
240 if((err=pthread_mutex_lock(&err_mutex))) {
(gdb)
245 return 0;
(gdb)
240 if((err=pthread_mutex_lock(&err_mutex))) {
(gdb)
246 }
(gdb)
err_free (file=0x421be1 “dispatch.c”, line=529, ptr=0xa6fd90) at err.c:366
366 current=last->next;
(gdb)
365 last=&err_leak;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb)
370 current=current->next;
(gdb)
369 last=current;
(gdb) finish
Run till exit from #0 err_free (file=0x421be1 “dispatch.c”, line=529,
ptr=0xa6fd90) at err.c:369

Stops at that point. It seems it gets stuck in the while loop in err_free.

GAH! maybe not, unable to reproduce this again, but it’s time to go to bed :/

Post edited by: saintdev, at: 2005/11/16 07:23