X-Git-Url: https://git.danieliu.xyz/?a=blobdiff_plain;f=surf.c;h=5c9520f3b88f4ca47750c98485170a94f1adf9ed;hb=10105c8b87a1e3e4c5b98100a6947f1c350561da;hp=bacf78f33a83c591828b5601ef8671c9b4fcf28a;hpb=bd17d359d6a9eb2461a939a33d710b2f0dade4f1;p=surf.git diff --git a/surf.c b/surf.c index bacf78f..5c9520f 100644 --- a/surf.c +++ b/surf.c @@ -211,7 +211,7 @@ die(const char *errstr, ...) va_start(ap, errstr); vfprintf(stderr, errstr, ap); va_end(ap); - exit(EXIT_FAILURE); + exit(1); } void @@ -259,7 +259,8 @@ sigchld(int unused) { if (signal(SIGCHLD, sigchld) == SIG_ERR) die("Can't install SIGCHLD handler"); - while (0 < waitpid(-1, NULL, WNOHANG)); + while (waitpid(-1, NULL, WNOHANG) > 0) + ; } char * @@ -948,6 +949,7 @@ showview(WebKitWebView *v, Client *c) GtkWidget * createwindow(Client *c) { + char *wmstr; GtkWidget *w; if (embed) { @@ -955,19 +957,14 @@ createwindow(Client *c) } else { w = gtk_window_new(GTK_WINDOW_TOPLEVEL); - /* TA: 20091214: Despite what the GNOME docs say, the ICCCM - * is always correct, so we should still call this function. - * But when doing so, we *must* differentiate between a - * WM_CLASS and a resource on the window. By convention, the - * window class (WM_CLASS) is capped, while the resource is in - * lowercase. Both these values come as a pair. - */ - gtk_window_set_wmclass(GTK_WINDOW(w), "surf", "Surf"); + wmstr = g_path_get_basename(argv0); + gtk_window_set_wmclass(GTK_WINDOW(w), wmstr, "Surf"); + g_free(wmstr); - /* TA: 20091214: And set the role here as well -- so that - * sessions can pick this up. - */ - gtk_window_set_role(GTK_WINDOW(w), "Surf"); + wmstr = g_strdup_printf("%s[%lu]", "Surf", + webkit_web_view_get_page_id(c->view)); + gtk_window_set_role(GTK_WINDOW(w), wmstr); + g_free(wmstr); gtk_window_set_default_size(GTK_WINDOW(w), 800, 600); } @@ -1223,7 +1220,7 @@ void pasteuri(GtkClipboard *clipboard, const char *text, gpointer d) { Arg a = {.v = text }; - if (!text) + if (text) loaduri((Client *) d, &a); } @@ -1559,5 +1556,5 @@ main(int argc, char *argv[]) gtk_main(); cleanup(); - return EXIT_SUCCESS; + return 0; }