commit 6518eda

Michael Forney  ·  2014-01-20 23:24:34 +0000 UTC
parent 9bdc791
Initialize bindings before compositer

The compositor adds some key bindings of its own, so bindings must be
initialized beforehand.
1 files changed,  +16, -16
+16, -16
 1@@ -1,6 +1,6 @@
 2 /* swc: libswc/swc.c
 3  *
 4- * Copyright (c) 2013 Michael Forney
 5+ * Copyright (c) 2013, 2014 Michael Forney
 6  *
 7  * Permission is hereby granted, free of charge, to any person obtaining a copy
 8  * of this software and associated documentation files (the "Software"), to deal
 9@@ -119,33 +119,33 @@ bool swc_initialize(struct wl_display * display,
10         goto error3;
11     }
12 
13+    if (!swc_bindings_initialize())
14+    {
15+        ERROR("Could not initialize bindings\n");
16+        goto error4;
17+    }
18+
19     if (!swc_screens_initialize())
20     {
21         ERROR("Could not initialize screens\n");
22-        goto error4;
23+        goto error5;
24     }
25 
26     if (!swc_compositor_initialize(&compositor, display, swc.event_loop))
27     {
28         ERROR("Could not initialize compositor\n");
29-        goto error5;
30+        goto error6;
31     }
32 
33     if (!swc_data_device_manager_initialize())
34     {
35         ERROR("Could not initialize data device manager\n");
36-        goto error6;
37+        goto error7;
38     }
39 
40     if (!swc_seat_initialize(default_seat))
41     {
42         ERROR("Could not initialize seat\n");
43-        goto error7;
44-    }
45-
46-    if (!swc_bindings_initialize())
47-    {
48-        ERROR("Could not initialize bindings\n");
49         goto error8;
50     }
51 
52@@ -170,15 +170,15 @@ bool swc_initialize(struct wl_display * display,
53   error10:
54     swc_shell_finalize();
55   error9:
56-    swc_bindings_finalize();
57-  error8:
58     swc_seat_finalize();
59-  error7:
60+  error8:
61     swc_data_device_manager_finalize();
62-  error6:
63+  error7:
64     swc_compositor_finish(&compositor);
65-  error5:
66+  error6:
67     swc_screens_finalize();
68+  error5:
69+    swc_bindings_finalize();
70   error4:
71     swc_shm_finalize();
72   error3:
73@@ -198,11 +198,11 @@ void swc_finalize()
74     swc_xserver_finalize();
75 #endif
76     swc_shell_finalize();
77-    swc_bindings_finalize();
78     swc_seat_finalize();
79     swc_data_device_manager_finalize();
80     swc_compositor_finish(&compositor);
81     swc_screens_finalize();
82+    swc_bindings_finalize();
83     swc_shm_finalize();
84     swc_drm_finalize();
85     udev_unref(swc.udev);