summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Lubomir I. Ivanov <neolit123@gmail.com>2012-12-16 14:03:17 +0200
committerGravatar Dirk Hohndel <dirk@hohndel.org>2012-12-16 07:45:08 -1000
commit92c15238b6043c927a1f8bc8fd541086e1d5f306 (patch)
tree8aa0b207dcb66e9db782c677bcd4f44f7b834f82
parent2f9960f20b292a2fa8c01da4a0c4600c71f4fc3a (diff)
downloadsubsurface-92c15238b6043c927a1f8bc8fd541086e1d5f306.tar.gz
Make sure that the user entered nickname is never truncated
If the sizes of the two char buffers in set_dc_nickname() (nickname) and remember_dc() (buffer) are at least twice the size of the allowed maximum number of characters (sizeof(gunichar) = 2) set by gtk_entry_set_max_length() for the user nickname, no truncation will accur then calling snprintf() and cleanedup_nickname() on said buffers. Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r--gtk-gui.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gtk-gui.c b/gtk-gui.c
index 6b3371838..5a35b3940 100644
--- a/gtk-gui.c
+++ b/gtk-gui.c
@@ -2043,7 +2043,7 @@ static char *cleanedup_nickname(const char *nickname, int len)
void remember_dc(uint32_t deviceid, const char *nickname, gboolean change_conf)
{
if (!get_dc_nickname(deviceid)) {
- char buffer[256];
+ char buffer[160];
struct dcnicknamelist *nn_entry = malloc(sizeof(struct dcnicknamelist));
nn_entry->deviceid = deviceid;
/* make sure there are no curly braces or commas in the string and that
@@ -2062,7 +2062,7 @@ void remember_dc(uint32_t deviceid, const char *nickname, gboolean change_conf)
void set_dc_nickname(struct dive *dive)
{
GtkWidget *dialog, *vbox, *entry, *frame, *label;
- char nickname[68];
+ char nickname[160];
const char *name;
if (!dive)