Mon Mar 27 21:44:04 2006 Soeren Sandmann <sandmann@redhat.com>
* sformat.[ch]: New files containing a simplified and sanitized
version of the state machine and type system from sfile.c.
* sfile.c: Move the state machine and type management to separate
files. Make the amount of memory used during loading and saving
less obscene.
* stackstash.c (stack_stash_new_from_root): Make this function
store the root again.
Sun Jan 15 00:24:02 2006 Soeren Sandmann <sandmann@redhat.com>
* TODO: Updates
* sysprof.c (build_gui): Rename 'callers' column 'ancestors'
* profile.c (profile_list_callers): Make this function list all
ancestors of the function. Also make it report correct numbers
again.
Sat Jan 14 18:24:43 2006 Soeren Sandmann <sandmann@redhat.com>
* configure.ac, Makefile.am: Only build GUI when the necessary
dependencies are found.
* sysprof.c (compute_text_width): Remove unused variable
* profile.c (build_object_list): Follow next instead of siblings.
Mon Nov 7 23:42:26 2005 Soeren Sandmann <sandmann@redhat.com>
* sysprof.c: Add beginning of a screenshot
window.
* sysprof.glade: Add screenshot window plus menu items.
* stackstash.c: Remove unused function stack_node_list_leaves()
* xmlstore.c: Various crack
Sun Nov 6 18:31:23 2005 Soeren Sandmann <sandmann@redhat.com>
* stackstash.c (stack_stash_foreach):
* stackstash.c (stack_node_foreach_trace): Make these function
call back with GLists rather than GSLists.
* profile.c (add_trace_to_tree): Iterate backwards instead of
copying the list.
Sun Nov 6 17:06:52 2005 Soeren Sandmann <sandmann@redhat.com>
* profile.c (add_trace_to_tree): Turn this function into a
StackFunction.
* stackstash.c (stack_node_foreach_trace): Make this function take
a StackFunction, and reimplement with do_callback().
Sat Nov 5 18:06:40 2005 Soeren Sandmann <sandmann@redhat.com>
* profile.c (profile_create_descendants): Use callbacks from
stackstash.
* stackstash.c (stack_node_foreach_trace): New function
* stackstash.c (do_node_callback): New function
Sat Nov 5 12:39:33 2005 Soeren Sandmann <sandmann@redhat.com>
* profile.c (add_trace_to_tree): Don't compute the total field.
* profile.h (struct ProfileDescendant): Remove 'total' field.
* sysprof.c: Delete DESCENDANTS_TOTAL column and everything
related to it.
* profile.c: Remove commented out code
* sfile.c (handle_text): Don't copy the text
Mon Oct 31 23:41:33 2005 Soeren Sandmann <sandmann@redhat.com>
* stackstash.h (struct StackNode): Add "total" field.
* stackstash.c (stack_stash_add_trace): Keep track of the
aggregate size.
* profile.c (profile_get_size): Sum the totals of the siblings
instead of all the children.
* profile.c (build_object_list): Correctly compute obj->self
* profile.c (profile_load): Don't ignore the node->total field.
* profile.c (serialize_call_tree): Save node->total instead of the
computed total
* profile.c (compute_total): Use n->total instead of computing it
from scratch.
* profile.c: Remove unused sum_children() function.
* TODO: Updates
* process.c (process_get_from_pid): Plug leak.
Sat May 7 13:57:17 2005 Søren Sandmann <sandmann@redhat.com>
* sfile.c (sfile_output_free): Implement this function
* sfile.c (sfile_input_free): Implement this function
Sat Apr 23 19:12:52 2005 Søren Sandmann <sandmann@redhat.com>
* profile.c: Store a pointer to the root of the call tree
* profile.c (profile_load): Call sfile_input_free()
* sfile.c (sformat_free): Implement this function
Thu Mar 31 00:19:47 2005 Soeren Sandmann <sandmann@redhat.com>
* sysprof.c (set_busy): Make this function work
* sysprof.c (on_profile_toggled): Use it here
* sysprof.c (on_object_selection_changed): And here
* profile.c (add_trace_to_tree): Use GPtrArrays instead of
GHashTable and GList.
Fri Mar 25 19:39:24 2005 Søren Sandmann <sandmann@redhat.com>
* TODO: Remove "loading and saving"
* sysprof.glade: Add ellipsises to Open and Save menu items.
* sysprof.c (overwrite_file): Add this function, cutted-and-pasted
from evince.
* sysprof.c (on_save_as_clicked, on_open_clicked): Use
GtkFileChoosers to pick the names.
* sysprof.c: Various GUI updates.
Wed Mar 23 00:04:07 2005 Soeren Sandmann <sandmann@redhat.com>
Primitive loading and saving.
* sysprof.c (on_open_clicked): Hook up loading.
* sfile.c: Add a copy of g_file_replace() from glib CVS HEAD.
* sfile.c (add_string): Escape and quote the string
* sfile.c (sfile_load): Initialize current_instruction and
instructions_by_location
* sfile.c (post_process_instructions_recurse): Handle NULL
pointers properly.
* sfile.c (handle_begin_element, handle_end_element, handle_text):
Move error handling here from state_transition_begin/text/end.
* sfile.c (handle_text): Discard whitespace-only strings
* sfile.c (sfile_get_pointer, sfile_get_integer,
sfile_get_string): expect both begin, value, and end transitions.
* sfile.c (hook_up_pointers): Only treat instructions as pointer
values when they are. Handle NULL targets properly.
* sfile.c (get_number): Fix a few read-freed-data bugs
* profile.c (profile_load): Call sfile_end_get() for the profile;
build the nodes_by_objects hash table. Build the call tree.
* profile.c (create_format): Don't store next pointer, but do
store total, self and toplevel.
* profile.c (make_hash_table): New function to build
nodes_by_object hashtable from loaded data
Thu Mar 3 23:48:13 2005 Soeren Sandmann <sandmann@redhat.com>
* profile.c (profile_load): Write this function.
* sfile.c: Add support for user defined record and list types.
Simplify logic a lot.
Wed Mar 2 23:39:50 2005 Soeren Sandmann <sandmann@redhat.com>
* profile.[ch], sfile.[ch]: Experiment with a
file-format-description format.
* sysprof.c: Add commented out code using /proc/ based
timeout.