On Fri, 5 Oct 2012, Marcin Cieslak wrote:

> - dtfile crash:
> 
> #0  0x000000000043d89f in UpdateHeaders (file_mgr_rec=0x5a5a5a5a5a5a5a5a, 
>     file_mgr_data=0x805cf9940, icons_changed=1 '\001') at FileMgr.c:2899
> 2899     if ((file_mgr_data->show_iconic_path == 0) !=
> 
> don't know how to reproduce, happens seldomly and is not
> very intrusive. Something heap-related too.

More details on the dtfile crash:

#0  0x000000000043d89f in UpdateHeaders (file_mgr_rec=0x5a5a5a5a5a5a5a5a, 
    file_mgr_data=0x805cf9940, icons_changed=1 '\001') at FileMgr.c:2899
2899       if ((file_mgr_data->show_iconic_path == 0) !=
(gdb) bt
#0  0x000000000043d89f in UpdateHeaders (file_mgr_rec=0x5a5a5a5a5a5a5a5a, 
    file_mgr_data=0x805cf9940, icons_changed=1 '\001') at FileMgr.c:2899
#1  0x000000000041b0d5 in ReaddirPipeCallback (client_data=0x805f73980, 
    fd=0x805edc3a8, id=Variable "id" is not available.
) at Directory.c:2207
#2  0x0000000801aaee0a in DoOtherSources (app=0x805c15180) at NextEvent.c:1141
#3  0x0000000801aaf1fd in XtAppNextEvent (app=0x805c15180, 
    event=0x7fffffffcbe0) at NextEvent.c:1243
#4  0x0000000801aaf083 in XtNextEvent (event=0x7fffffffcbe0)
    at NextEvent.c:1208
#5  0x000000000045f938 in main (argc=1, argv=0x7fffffffce28) at Main.c:1823

(gdb) frame 1
#1  0x000000000041b0d5 in ReaddirPipeCallback (client_data=0x805f73980, 
    fd=0x805edc3a8, id=Variable "id" is not available.
) at Directory.c:2207
l2207               UpdateHeaders(file_mgr_rec, file_mgr_data, True);
(gdb) list
2202             /* update all views */
2203             for (i = 0; i < directory->numOfViews; i++)
2204             {
2205                file_mgr_data = directory->directoryView[i].file_mgr_data;
2206                file_mgr_rec = (FileMgrRec *)file_mgr_data->file_mgr_rec;
2207                UpdateHeaders(file_mgr_rec, file_mgr_data, True);
2208                XmUpdateDisplay(file_mgr_rec->file_window);
2209             }
2210             XSync(XtDisplay(toplevel), False);
2211             break;
(gdb) print directory->directoryView[0]
$1 = {file_mgr_data = 0x805cf9940, mapped = 1 '\001'}
(gdb) print directory->directoryView[1]
$2 = {file_mgr_data = 0x805cf9940, mapped = 1 '\001'}
(gdb) print *directory->directoryView[1]

(gdb) print i
$3 = 1
(gdb) print *directory
$4 = {host_name = 0x805ee9270 "radziecki", 
  directory_name = 0x805ef5460 "/usr/home/saper/.dt/Trash", 
  path_name = 0x805efbde0 "/usr/home/saper/.dt/Trash", 
  tt_path_name = 0x805ea43a0 "/usr/home/saper/.dt/Trash", viewed = 1 '\001', 
  activity = activity_reading, busy = "\000\001\000\000\000\000", 
  errmsg_needed = 0 '\0', errnum = 0, modify_time = 1349211636, 
  last_check = 1582, link_check_needed = 0 '\0', file_count = 4, 
  file_data = 0x805e05800, new_data = 0x0, dir_data = 0x805e05c80, 
  path_count = 6, path_logical_types = 0x805e74370, position_count = 0, 
  position_info = 0x0, modify_begin = 0, was_up_to_date = 1 '\001', 
  modified_count = 0, modified_list = 0x0, numOfViews = 2, 
  directoryView = 0x805efbee0}
(gdb) print *directory->numOfViews 
Cannot access memory at address 0x2
(gdb) print directory->numOfViews
$5 = 2

(gdb) print *directory->directoryView[1].file_mgr_data
$10 = {displayed = 90 'Z', x = 23130, y = 23130, width = 23130, 
  height = 23130, mapped = 90 'Z', busy_status = 1, busy_detail = 1515870810, 
  show_type = 90 'Z', tree_files = 90 'Z', tree_preread_level = 23130, 
  tree_show_level = 23130, restoreKind = 1515870810, 
  host = 0x5a5a5a5a5a5a5a5a <Address 0x5a5a5a5a5a5a5a5a out of bounds>, 
  current_directory = 0x5a5a5a5a5a5a5a5a <Address 0x5a5a5a5a5a5a5a5a out of 
bounds>, branch_list = 0x5a5a5a5a5a5a5a5a, view = 90 'Z', view_single = 90 'Z', 
  view_tree = 90 'Z', order = 90 'Z', direction = 90 'Z', 
  positionEnabled = 90 'Z', newSize = 90 'Z', 
  restricted_directory = 0x5a5a5a5a5a5a5a5a <Address 0x5a5a5a5a5a5a5a5a out of 
bounds>, title = 0x5a5a5a5a5a5a5a5a <Address 0x5a5a5a5a5a5a5a5a out of bounds>, 
  helpVol = 0x5a5a5a5a5a5a5a5a <Address 0x5a5a5a5a5a5a5a5a out of bounds>,

so it looks like the same directory is being in the list twice? (which 
may or may not be correct)

(gdb) down
#0  0x000000000043d89f in UpdateHeaders (file_mgr_rec=0x5a5a5a5a5a5a5a5a, 
    file_mgr_data=0x805cf9940, icons_changed=1 '\001') at FileMgr.c:2899
2899       if ((file_mgr_data->show_iconic_path == 0) !=

(gdb) print file_mgr_data
$7 = (FileMgrData *) 0x805cf9940
(gdb) print file_mgr_rec
$8 = (FileMgrRec *) 0x5a5a5a5a5a5a5a5a

Maybe somebody can find out what's up here :)

//Marcin

------------------------------------------------------------------------------
Don't let slow site performance ruin your business. Deploy New Relic APM
Deploy New Relic app performance management and know exactly
what is happening inside your Ruby, Python, PHP, Java, and .NET app
Try New Relic at no cost today and get our sweet Data Nerd shirt too!
http://p.sf.net/sfu/newrelic-dev2dev
_______________________________________________
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel

Reply via email to