commit 94601622a1494f9f7ffb514f662cd118c5c86dc1
parent b18189d016e99e1e352cbe586c85c49ce2ca2f5d
Author: Enno Boland (tox) <[email protected]>
Date: Fri, 29 Jan 2010 09:44:14 +0100
_SURF_URI gets initialised as soon as the window opens.
Diffstat:
M | surf.c | | | 20 | +++++++++++++++----- |
1 file changed, 15 insertions(+), 5 deletions(-)
diff --git a/surf.c b/surf.c
@@ -435,14 +435,23 @@ void
loaduri(Client *c, const Arg *arg) {
char *u;
const char *uri = (char *)arg->v;
+ Arg a = { .b = FALSE };
+ if(strcmp(uri, "") == 0)
+ return;
u = g_strrstr(uri, "://") ? g_strdup(uri)
: g_strdup_printf("http://%s", uri);
- webkit_web_view_load_uri(c->view, u);
- c->progress = 0;
- c->title = copystr(&c->title, u);
- g_free(u);
- update(c);
+ /* prevents endless loop */
+ if(c->uri && strcmp(u, c->uri) == 0) {
+ reload(c, &a);
+ }
+ else {
+ webkit_web_view_load_uri(c->view, u);
+ c->progress = 0;
+ c->title = copystr(&c->title, u);
+ g_free(u);
+ update(c);
+ }
}
void
@@ -551,6 +560,7 @@ newclient(void) {
g_object_set(G_OBJECT(settings), "user-stylesheet-uri", uri, NULL);
g_free(uri);
setatom(c, findprop, "");
+ setatom(c, uriprop, "");
c->download = NULL;
c->title = NULL;