aboutsummaryrefslogtreecommitdiffstats
path: root/gtk
diff options
context:
space:
mode:
authorMichael Tüxen <tuexen@fh-muenster.de>2011-08-16 09:35:14 +0000
committerMichael Tüxen <tuexen@fh-muenster.de>2011-08-16 09:35:14 +0000
commit31fae9a126b10d46cf1813b9650894d31644df5a (patch)
tree231642985cee82ded5bbf7f35c4458ccdba81cb6 /gtk
parentc25dd4b1ceb6e65acab42c754fa0efaa748c1df5 (diff)
Handle the case in the capture options dialog box
where no interfaces are available. svn path=/trunk/; revision=38554
Diffstat (limited to 'gtk')
-rw-r--r--gtk/capture_dlg.c31
-rw-r--r--gtk/main_welcome.c6
2 files changed, 20 insertions, 17 deletions
diff --git a/gtk/capture_dlg.c b/gtk/capture_dlg.c
index def3a9c25a..bc01ea43f6 100644
--- a/gtk/capture_dlg.c
+++ b/gtk/capture_dlg.c
@@ -2321,17 +2321,18 @@ static void capture_all_cb(GtkToggleButton *button, gpointer d _U_)
enabled = TRUE;
if_cb = (GtkTreeView *) g_object_get_data(G_OBJECT(cap_open_w), E_CAP_IFACE_KEY);
model = gtk_tree_view_get_model(if_cb);
- gtk_tree_model_get_iter_from_string(model, &iter, "0");
pcap_ng_cb = (GtkWidget *) g_object_get_data(G_OBJECT(cap_open_w), E_CAP_PCAP_NG_KEY);
- do {
- gtk_tree_model_get (model, &iter, CAPTURE, &capture_set, -1);
- if (!capture_set && enabled) {
- num_selected++;
- } else if (capture_set && !enabled) {
- num_selected--;
- }
- gtk_list_store_set(GTK_LIST_STORE(model), &iter, CAPTURE, enabled, -1);
- } while (gtk_tree_model_iter_next(model, &iter));
+ if (gtk_tree_model_get_iter_first(model, &iter)) {
+ do {
+ gtk_tree_model_get (model, &iter, CAPTURE, &capture_set, -1);
+ if (!capture_set && enabled) {
+ num_selected++;
+ } else if (capture_set && !enabled) {
+ num_selected--;
+ }
+ gtk_list_store_set(GTK_LIST_STORE(model), &iter, CAPTURE, enabled, -1);
+ } while (gtk_tree_model_iter_next(model, &iter));
+ }
if (num_selected >= 2) {
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(pcap_ng_cb), TRUE);
gtk_widget_set_sensitive(pcap_ng_cb, FALSE);
@@ -2371,11 +2372,11 @@ static void promisc_mode_callback(GtkToggleButton *button, gpointer d _U_)
if_cb = (GtkTreeView *) g_object_get_data(G_OBJECT(cap_open_w), E_CAP_IFACE_KEY);
model = gtk_tree_view_get_model(if_cb);
- gtk_tree_model_get_iter_from_string(model, &iter, "0");
-
- do {
- gtk_list_store_set(GTK_LIST_STORE(model), &iter, PMODE, enabled?"yes":"no", -1);
- } while (gtk_tree_model_iter_next(model, &iter));
+ if (gtk_tree_model_get_iter_first(model, &iter)) {
+ do {
+ gtk_list_store_set(GTK_LIST_STORE(model), &iter, PMODE, enabled?"yes":"no", -1);
+ } while (gtk_tree_model_iter_next(model, &iter));
+ }
for (i = 0; i < rows->len; i++) {
row = g_array_index(rows, interface_row, i);
diff --git a/gtk/main_welcome.c b/gtk/main_welcome.c
index db77ff3320..470f8a8fe6 100644
--- a/gtk/main_welcome.c
+++ b/gtk/main_welcome.c
@@ -854,8 +854,10 @@ void change_selection_for_all(gboolean enable)
{
guint i;
- for (i = 0; i < interfaces->len; i++) {
- change_interface_selection(g_array_index(interfaces, displayed_interface, i).name, enable);
+ if (interfaces) {
+ for (i = 0; i < interfaces->len; i++) {
+ change_interface_selection(g_array_index(interfaces, displayed_interface, i).name, enable);
+ }
}
}
#endif