surf

Surf web browser.
git clone git://r-36.net/surf
Log | Files | Refs | README | LICENSE

commit 94601622a1494f9f7ffb514f662cd118c5c86dc1
parent b18189d016e99e1e352cbe586c85c49ce2ca2f5d
Author: Enno Boland (tox) <tox@s01.de>
Date:   Fri, 29 Jan 2010 09:44:14 +0100

_SURF_URI gets initialised as soon as the window opens.
Diffstat:
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;