Support relative paths for surf. - surf - Surf web browser.
       
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit a69c41ccac3141784140852c9d3935049d188d0f
 (DIR) parent d02f73d9902b953e6d815856844c79e3755c26fd
 (HTM) Author: Christoph Lohmann <20h@r-36.net>
       Date:   Thu, 14 Mar 2013 19:14:44 +0100
       
       Support relative paths for surf.
       
       Thanks Kurt Van Dijck <kurt.van.dijck@eia.be>!
       
       Diffstat:
         surf.c                              |       8 +++++---
       
       1 file changed, 5 insertions(+), 3 deletions(-)
       ---
 (DIR) diff --git a/surf.c b/surf.c
       @@ -577,12 +577,13 @@ loaduri(Client *c, const Arg *arg) {
                char *u, *rp;
                const char *uri = (char *)arg->v;
                Arg a = { .b = FALSE };
       +        struct stat st;
        
                if(strcmp(uri, "") == 0)
                        return;
        
                /* In case it's a file path. */
       -        if(uri[0] == '/') {
       +        if(stat(uri, &st) == 0) {
                        rp = realpath(uri, NULL);
                        u = g_strdup_printf("file://%s", rp);
                        free(rp);
       @@ -889,11 +890,12 @@ processx(GdkXEvent *e, GdkEvent *event, gpointer d) {
                                if(ev->atom == atoms[AtomFind]) {
                                        arg.b = TRUE;
                                        find(c, &arg);
       +
                                        return GDK_FILTER_REMOVE;
       -                        }
       -                        else if(ev->atom == atoms[AtomGo]) {
       +                        } else if(ev->atom == atoms[AtomGo]) {
                                        arg.v = getatom(c, AtomGo);
                                        loaduri(c, &arg);
       +
                                        return GDK_FILTER_REMOVE;
                                }
                        }