static void die(const char *errstr, ...);
static void setup(void);
static void sigchld(int unused);
static void die(const char *errstr, ...);
static void setup(void);
static void sigchld(int unused);
static char *buildfile(const char *path);
static char *buildpath(const char *path);
static const char *getuserhomedir(const char *user);
static char *buildfile(const char *path);
static char *buildpath(const char *path);
static const char *getuserhomedir(const char *user);
static GtkWidget *createview(WebKitWebView *v, WebKitNavigationAction *a,
Client *c);
static gboolean buttonreleased(GtkWidget *w, GdkEvent *e, Client *c);
static GtkWidget *createview(WebKitWebView *v, WebKitNavigationAction *a,
Client *c);
static gboolean buttonreleased(GtkWidget *w, GdkEvent *e, Client *c);
g_signal_connect(G_OBJECT(context), "download-started",
G_CALLBACK(downloadstarted), c);
g_signal_connect(G_OBJECT(context), "download-started",
G_CALLBACK(downloadstarted), c);