From 5ea99617371386a99fe9ddc4759b310069ae8440 Mon Sep 17 00:00:00 2001 From: John-Mark Bell Date: Sun, 19 Jul 2015 11:49:57 +0100 Subject: RISCOS: further fix URL bar memory manipulation --- riscos/gui/url_bar.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'riscos/gui') diff --git a/riscos/gui/url_bar.c b/riscos/gui/url_bar.c index 9dbb3a5d1..6003fe309 100644 --- a/riscos/gui/url_bar.c +++ b/riscos/gui/url_bar.c @@ -183,6 +183,7 @@ struct url_bar *ro_gui_url_bar_create(struct theme_descriptor *theme) return NULL; } url_bar->text_buffer[0] = 0; + url_bar->text_buffer_utf8 = NULL; url_bar->hidden = false; @@ -516,6 +517,9 @@ void ro_gui_url_bar_destroy(struct url_bar *url_bar) if (url_bar->text_buffer_utf8 != NULL) free(url_bar->text_buffer_utf8); + if (url_bar->text_buffer != NULL) + free(url_bar->text_buffer); + free(url_bar); } @@ -981,8 +985,7 @@ void ro_gui_url_bar_set_url(struct url_bar *url_bar, const char *url, */ if (strlen(local_url) >= url_bar->text_size) { - strncpy(url_bar->text_buffer, "", url_bar->text_size - 1); - url_bar->text_buffer[url_bar->text_size - 1] = '\0'; + url_bar->text_buffer[0] = '\0'; warn_user("LongURL", NULL); LOG("Long URL (%d chars): %s", strlen(url), url); } else { -- cgit v1.2.3