aboutsummaryrefslogtreecommitdiffstats
path: root/ui
diff options
context:
space:
mode:
authorGuy Harris <guy@alum.mit.edu>2015-01-13 12:13:45 -0800
committerGuy Harris <guy@alum.mit.edu>2015-01-13 20:20:03 +0000
commitbc23f797296582d5aca5029dd34244de41ff8605 (patch)
treec582e37dbe1f7186d2a8f16e8c6b22ab608b055d /ui
parenta988253fef15e6a0ddd05b0fb06e18ccde00082b (diff)
UAT error string pointers should not be const pointers.
UAT error strings are usually allocated by g_strdup() or g_strdup_printf(), and must ultimately be freed by the caller. Make the pointer-to-error-string-pointer arguments to various functions be "char **", not "const char **". Fix cases that finds where a raw string was being used, as that won't work if you try to free it; g_strdup() it instead. Add a missing free of an error string. Remove some no-longer-necessary casts. Remove some unnecessary g_strdup()s (the string being handed to it was already g_malloc()ated). Change some variable declarations to match. Put in XXX comments for some cases where the error string is just freed, without being shown to the user. Change-Id: I40297746a2ef729c56763baeddbb0842386fa0d0 Reviewed-on: https://code.wireshark.org/review/6525 Reviewed-by: Guy Harris <guy@alum.mit.edu>
Diffstat (limited to 'ui')
-rw-r--r--ui/gtk/uat_gui.c4
-rw-r--r--ui/qt/uat_dialog.cpp10
2 files changed, 8 insertions, 6 deletions
diff --git a/ui/gtk/uat_gui.c b/ui/gtk/uat_gui.c
index 3321420bf1..2783dc5fcf 100644
--- a/ui/gtk/uat_gui.c
+++ b/ui/gtk/uat_gui.c
@@ -362,7 +362,7 @@ static gboolean uat_dlg_cb(GtkWidget *win _U_, gpointer user_data) {
}
if (f[colnum].cb.chk) {
- if (! f[colnum].cb.chk(dd->rec, text, len, f[colnum].cbdata.chk, f[colnum].fld_data, (const char**)&err)) {
+ if (! f[colnum].cb.chk(dd->rec, text, len, f[colnum].cbdata.chk, f[colnum].fld_data, &err)) {
tmp_err = err;
err = g_strdup_printf("error in column '%s': %s", f[colnum].title, tmp_err);
g_free(tmp_err);
@@ -376,7 +376,7 @@ static gboolean uat_dlg_cb(GtkWidget *win _U_, gpointer user_data) {
}
if (dd->uat->update_cb) {
- dd->uat->update_cb(dd->rec, (const char**)&err);
+ dd->uat->update_cb(dd->rec, &err);
if (err) {
tmp_err = err;
diff --git a/ui/qt/uat_dialog.cpp b/ui/qt/uat_dialog.cpp
index 9c0bb1051d..82fd89c8c7 100644
--- a/ui/qt/uat_dialog.cpp
+++ b/ui/qt/uat_dialog.cpp
@@ -372,13 +372,14 @@ void UatDialog::enumPrefCurrentIndexChanged(int index)
void *rec = UAT_INDEX_PTR(uat_, row);
uat_field_t *field = &uat_->fields[cur_column_];
const QByteArray& enum_txt = cur_combo_box_->itemText(index).toUtf8();
- const char *err = NULL;
+ char *err = NULL;
if (field->cb.chk && field->cb.chk(rec, enum_txt.constData(), (unsigned) enum_txt.size(), field->cbdata.chk, field->fld_data, &err)) {
field->cb.set(rec, enum_txt.constData(), (unsigned) enum_txt.size(), field->cbdata.set, field->fld_data);
ok_button_->setEnabled(true);
} else {
- g_free((char*)err);
+ /* XXX - do something useful with the error message string */
+ g_free(err);
ok_button_->setEnabled(false);
}
uat_->changed = TRUE;
@@ -395,7 +396,7 @@ void UatDialog::stringPrefTextChanged(const QString &text)
void *rec = UAT_INDEX_PTR(uat_, row);
uat_field_t *field = &uat_->fields[cur_column_];
const QByteArray& txt = text.toUtf8();
- const char *err = NULL;
+ char *err = NULL;
bool enable_ok = true;
SyntaxLineEdit::SyntaxState ss = SyntaxLineEdit::Empty;
@@ -405,7 +406,8 @@ void UatDialog::stringPrefTextChanged(const QString &text)
saved_string_pref_ = text;
ss = SyntaxLineEdit::Valid;
} else {
- g_free((char*)err);
+ /* XXX - do something useful with the error message string */
+ g_free(err);
enable_ok = false;
ss = SyntaxLineEdit::Invalid;
}