diff options
author | Steve Fryatt <stevef@netsurf-browser.org> | 2014-01-26 15:15:49 +0000 |
---|---|---|
committer | Steve Fryatt <stevef@netsurf-browser.org> | 2014-01-26 15:15:49 +0000 |
commit | cdc4041942be67ee8b70206e7a1bf6f72514e532 (patch) | |
tree | ea6200b4a400e307804535accabb6f9b667dcf34 /riscos/gui/url_bar.c | |
parent | def97156d3c0cbeacf2996859f16f727d44eb4e8 (diff) | |
download | netsurf-cdc4041942be67ee8b70206e7a1bf6f72514e532.tar.gz netsurf-cdc4041942be67ee8b70206e7a1bf6f72514e532.tar.bz2 |
Add belt and braces to ensure that URL Bar content is always cleanly terminated.
Diffstat (limited to 'riscos/gui/url_bar.c')
-rw-r--r-- | riscos/gui/url_bar.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/riscos/gui/url_bar.c b/riscos/gui/url_bar.c index 829419db3..f77c6e7af 100644 --- a/riscos/gui/url_bar.c +++ b/riscos/gui/url_bar.c @@ -976,11 +976,14 @@ 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); + strncpy(url_bar->text_buffer, "", url_bar->text_size - 1); + url_bar->text_buffer[url_bar->text_size - 1] = '\0'; warn_user("LongURL", NULL); LOG(("Long URL (%d chars): %s", strlen(url), url)); } else { - strncpy(url_bar->text_buffer, local_url, url_bar->text_size); + strncpy(url_bar->text_buffer, local_url, + url_bar->text_size - 1); + url_bar->text_buffer[url_bar->text_size - 1] = '\0'; } if (local_text != NULL) |