]> Pileus Git - ~andy/gtk/commitdiff
so this function was completely broken. Fix it and improve readability.
authorKristian Rietveld <kris@gtk.org>
Wed, 17 Apr 2002 22:26:44 +0000 (22:26 +0000)
committerKristian Rietveld <kristian@src.gnome.org>
Wed, 17 Apr 2002 22:26:44 +0000 (22:26 +0000)
Thu Apr 18 00:23:31 2002  Kristian Rietveld  <kris@gtk.org>

        * gtk/gtktreemodelsort.c
        (gtk_tree_model_sort_convert_path_to_child_path): so this function
        was completely broken. Fix it and improve readability.

ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gtk/gtktreemodelsort.c

index 80579d8017a979971f6ece87e03189086ea813b3..af555d69f0f55daf9c8476e97044f66b0ea8b7fb 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Thu Apr 18 00:23:31 2002  Kristian Rietveld  <kris@gtk.org>
+
+       * gtk/gtktreemodelsort.c
+       (gtk_tree_model_sort_convert_path_to_child_path): so this function
+       was completely broken. Fix it and improve readability.
+
 2002-04-17  Anders Carlsson  <andersca@gnu.org>
 
        * tests/testtreeedit.c (button_press_event): Add a small
index 80579d8017a979971f6ece87e03189086ea813b3..af555d69f0f55daf9c8476e97044f66b0ea8b7fb 100644 (file)
@@ -1,3 +1,9 @@
+Thu Apr 18 00:23:31 2002  Kristian Rietveld  <kris@gtk.org>
+
+       * gtk/gtktreemodelsort.c
+       (gtk_tree_model_sort_convert_path_to_child_path): so this function
+       was completely broken. Fix it and improve readability.
+
 2002-04-17  Anders Carlsson  <andersca@gnu.org>
 
        * tests/testtreeedit.c (button_press_event): Add a small
index 80579d8017a979971f6ece87e03189086ea813b3..af555d69f0f55daf9c8476e97044f66b0ea8b7fb 100644 (file)
@@ -1,3 +1,9 @@
+Thu Apr 18 00:23:31 2002  Kristian Rietveld  <kris@gtk.org>
+
+       * gtk/gtktreemodelsort.c
+       (gtk_tree_model_sort_convert_path_to_child_path): so this function
+       was completely broken. Fix it and improve readability.
+
 2002-04-17  Anders Carlsson  <andersca@gnu.org>
 
        * tests/testtreeedit.c (button_press_event): Add a small
index 80579d8017a979971f6ece87e03189086ea813b3..af555d69f0f55daf9c8476e97044f66b0ea8b7fb 100644 (file)
@@ -1,3 +1,9 @@
+Thu Apr 18 00:23:31 2002  Kristian Rietveld  <kris@gtk.org>
+
+       * gtk/gtktreemodelsort.c
+       (gtk_tree_model_sort_convert_path_to_child_path): so this function
+       was completely broken. Fix it and improve readability.
+
 2002-04-17  Anders Carlsson  <andersca@gnu.org>
 
        * tests/testtreeedit.c (button_press_event): Add a small
index 80579d8017a979971f6ece87e03189086ea813b3..af555d69f0f55daf9c8476e97044f66b0ea8b7fb 100644 (file)
@@ -1,3 +1,9 @@
+Thu Apr 18 00:23:31 2002  Kristian Rietveld  <kris@gtk.org>
+
+       * gtk/gtktreemodelsort.c
+       (gtk_tree_model_sort_convert_path_to_child_path): so this function
+       was completely broken. Fix it and improve readability.
+
 2002-04-17  Anders Carlsson  <andersca@gnu.org>
 
        * tests/testtreeedit.c (button_press_event): Add a small
index 80579d8017a979971f6ece87e03189086ea813b3..af555d69f0f55daf9c8476e97044f66b0ea8b7fb 100644 (file)
@@ -1,3 +1,9 @@
+Thu Apr 18 00:23:31 2002  Kristian Rietveld  <kris@gtk.org>
+
+       * gtk/gtktreemodelsort.c
+       (gtk_tree_model_sort_convert_path_to_child_path): so this function
+       was completely broken. Fix it and improve readability.
+
 2002-04-17  Anders Carlsson  <andersca@gnu.org>
 
        * tests/testtreeedit.c (button_press_event): Add a small
index 038251d5b884f227e809954b8a18a95ed1e66b50..fb6aee381eaf1b44bf1597a21c5108738629bd52 100644 (file)
@@ -1964,19 +1964,26 @@ gtk_tree_model_sort_convert_path_to_child_path (GtkTreeModelSort *tree_model_sor
 
   for (i = 0; i < gtk_tree_path_get_depth (sorted_path); i++)
     {
+      gint count = sorted_indices[i];
+
       if ((level == NULL) ||
-         (level->array->len <= sorted_indices[i]))
+         (level->array->len <= count))
        {
          gtk_tree_path_free (retval);
          return NULL;
        }
-      if (g_array_index (level->array, SortElt, sorted_indices[i]).children == NULL)
-       gtk_tree_model_sort_build_level (tree_model_sort, level, &g_array_index (level->array, SortElt, sorted_indices[i]));
+
+      if (g_array_index (level->array, SortElt, count).children == NULL)
+       gtk_tree_model_sort_build_level (tree_model_sort, level, &g_array_index (level->array, SortElt, count));
 
       if (level == NULL)
-       break;
+        {
+         gtk_tree_path_free (retval);
+         break;
+       }
 
-      gtk_tree_path_append_index (retval, g_array_index (level->array, SortElt, i).offset);
+      gtk_tree_path_append_index (retval, g_array_index (level->array, SortElt, count).offset);
+      level = g_array_index (level->array, SortElt, count).children;
     }
  
   return retval;