diff --git a/demos/gtk-demo/main.c b/demos/gtk-demo/main.c index 935b86eeff..1c04a27040 100644 --- a/demos/gtk-demo/main.c +++ b/demos/gtk-demo/main.c @@ -56,6 +56,9 @@ get_democodedir (void) #endif +#undef DEMOCODEDIR +#define DEMOCODEDIR getenv ("GTK_DEMO_DATA_DIR") + /** * demo_find_file: * @base: base filename diff --git a/gdk/broadway/TODO.broadway b/gdk/broadway/TODO.broadway index 2200bed696..a8af758fe2 100644 --- a/gdk/broadway/TODO.broadway +++ b/gdk/broadway/TODO.broadway @@ -8,3 +8,4 @@ Send reset events on client disconnect (button up, normal state. Maybe grab stat rgba suport shift-select in gedit doesn't work backdrop mode +clean up /dev/shm on abrupt client exit diff --git a/gdk/broadway/gdkbroadway-server.c b/gdk/broadway/gdkbroadway-server.c index b67f2fe8e0..2e3346954b 100644 --- a/gdk/broadway/gdkbroadway-server.c +++ b/gdk/broadway/gdkbroadway-server.c @@ -504,9 +504,9 @@ _gdk_broadway_server_window_translate (GdkBroadwayServer *server, static char make_valid_fs_char (char c) { - if (c == 0 || c == '/') - return c + 1; - return c; + char chars[] = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890"; + + return chars[c % sizeof (chars)]; } /* name must have at least space for 34 bytes */ @@ -520,7 +520,11 @@ create_random_shm (char *name) { o = 0; name[o++] = '/'; - for (i = 0; i < 32/4; i++) + name[o++] = 'b'; + name[o++] = 'd'; + name[o++] = 'w'; + name[o++] = '-'; + for (i = 0; i < 32/4 - 1; i++) { r = g_random_int (); name[o++] = make_valid_fs_char ((r >> 0) & 0xff);