aboutsummaryrefslogtreecommitdiffstats
path: root/gtk
diff options
context:
space:
mode:
authorcmaynard <cmaynard@f5534014-38df-0310-8fa8-9805f1628bb7>2010-11-17 03:29:12 +0000
committercmaynard <cmaynard@f5534014-38df-0310-8fa8-9805f1628bb7>2010-11-17 03:29:12 +0000
commit39f2774f683445820e0569144c7c2cfcec94ac20 (patch)
tree364188d3a603dafea951d4297e0921b0956807d5 /gtk
parent3881222d908c0ea2e46254c8ec2b11cd8a28d7a7 (diff)
Quote all fields when exporting to CSV. Fixes bug 2811.
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@34920 f5534014-38df-0310-8fa8-9805f1628bb7
Diffstat (limited to 'gtk')
-rw-r--r--gtk/conversations_table.c18
-rw-r--r--gtk/hostlist_table.c8
-rw-r--r--gtk/iax2_analysis.c36
-rw-r--r--gtk/io_stat.c8
-rw-r--r--gtk/rtp_analysis.c52
-rw-r--r--gtk/rtp_stream_dlg.c4
-rw-r--r--gtk/wlan_stat_dlg.c6
7 files changed, 66 insertions, 66 deletions
diff --git a/gtk/conversations_table.c b/gtk/conversations_table.c
index 658cb83feb..6626deb76f 100644
--- a/gtk/conversations_table.c
+++ b/gtk/conversations_table.c
@@ -2197,7 +2197,7 @@ csv_handle(GtkTreeModel *model, GtkTreePath *path _U_, GtkTreeIter *iter,
case DST_PORT_COLUMN:
gtk_tree_model_get(model, iter, csv->columns_order[i], &table_text, -1);
if (table_text) {
- g_string_append(csv->CSV_str, table_text);
+ g_string_append_printf(csv->CSV_str, "\"%s\"", table_text);
g_free(table_text);
}
break;
@@ -2208,26 +2208,26 @@ csv_handle(GtkTreeModel *model, GtkTreePath *path _U_, GtkTreeIter *iter,
case PKT_BA_COLUMN:
case BYTES_BA_COLUMN:
gtk_tree_model_get(model, iter, csv->columns_order[i], &value, -1);
- g_string_append_printf(csv->CSV_str, "%" G_GINT64_MODIFIER "u", value);
+ g_string_append_printf(csv->CSV_str, "\"%" G_GINT64_MODIFIER "u\"", value);
break;
case START_COLUMN:
- g_string_append_printf(csv->CSV_str, "%s", rel_time_to_secs_str(&conv->start_time));
+ g_string_append_printf(csv->CSV_str, "\"%s\"", rel_time_to_secs_str(&conv->start_time));
break;
case DURATION_COLUMN:
- g_string_append_printf(csv->CSV_str, "%.4f", duration_s);
+ g_string_append_printf(csv->CSV_str, "\"%.4f\"", duration_s);
break;
case BPS_AB_COLUMN:
if (duration_s > 0 && conv->tx_frames > 1) {
- g_string_append_printf(csv->CSV_str, "%.2f", (gint64) conv->tx_bytes * 8 / duration_s);
+ g_string_append_printf(csv->CSV_str, "\"%.2f\"", (gint64) conv->tx_bytes * 8 / duration_s);
} else {
- g_string_append(csv->CSV_str, NO_BPS_STR);
+ g_string_append(csv->CSV_str, "\"" NO_BPS_STR "\"");
}
break;
case BPS_BA_COLUMN:
if (duration_s > 0 && conv->rx_frames > 1) {
- g_string_append_printf(csv->CSV_str, "%.2f", (gint64) conv->rx_bytes * 8 / duration_s);
+ g_string_append_printf(csv->CSV_str, "\"%.2f\"", (gint64) conv->rx_bytes * 8 / duration_s);
} else {
- g_string_append(csv->CSV_str, NO_BPS_STR);
+ g_string_append(csv->CSV_str, "\"" NO_BPS_STR "\"");
}
break;
default:
@@ -2267,7 +2267,7 @@ copy_as_csv_cb(GtkWindow *copy_bt, gpointer data _U_)
csv.columns_order[csv.nb_cols] = gtk_tree_view_column_get_sort_column_id(column);
if (csv.nb_cols)
g_string_append(csv.CSV_str, ",");
- g_string_append(csv.CSV_str, gtk_tree_view_column_get_title(column));
+ g_string_append_printf(csv.CSV_str, "\"%s\"", gtk_tree_view_column_get_title(column));
csv.nb_cols++;
}
columns = g_list_next(columns);
diff --git a/gtk/hostlist_table.c b/gtk/hostlist_table.c
index fadf99290b..21b301eb30 100644
--- a/gtk/hostlist_table.c
+++ b/gtk/hostlist_table.c
@@ -840,7 +840,7 @@ csv_handle(GtkTreeModel *model, GtkTreePath *path _U_, GtkTreeIter *iter,
case PORT_COLUMN:
gtk_tree_model_get(model, iter, csv->columns_order[i], &table_text, -1);
if (table_text) {
- g_string_append(csv->CSV_str, table_text);
+ g_string_append_printf(csv->CSV_str, "\"%s\"", table_text);
g_free(table_text);
}
break;
@@ -851,12 +851,12 @@ csv_handle(GtkTreeModel *model, GtkTreePath *path _U_, GtkTreeIter *iter,
case PKT_BA_COLUMN:
case BYTES_BA_COLUMN:
gtk_tree_model_get(model, iter, csv->columns_order[i], &value, -1);
- g_string_append_printf(csv->CSV_str, "%" G_GINT64_MODIFIER "u", value);
+ g_string_append_printf(csv->CSV_str, "\"%" G_GINT64_MODIFIER "u\"", value);
break;
default:
gtk_tree_model_get(model, iter, csv->columns_order[i], &table_text, -1);
if (table_text) {
- g_string_append(csv->CSV_str, table_text);
+ g_string_append_printf(csv->CSV_str, "\"%s\"", table_text);
g_free(table_text);
}
break;
@@ -894,7 +894,7 @@ copy_as_csv_cb(GtkWindow *copy_bt, gpointer data _U_)
csv.columns_order[csv.nb_cols] = gtk_tree_view_column_get_sort_column_id(column);
if (csv.nb_cols)
g_string_append(csv.CSV_str, ",");
- g_string_append(csv.CSV_str, gtk_tree_view_column_get_title(column));
+ g_string_append_printf(csv.CSV_str, "\"%s\"", gtk_tree_view_column_get_title(column));
csv.nb_cols++;
}
columns = g_list_next(columns);
diff --git a/gtk/iax2_analysis.c b/gtk/iax2_analysis.c
index 80ff41bde7..be79046c96 100644
--- a/gtk/iax2_analysis.c
+++ b/gtk/iax2_analysis.c
@@ -1867,9 +1867,9 @@ static gboolean save_csv_as_ok_cb(GtkWidget *w _U_, gpointer fc /*user_data_t *u
for(j = 0; j < NUM_COLS; j++) {
if (j == 0) {
- fprintf(fp,"%s",titles[j]);
+ fprintf(fp,"\"%s\"",titles[j]);
} else {
- fprintf(fp,",%s",titles[j]);
+ fprintf(fp,",\"%s\"",titles[j]);
}
}
fprintf(fp,"\n");
@@ -1893,13 +1893,13 @@ static gboolean save_csv_as_ok_cb(GtkWidget *w _U_, gpointer fc /*user_data_t *u
5, &date_str,
6, &length,
-1);
- fprintf(fp, "%u",packet);
- fprintf(fp, ",%.2f", delta);
- fprintf(fp, ",%.2f", jitter);
- fprintf(fp, ",%.2f", ipbw);
- fprintf(fp, ",%s", status_str);
- fprintf(fp, ",%s", date_str);
- fprintf(fp, ",%u", length);
+ fprintf(fp, "\"%u\"",packet);
+ fprintf(fp, ",\"%.2f\"", delta);
+ fprintf(fp, ",\"%.2f\"", jitter);
+ fprintf(fp, ",\"%.2f\"", ipbw);
+ fprintf(fp, ",\"%s\"", status_str);
+ fprintf(fp, ",\"%s\"", date_str);
+ fprintf(fp, ",\"%u\"", length);
fprintf(fp,"\n");
g_free(status_str);
g_free(date_str);
@@ -1947,9 +1947,9 @@ static gboolean save_csv_as_ok_cb(GtkWidget *w _U_, gpointer fc /*user_data_t *u
}
for(j = 0; j < NUM_COLS; j++) {
if (j == 0) {
- fprintf(fp,"%s",titles[j]);
+ fprintf(fp,"\"%s\"",titles[j]);
} else {
- fprintf(fp,",%s",titles[j]);
+ fprintf(fp,",\"%s\"",titles[j]);
}
}
fprintf(fp,"\n");
@@ -1975,13 +1975,13 @@ static gboolean save_csv_as_ok_cb(GtkWidget *w _U_, gpointer fc /*user_data_t *u
5, &date_str,
6, &length,
-1);
- fprintf(fp, "%u",packet);
- fprintf(fp, ",%.2f", delta);
- fprintf(fp, ",%.2f", jitter);
- fprintf(fp, ",%.2f", ipbw);
- fprintf(fp, ",%s", status_str);
- fprintf(fp, ",%s", date_str);
- fprintf(fp, ",%u", length);
+ fprintf(fp, "\"%u\"",packet);
+ fprintf(fp, ",\"%.2f\"", delta);
+ fprintf(fp, ",\"%.2f\"", jitter);
+ fprintf(fp, ",\"%.2f\"", ipbw);
+ fprintf(fp, ",\"%s\"", status_str);
+ fprintf(fp, ",\"%s\"", date_str);
+ fprintf(fp, ",\"%u\"", length);
fprintf(fp,"\n");
g_free(status_str);
g_free(date_str);
diff --git a/gtk/io_stat.c b/gtk/io_stat.c
index 4079ddb989..9147adc861 100644
--- a/gtk/io_stat.c
+++ b/gtk/io_stat.c
@@ -2066,21 +2066,21 @@ copy_as_csv_cb(GtkWindow *copy_bt _U_, gpointer user_data)
GString *CSV_str=g_string_new("");
io_stat_t *io = user_data;
- g_string_append(CSV_str, "Interval start");
+ g_string_append(CSV_str, "\"Interval start\"");
for(i=0;i<MAX_GRAPHS;i++) {
if (io->graphs[i].display) {
- g_string_append_printf(CSV_str, ",Graph %d", i+1);
+ g_string_append_printf(CSV_str, ",\"Graph %d\"", i+1);
}
}
g_string_append(CSV_str,"\n");
for(interval=0; interval<io->max_interval; interval+=io->interval) {
print_interval_string (string, 15, interval, io, FALSE);
- g_string_append(CSV_str, string);
+ g_string_append_printf(CSV_str, "\"%s\"", string);
for(i=0;i<MAX_GRAPHS;i++) {
if (io->graphs[i].display) {
val=get_it_value(io, i, interval/io->interval);
- g_string_append_printf(CSV_str, ",%d", val);
+ g_string_append_printf(CSV_str, ",\"%d\"", val);
}
}
g_string_append(CSV_str,"\n");
diff --git a/gtk/rtp_analysis.c b/gtk/rtp_analysis.c
index f2ba6539e5..025ff6dac1 100644
--- a/gtk/rtp_analysis.c
+++ b/gtk/rtp_analysis.c
@@ -1920,9 +1920,9 @@ static gboolean save_csv_as_ok_cb(GtkWidget *w _U_, gpointer fc /*user_data_t *u
for(j = 0; j < NUM_COLS; j++) {
if (j == 0) {
- fprintf(fp,"%s",titles[j]);
+ fprintf(fp,"\"%s\"",titles[j]);
} else {
- fprintf(fp,",%s",titles[j]);
+ fprintf(fp,",\"%s\"",titles[j]);
}
}
fprintf(fp,"\n");
@@ -1950,17 +1950,17 @@ static gboolean save_csv_as_ok_cb(GtkWidget *w _U_, gpointer fc /*user_data_t *u
DATE_COLUMN, &date_str,
LENGTH_COLUMN, &length,
-1);
- fprintf(fp, "%u", packet);
- fprintf(fp, ",%u", sequence);
- fprintf(fp, ",%u", timestamp);
- fprintf(fp, ",%.2f", delta);
- fprintf(fp, ",%.2f", jitter);
- fprintf(fp, ",%.2f", skew);
- fprintf(fp, ",%.2f", ipbw);
- fprintf(fp, ",%s", marker? "SET" : "");
- fprintf(fp, ",%s", status_str);
- fprintf(fp, ",%s", date_str);
- fprintf(fp, ",%u", length);
+ fprintf(fp, "\"%u\"", packet);
+ fprintf(fp, ",\"%u\"", sequence);
+ fprintf(fp, ",\"%u\"", timestamp);
+ fprintf(fp, ",\"%.2f\"", delta);
+ fprintf(fp, ",\"%.2f\"", jitter);
+ fprintf(fp, ",\"%.2f\"", skew);
+ fprintf(fp, ",\"%.2f\"", ipbw);
+ fprintf(fp, ",\"%s\"", marker? "SET" : "");
+ fprintf(fp, ",\"%s\"", status_str);
+ fprintf(fp, ",\"%s\"", date_str);
+ fprintf(fp, ",\"%u\"", length);
fprintf(fp,"\n");
g_free(status_str);
g_free(date_str);
@@ -2008,9 +2008,9 @@ static gboolean save_csv_as_ok_cb(GtkWidget *w _U_, gpointer fc /*user_data_t *u
}
for(j = 0; j < NUM_COLS; j++) {
if (j == 0) {
- fprintf(fp,"%s",titles[j]);
+ fprintf(fp,"\"%s\"",titles[j]);
} else {
- fprintf(fp,",%s",titles[j]);
+ fprintf(fp,",\"%s\"",titles[j]);
}
}
fprintf(fp,"\n");
@@ -2040,17 +2040,17 @@ static gboolean save_csv_as_ok_cb(GtkWidget *w _U_, gpointer fc /*user_data_t *u
DATE_COLUMN, &date_str,
LENGTH_COLUMN, &length,
-1);
- fprintf(fp, "%u", packet);
- fprintf(fp, ",%u", sequence);
- fprintf(fp, ",%u", timestamp);
- fprintf(fp, ",%.2f", delta);
- fprintf(fp, ",%.2f", jitter);
- fprintf(fp, ",%.2f", skew);
- fprintf(fp, ",%.2f", ipbw);
- fprintf(fp, ",%s", marker? "SET" : "");
- fprintf(fp, ",%s", status_str);
- fprintf(fp, ",%s", date_str);
- fprintf(fp, ",%u", length);
+ fprintf(fp, "\"%u\"", packet);
+ fprintf(fp, ",\"%u\"", sequence);
+ fprintf(fp, ",\"%u\"", timestamp);
+ fprintf(fp, ",\"%.2f\"", delta);
+ fprintf(fp, ",\"%.2f\"", jitter);
+ fprintf(fp, ",\"%.2f\"", skew);
+ fprintf(fp, ",\"%.2f\"", ipbw);
+ fprintf(fp, ",\"%s\"", marker? "SET" : "");
+ fprintf(fp, ",\"%s\"", status_str);
+ fprintf(fp, ",\"%s\"", date_str);
+ fprintf(fp, ",\"%u\"", length);
fprintf(fp,"\n");
g_free(status_str);
g_free(date_str);
diff --git a/gtk/rtp_stream_dlg.c b/gtk/rtp_stream_dlg.c
index 91138098b7..26184c9243 100644
--- a/gtk/rtp_stream_dlg.c
+++ b/gtk/rtp_stream_dlg.c
@@ -465,7 +465,7 @@ rtpstream_on_copy_as_csv(GtkWindow *win _U_, gpointer data _U_)
for (j=0; j<NUM_COLS-1; j++) {
column = gtk_tree_view_get_column(GTK_TREE_VIEW(list), j);
title = gtk_tree_view_column_get_title(column);
- g_string_append(CSV_str, title);
+ g_string_append_printf(CSV_str, "\"%s\"", title);
if (j<NUM_COLS-2) g_string_append(CSV_str, ",");
}
g_string_append(CSV_str,"\n");
@@ -475,7 +475,7 @@ rtpstream_on_copy_as_csv(GtkWindow *win _U_, gpointer data _U_)
for (i=0; i<streams_nb; i++) {
for (j=0; j<NUM_COLS-1; j++) {
gtk_tree_model_get(GTK_TREE_MODEL(list_store), &iter, j, &table_entry, -1);
- g_string_append(CSV_str,table_entry);
+ g_string_append_printf(CSV_str, "\"%s\"", table_entry);
if (j<NUM_COLS-2) g_string_append(CSV_str,",");
}
g_string_append(CSV_str,"\n");
diff --git a/gtk/wlan_stat_dlg.c b/gtk/wlan_stat_dlg.c
index 7a60389f4d..4efc320ff1 100644
--- a/gtk/wlan_stat_dlg.c
+++ b/gtk/wlan_stat_dlg.c
@@ -683,11 +683,11 @@ csv_handle(GtkTreeModel *model, GtkTreePath *path _U_, GtkTreeIter *iter,
if (i == BSSID_COLUMN || i == CHANNEL_COLUMN || i == SSID_COLUMN ||
i == PERCENT_COLUMN || i == PROTECTION_COLUMN) {
gtk_tree_model_get(model, iter, i, &table_text, -1);
- g_string_append(CSV_str, table_text);
+ g_string_append_printf(CSV_str, "\"%s\"", table_text);
g_free(table_text);
} else {
gtk_tree_model_get(model, iter, i, &table_value, -1);
- g_string_append_printf(CSV_str, "%u", table_value);
+ g_string_append_printf(CSV_str, "\"%u\"", table_value);
}
if (i != PROTECTION_COLUMN)
g_string_append(CSV_str,",");
@@ -708,7 +708,7 @@ wlan_copy_as_csv(GtkWindow *win _U_, gpointer data)
/* Add the column headers to the CSV data */
for (i=0; i<=PROTECTION_COLUMN; i++) {
- g_string_append(CSV_str, titles[i]);
+ g_string_append_printf(CSV_str, "\"%s\"", titles[i]);
if (i != PROTECTION_COLUMN)
g_string_append(CSV_str, ",");
}