Fix the wireless settings button for AirPCap devices in the
[obnox/wireshark/wip.git] / gtk / summary_dlg.c
index c57936c49a0ae0c389361027974b40d2be770d87..6af42dc69cdfb6c77cf2fbc1f4703b2b5f8d73e6 100644 (file)
@@ -112,6 +112,9 @@ summary_open_cb(GtkWidget *w _U_, gpointer d _U_)
   GtkTreeIter    iter;
   GtkCellRenderer *renderer;
   GtkTreeViewColumn *column;
+#ifdef HAVE_LIBPCAP
+  const char    *dl_description;
+#endif
   static const char *titles[] = { "Traffic", "Captured", "Displayed", "Marked" };
 
   gchar         string_buff[SUM_STR_MAX];
@@ -229,7 +232,7 @@ summary_open_cb(GtkWidget *w _U_, gpointer d _U_)
 
   /* Capture */
   add_string_to_table(table, &row, "", "");
-  add_string_to_table_sensitive(table, &row, "Capture", "", (global_capture_opts.ifaces->len>0));
+  add_string_to_table_sensitive(table, &row, "Capture", "", (summary.ifaces->len > 0));
   scrolled_window = gtk_scrolled_window_new (NULL, NULL);
   gtk_container_set_border_width (GTK_CONTAINER (scrolled_window), 5);
   gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window),
@@ -275,17 +278,21 @@ summary_open_cb(GtkWidget *w _U_, gpointer d _U_)
     if (iface.cfilter && iface.cfilter[0] != '\0') {
       g_snprintf(string_buff3, SUM_STR_MAX, "%s", iface.cfilter);
     } else {
-      if(iface.name) {
+      if (iface.name) {
         g_snprintf(string_buff3, SUM_STR_MAX, "none");
       } else {
         g_snprintf(string_buff3, SUM_STR_MAX, "unknown");
       }
     }
+    dl_description = pcap_datalink_val_to_description(iface.linktype);
+    if (dl_description != NULL)
+      g_snprintf(string_buff4, SUM_STR_MAX, "%s", dl_description);
+    else
+      g_snprintf(string_buff4, SUM_STR_MAX, "DLT %d", iface.linktype);
+#else
+    g_snprintf(string_buff3, SUM_STR_MAX, "unknown");
+    g_snprintf(string_buff4, SUM_STR_MAX, "unknown");
 #endif
-    g_snprintf(string_buff4, SUM_STR_MAX, "%s", pcap_datalink_val_to_description(iface.linktype));
-    if (strcmp(string_buff4, "(null)") == 0) {
-      strcpy(string_buff4, "unknown");
-    }
     if (iface.has_snap) {
       g_snprintf(string_buff5, SUM_STR_MAX, "%u bytes", iface.snap);
     } else {