aboutsummaryrefslogtreecommitdiffstats
path: root/ui
diff options
context:
space:
mode:
authorJakub Zawadzki <darkjames-ws@darkjames.pl>2018-01-22 18:45:47 +0100
committerJakub Zawadzki <darkjames-ws@darkjames.pl>2018-01-22 18:52:49 +0000
commit257e7d19fd204d5a27a8adcdf50602738891b5c0 (patch)
tree280d16afffdb2071220dd19e2d04b869d0929101 /ui
parent98305ba621f0e50199372fb31e4675b594830af9 (diff)
gtk: fix multiple memory leaks in prefs_capture
All leaks follow the same pattern if not gtk_tree_model_get_iter_first(), than memory allocated was not used/ freed. Put memory allocation under gtk_tree_model_get_iter_first() block. Found by clang scan. Change-Id: I8f9671ae5fb043343ab5dcdc39a57f1d28fec15b Reviewed-on: https://code.wireshark.org/review/25418 Petri-Dish: Jakub Zawadzki <darkjames-ws@darkjames.pl> Tested-by: Petri Dish Buildbot Reviewed-by: Jakub Zawadzki <darkjames-ws@darkjames.pl>
Diffstat (limited to 'ui')
-rw-r--r--ui/gtk/prefs_capture.c42
1 files changed, 16 insertions, 26 deletions
diff --git a/ui/gtk/prefs_capture.c b/ui/gtk/prefs_capture.c
index 8e87baaf6e..812f4ca8e9 100644
--- a/ui/gtk/prefs_capture.c
+++ b/ui/gtk/prefs_capture.c
@@ -1805,15 +1805,14 @@ ifopts_write_new_monitor_mode(void)
gint first_if = TRUE; /* flag to check if first in list */
gchar *ifnm;
gboolean monitor_mode;
- gchar *new_monitor_mode;
-
- /* new preferences "monitor mode" interfaces string */
- new_monitor_mode = (gchar*)g_malloc0(MAX_VAL_LEN);
/* get "monitor mode" flag text for each row (interface) */
model = gtk_tree_view_get_model(GTK_TREE_VIEW(cur_list));
store = GTK_LIST_STORE(model);
if( gtk_tree_model_get_iter_first(GTK_TREE_MODEL(store), &iter) ) {
+ /* new preferences "monitor mode" interfaces string */
+ gchar *new_monitor_mode = (gchar*)g_malloc0(MAX_VAL_LEN);
+
while (more_items) {
gtk_tree_model_get(GTK_TREE_MODEL(store), &iter,
DEVICE_COLUMN, &ifnm,
@@ -1860,15 +1859,13 @@ ifopts_write_new_linklayer(void)
gchar *ifnm;
gint linktype;
gchar *tmp_linklayer;
- gchar *new_linklayer;
-
- /* new preferences interfaces link-layer string */
- new_linklayer = (gchar *)g_malloc0(MAX_VAL_LEN);
/* get link-layer for each row (interface) */
model = gtk_tree_view_get_model(GTK_TREE_VIEW(cur_list));
store = GTK_LIST_STORE(model);
if( gtk_tree_model_get_iter_first(GTK_TREE_MODEL(store), &iter) ) {
+ /* new preferences interfaces link-layer string */
+ gchar *new_linklayer = (gchar *)g_malloc0(MAX_VAL_LEN);
while (more_items) {
gtk_tree_model_get(GTK_TREE_MODEL(store), &iter,
@@ -1919,15 +1916,13 @@ ifopts_write_new_buffersize(void)
gchar *ifnm;
gint buffersize;
gchar *tmp_buffersize;
- gchar *new_buffersize;
-
- /* new preferences interfaces buffer size string */
- new_buffersize = (gchar *)g_malloc0(MAX_VAL_LEN);
/* get buffer size for each row (interface) */
model = gtk_tree_view_get_model(GTK_TREE_VIEW(cur_list));
store = GTK_LIST_STORE(model);
if( gtk_tree_model_get_iter_first(GTK_TREE_MODEL(store), &iter) ) {
+ /* new preferences interfaces buffer size string */
+ gchar *new_buffersize = (gchar *)g_malloc0(MAX_VAL_LEN);
while (more_items) {
gtk_tree_model_get(GTK_TREE_MODEL(store), &iter,
@@ -1978,15 +1973,13 @@ ifopts_write_new_snaplen(void)
gint snaplen;
gboolean hassnap;
gchar *tmp_snaplen;
- gchar *new_snaplen;
-
- /* new preferences interfaces snap length string */
- new_snaplen = (gchar *)g_malloc0(MAX_VAL_LEN);
/* get snap length for each row (interface) */
model = gtk_tree_view_get_model(GTK_TREE_VIEW(cur_list));
store = GTK_LIST_STORE(model);
if( gtk_tree_model_get_iter_first(GTK_TREE_MODEL(store), &iter) ) {
+ /* new preferences interfaces snap length string */
+ gchar *new_snaplen = (gchar *)g_malloc0(MAX_VAL_LEN);
while (more_items) {
gtk_tree_model_get(GTK_TREE_MODEL(store), &iter,
@@ -2036,15 +2029,13 @@ ifopts_write_new_pmode(void)
gchar *ifnm;
gboolean pmode, off = FALSE;
gchar *tmp_pmode;
- gchar *new_pmode;
-
- /* new preferences interfaces promiscuous mode string */
- new_pmode = (gchar *)g_malloc0(MAX_VAL_LEN);
/* get promiscuous mode for each row (interface) */
model = gtk_tree_view_get_model(GTK_TREE_VIEW(cur_list));
store = GTK_LIST_STORE(model);
if( gtk_tree_model_get_iter_first(GTK_TREE_MODEL(store), &iter) ) {
+ /* new preferences interfaces promiscuous mode string */
+ gchar *new_pmode = (gchar *)g_malloc0(MAX_VAL_LEN);
while (more_items) {
gtk_tree_model_get(GTK_TREE_MODEL(store), &iter,
@@ -2103,15 +2094,14 @@ ifopts_write_new_descr(void)
gchar *ifnm;
gchar *desc;
gchar *tmp_descr;
- gchar *new_descr;
-
- /* new preferences interfaces description string */
- new_descr = (gchar *)g_malloc0(MAX_VAL_LEN);
/* get description for each row (interface) */
model = gtk_tree_view_get_model(GTK_TREE_VIEW(cur_list));
store = GTK_LIST_STORE(model);
if( gtk_tree_model_get_iter_first(GTK_TREE_MODEL(store), &iter) ) {
+ /* new preferences interfaces description string */
+ gchar *new_descr = (gchar *)g_malloc0(MAX_VAL_LEN);
+
while (more_items) {
gtk_tree_model_get(GTK_TREE_MODEL(store), &iter,
DEVICE_COLUMN, &ifnm,
@@ -2160,14 +2150,14 @@ ifopts_write_new_hide(void)
gint first_if = TRUE; /* flag to check if first in list */
gchar *ifnm;
gboolean hide;
- gchar *new_hide;
/* get "hide" flag text for each row (interface) */
model = gtk_tree_view_get_model(GTK_TREE_VIEW(cur_list));
store = GTK_LIST_STORE(model);
if( gtk_tree_model_get_iter_first(GTK_TREE_MODEL(store), &iter) ) {
/* new preferences "hidden" interfaces string */
- new_hide = (gchar *)g_malloc0(MAX_VAL_LEN);
+ gchar *new_hide = (gchar *)g_malloc0(MAX_VAL_LEN);
+
while (more_items) {
gtk_tree_model_get(GTK_TREE_MODEL(store), &iter,
DEVICE_COLUMN, &ifnm,