rem: if ( DEBUG ) printf ( "remplit_arbre_categ\n" );
add: devel_debug ( "remplit_arbre_categ" );
context: void remplit_arbre_categ ( void ){    GSList *category_list;    GtkTreeIter iter_categ, iter_sous_categ;    if ( DEBUG )	printf ( "remplit_arbre_categ\n" );    /** First, remove previous tree */    gtk_tree_store_clear ( GTK_TREE_STORE (categ_tree_model) );    /* Compute category balances. */    gsb_data_category_update_counters ();    /** Then, populate tree with categories. */    category_list = gsb_data_category_get_categories_list ();    category_list = g_slist_prepend ( category_list, NULL );    while ( category_list )    {	gint category_number;	category_number = gsb_data_category_get_no_category (category_list -> data);	gtk_tree_store_append (GTK_TREE_STORE (categ_tree_model), &iter_categ, NULL);	fill_division_row ( GTK_TREE_MODEL(categ_tree_model), category_interface, 			    &iter_categ, gsb_data_category_get_structure (category_number));	/** Each category has subcategories. */	if ( category_number )	{	    GSList *sub_category_list;	    sub_category_list = gsb_data_category_get_sub_category_list ( category_number );	    while ( sub_category_list )	    {		gint sub_category_number;		sub_category_number = gsb_data_category_get_no_sub_category (sub_category_list -> data);		gtk_tree_store_append (GTK_TREE_STORE (categ_tree_model), 				       &iter_sous_categ, &iter_categ);		fill_sub_division_row ( GTK_TREE_MODEL(categ_tree_model), category_interface, 					&iter_sous_categ,					gsb_data_category_get_structure (category_number),					gsb_data_category_get_sub_category_structure( category_number,										      sub_category_number));		sub_category_list = sub_category_list -> next;	    }	}	gtk_tree_store_append (GTK_TREE_STORE (categ_tree_model), 			       &iter_sous_categ, &iter_categ);	fill_sub_division_row ( GTK_TREE_MODEL(categ_tree_model), category_interface, 				&iter_sous_categ, gsb_data_category_get_structure (category_number), NULL );		category_list = category_list -> next;    }}