Gitweb links:
...log
http://git.netsurf-browser.org/netsurf.git/shortlog/3de0e15b0fe18143fb855...
...commit
http://git.netsurf-browser.org/netsurf.git/commit/3de0e15b0fe18143fb85567...
...tree
http://git.netsurf-browser.org/netsurf.git/tree/3de0e15b0fe18143fb8556793...
The branch, chris/display-idna has been updated
via 3de0e15b0fe18143fb8556793e4739819b10fce3 (commit)
via bd4841e90dcc5530bf4470753d81f6b6e10fc44a (commit)
via 5ea99617371386a99fe9ddc4759b310069ae8440 (commit)
via 80e9a23fc10b0749e3daede512557e7202e438bb (commit)
via daef57aaeec8c8271860983e158609be275bdc29 (commit)
via a470aacdb2e01b52d59ebe9575dda9e46c00d593 (commit)
via abc7a71117e4ae03f9b7146ce3f299a4b931b1ef (commit)
from 5bec5bf72a5087df679a6fc89ea72a84c0ba9a07 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commitdiff
http://git.netsurf-browser.org/netsurf.git/commit/?id=3de0e15b0fe18143fb8...
commit 3de0e15b0fe18143fb8556793e4739819b10fce3
Author: Chris Young <chris(a)unsatisfactorysoftware.co.uk>
Commit: Chris Young <chris(a)unsatisfactorysoftware.co.uk>
Add URL fragment
diff --git a/utils/nsurl.c b/utils/nsurl.c
index 6675ee1..78647b4 100644
--- a/utils/nsurl.c
+++ b/utils/nsurl.c
@@ -1731,7 +1731,7 @@ char *nsurl_access_utf8(const nsurl *url)
return strdup(url->string);
}
- if (nsurl_get(url, NSURL_PORT | NSURL_PATH | NSURL_QUERY,
+ if (nsurl_get(url, NSURL_PORT | NSURL_PATH | NSURL_QUERY | NSURL_FRAGMENT,
&path, &path_len) != NSERROR_OK) {
return strdup(url->string);
}
commitdiff
http://git.netsurf-browser.org/netsurf.git/commit/?id=bd4841e90dcc5530bf4...
commit bd4841e90dcc5530bf4470753d81f6b6e10fc44a
Merge: 5bec5bf 5ea9961
Author: Chris Young <chris(a)unsatisfactorysoftware.co.uk>
Commit: Chris Young <chris(a)unsatisfactorysoftware.co.uk>
Merge branch 'master' of
git://git.netsurf-browser.org/netsurf into
chris/display-idna
-----------------------------------------------------------------------
Summary of changes:
riscos/gui/url_bar.c | 31 +++++++++++++++++++++++++++----
riscos/url_complete.c | 9 +++++----
utils/nsurl.c | 2 +-
3 files changed, 33 insertions(+), 9 deletions(-)
diff --git a/riscos/gui/url_bar.c b/riscos/gui/url_bar.c
index 5eccd60..6003fe3 100644
--- a/riscos/gui/url_bar.c
+++ b/riscos/gui/url_bar.c
@@ -83,6 +83,7 @@ struct url_bar {
wimp_i text_icon;
char *text_buffer;
size_t text_size;
+ char *text_buffer_utf8;
wimp_i suggest_icon;
int suggest_x, suggest_y;
@@ -177,7 +178,12 @@ struct url_bar *ro_gui_url_bar_create(struct theme_descriptor
*theme)
url_bar->text_size = RO_GUI_MAX_URL_SIZE;
url_bar->text_buffer = malloc(url_bar->text_size);
- strncpy(url_bar->text_buffer, "", url_bar->text_size);
+ if (url_bar->text_buffer == NULL) {
+ free(url_bar);
+ return NULL;
+ }
+ url_bar->text_buffer[0] = 0;
+ url_bar->text_buffer_utf8 = NULL;
url_bar->hidden = false;
@@ -508,6 +514,12 @@ void ro_gui_url_bar_destroy(struct url_bar *url_bar)
if (url_bar == NULL)
return;
+ 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);
}
@@ -973,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 {
@@ -1070,9 +1081,21 @@ static void ro_gui_url_bar_set_hotlist(struct url_bar *url_bar,
bool set)
const char *ro_gui_url_bar_get_url(struct url_bar *url_bar)
{
- if (url_bar == NULL)
+ if ((url_bar == NULL) || (url_bar->text_buffer == NULL))
return NULL;
+ if (url_bar->text_buffer_utf8 != NULL) {
+ free(url_bar->text_buffer_utf8);
+ url_bar->text_buffer_utf8 = NULL;
+ }
+
+ if (url_bar->text_buffer[0] == '\0')
+ return (const char *) url_bar->text_buffer;
+
+ if (utf8_from_local_encoding(url_bar->text_buffer, 0,
&url_bar->text_buffer_utf8) == NSERROR_OK) {
+ return (const char *) url_bar->text_buffer_utf8;
+ }
+
return (const char *) url_bar->text_buffer;
}
diff --git a/riscos/url_complete.c b/riscos/url_complete.c
index 3d189a0..ff91b1c 100644
--- a/riscos/url_complete.c
+++ b/riscos/url_complete.c
@@ -85,10 +85,11 @@ void ro_gui_url_complete_start(struct toolbar *toolbar)
ro_gui_url_complete_close();
url = ro_toolbar_get_url(toolbar);
-
- url_complete_matched_string = strdup(url);
- if (url_complete_matched_string)
- url_complete_parent = parent;
+ if (url != NULL) {
+ url_complete_matched_string = strdup(url);
+ if (url_complete_matched_string)
+ url_complete_parent = parent;
+ }
}
diff --git a/utils/nsurl.c b/utils/nsurl.c
index 6675ee1..78647b4 100644
--- a/utils/nsurl.c
+++ b/utils/nsurl.c
@@ -1731,7 +1731,7 @@ char *nsurl_access_utf8(const nsurl *url)
return strdup(url->string);
}
- if (nsurl_get(url, NSURL_PORT | NSURL_PATH | NSURL_QUERY,
+ if (nsurl_get(url, NSURL_PORT | NSURL_PATH | NSURL_QUERY | NSURL_FRAGMENT,
&path, &path_len) != NSERROR_OK) {
return strdup(url->string);
}
--
NetSurf Browser