summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--divelist.c31
-rw-r--r--info.c3
2 files changed, 17 insertions, 17 deletions
diff --git a/divelist.c b/divelist.c
index 26ccd3de4..50e279550 100644
--- a/divelist.c
+++ b/divelist.c
@@ -2856,6 +2856,19 @@ static void scroll_to_selected(GtkTreeIter *iter)
gtk_tree_path_free(treepath);
}
+static void go_to_iter(GtkTreeSelection *selection, GtkTreeIter *iter)
+{
+ GtkTreePath *path;
+
+ scroll_to_selected(iter);
+ gtk_tree_selection_unselect_all(selection);
+ gtk_tree_selection_select_iter(selection, iter);
+
+ path = gtk_tree_model_get_path(GTK_TREE_MODEL(dive_list.model), iter);
+ gtk_tree_view_set_cursor(GTK_TREE_VIEW(dive_list.tree_view), path, NULL, FALSE);
+ gtk_tree_path_free(path);
+}
+
void show_and_select_dive(struct dive *dive)
{
GtkTreeSelection *selection;
@@ -2869,26 +2882,12 @@ void show_and_select_dive(struct dive *dive)
return;
iter = get_iter_from_idx(divenr);
selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(dive_list.tree_view));
- gtk_tree_selection_unselect_all(selection);
for_each_dive(i, odive)
odive->selected = FALSE;
amount_selected = 1;
+ selected_dive = divenr;
dive->selected = TRUE;
- gtk_tree_selection_select_iter(selection, iter);
- scroll_to_selected(iter);
-}
-
-static void go_to_iter(GtkTreeSelection *selection, GtkTreeIter *iter)
-{
- GtkTreePath *path;
-
- scroll_to_selected(iter);
- gtk_tree_selection_unselect_all(selection);
- gtk_tree_selection_select_iter(selection, iter);
-
- path = gtk_tree_model_get_path(GTK_TREE_MODEL(dive_list.model), iter);
- gtk_tree_view_set_cursor(GTK_TREE_VIEW(dive_list.tree_view), path, NULL, FALSE);
- gtk_tree_path_free(path);
+ go_to_iter(selection, iter);
}
void select_next_dive(void)
diff --git a/info.c b/info.c
index 2916c0eaf..5e47a2590 100644
--- a/info.c
+++ b/info.c
@@ -906,7 +906,8 @@ int edit_multi_dive_info(struct dive *single_dive)
master = single_dive;
if (!master)
master = current_dive;
-
+ if (!master)
+ return 0;
/* See if we should use multi dive mode */
multi = FALSE;
if (!single_dive) {