Merge lp:~ted/ubuntu-app-launch/drop-surface-flinger into lp:ubuntu-app-launch/14.04

Proposed by Ted Gould
Status: Merged
Approved by: Charles Kerr
Approved revision: 147
Merged at revision: 145
Proposed branch: lp:~ted/ubuntu-app-launch/drop-surface-flinger
Merge into: lp:ubuntu-app-launch/14.04
Diff against target: 186 lines (+9/-47)
6 files modified
click-exec.c (+0/-7)
desktop-exec.c (+1/-3)
exec-line-exec.c (+0/-7)
tests/exec-util-test.cc (+2/-10)
upstart-jobs/application-click.conf.in (+2/-10)
upstart-jobs/application-legacy.conf.in (+4/-10)
To merge this branch: bzr merge lp:~ted/ubuntu-app-launch/drop-surface-flinger
Reviewer Review Type Date Requested Status
Charles Kerr (community) Approve
PS Jenkins bot (community) continuous-integration Approve
Review via email: mp+213326@code.launchpad.net

Commit message

Drop Surface Flinger support

Description of the change

Free us from the flinger!

To post a comment you must log in.
Revision history for this message
Charles Kerr (charlesk) wrote :

Looks good.

One suggestion, it would be better to use g_get_user_data_dir() than to build it by hand.

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Charles Kerr (charlesk) wrote :

gah! I just asked you to fix code that's being removed. Clearly you should fix it, /then/ remove it.

review: Approve
148. By Ted Gould

Merge trunk

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'click-exec.c'
--- click-exec.c 2014-03-07 14:19:03 +0000
+++ click-exec.c 2014-05-21 15:00:36 +0000
@@ -160,13 +160,6 @@
160160
161 tracepoint(upstart_app_launch, click_read_desktop);161 tracepoint(upstart_app_launch, click_read_desktop);
162162
163 /* TODO: This is for Surface Flinger, when we drop support we can drop this */
164 gchar * userdesktopfile = g_strdup_printf("%s.desktop", app_id);
165 gchar * userdesktoppath = g_build_filename(g_get_home_dir(), ".local", "share", "applications", userdesktopfile, NULL);
166 set_upstart_variable("APP_DESKTOP_FILE", userdesktoppath, FALSE);
167 g_free(userdesktopfile);
168 g_free(userdesktoppath);
169
170 g_debug("Setting 'APP_EXEC' to '%s'", exec);163 g_debug("Setting 'APP_EXEC' to '%s'", exec);
171 /* NOTE: This should be the last upstart variable set as it is sync164 /* NOTE: This should be the last upstart variable set as it is sync
172 so it will wait for a reply from Upstart implying that Upstart165 so it will wait for a reply from Upstart implying that Upstart
173166
=== modified file 'desktop-exec.c'
--- desktop-exec.c 2014-02-07 14:56:27 +0000
+++ desktop-exec.c 2014-05-21 15:00:36 +0000
@@ -71,10 +71,8 @@
7171
72 tracepoint(upstart_app_launch, desktop_found);72 tracepoint(upstart_app_launch, desktop_found);
7373
74 /* TODO: This is for Surface Flinger. When we drop support, we can drop this code */74 /* Desktop file name so that libs can get other info from it */
75 if (desktopfilename != NULL) {75 if (desktopfilename != NULL) {
76 set_upstart_variable("APP_DESKTOP_FILE", desktopfilename, FALSE);
77 /* This is not for SF, it's for platform API only above is for SF */
78 set_upstart_variable("APP_DESKTOP_FILE_PATH", desktopfilename, FALSE);76 set_upstart_variable("APP_DESKTOP_FILE_PATH", desktopfilename, FALSE);
79 g_free(desktopfilename);77 g_free(desktopfilename);
80 }78 }
8179
=== modified file 'exec-line-exec.c'
--- exec-line-exec.c 2014-02-07 14:56:27 +0000
+++ exec-line-exec.c 2014-05-21 15:00:36 +0000
@@ -46,7 +46,6 @@
4646
47 /* URIs */47 /* URIs */
48 const gchar * app_uris = g_getenv("APP_URIS");48 const gchar * app_uris = g_getenv("APP_URIS");
49 const gchar * app_desktop = g_getenv("APP_DESKTOP_FILE");
5049
51 /* Look to see if we have a directory defined that we50 /* Look to see if we have a directory defined that we
52 should be using for everything. If so, change to it51 should be using for everything. If so, change to it
@@ -117,12 +116,6 @@
117116
118 tracepoint(upstart_app_launch, exec_parse_complete);117 tracepoint(upstart_app_launch, exec_parse_complete);
119118
120 /* Surface flinger check */
121 if (g_getenv("USING_SURFACE_FLINGER") != NULL && app_desktop != NULL) {
122 gchar * sf = g_strdup_printf("--desktop_file_hint=%s", app_desktop);
123 g_array_append_val(newargv, sf);
124 }
125
126 /* Now exec */119 /* Now exec */
127 gchar ** nargv = (gchar**)g_array_free(newargv, FALSE);120 gchar ** nargv = (gchar**)g_array_free(newargv, FALSE);
128121
129122
=== modified file 'tests/exec-util-test.cc'
--- tests/exec-util-test.cc 2014-03-12 00:28:05 +0000
+++ tests/exec-util-test.cc 2014-05-21 15:00:36 +0000
@@ -94,7 +94,7 @@
94 guint len = 0;94 guint len = 0;
95 const DbusTestDbusMockCall * calls = dbus_test_dbus_mock_object_get_method_calls(mock, obj, "SetEnv", &len, NULL);95 const DbusTestDbusMockCall * calls = dbus_test_dbus_mock_object_get_method_calls(mock, obj, "SetEnv", &len, NULL);
9696
97 ASSERT_EQ(12, len);97 ASSERT_EQ(11, len);
98 ASSERT_NE(nullptr, calls);98 ASSERT_NE(nullptr, calls);
9999
100 unsigned int i;100 unsigned int i;
@@ -109,7 +109,6 @@
109 bool got_shader_dir = false;109 bool got_shader_dir = false;
110 bool got_app_dir = false;110 bool got_app_dir = false;
111 bool got_app_exec = false;111 bool got_app_exec = false;
112 bool got_app_desktop = false;
113 bool got_app_desktop_path = false;112 bool got_app_desktop_path = false;
114113
115#define APP_DIR CMAKE_SOURCE_DIR "/click-root-dir/.click/users/test-user/com.test.good"114#define APP_DIR CMAKE_SOURCE_DIR "/click-root-dir/.click/users/test-user/com.test.good"
@@ -153,8 +152,6 @@
153 } else if (g_strcmp0(var, "APP_EXEC") == 0) {152 } else if (g_strcmp0(var, "APP_EXEC") == 0) {
154 EXPECT_STREQ("foo", value);153 EXPECT_STREQ("foo", value);
155 got_app_exec = true;154 got_app_exec = true;
156 } else if (g_strcmp0(var, "APP_DESKTOP_FILE") == 0) {
157 got_app_desktop = true;
158 } else if (g_strcmp0(var, "APP_DESKTOP_FILE_PATH") == 0) {155 } else if (g_strcmp0(var, "APP_DESKTOP_FILE_PATH") == 0) {
159 EXPECT_STREQ(APP_DIR "/application.desktop", value);156 EXPECT_STREQ(APP_DIR "/application.desktop", value);
160 got_app_desktop_path = true;157 got_app_desktop_path = true;
@@ -178,7 +175,6 @@
178 EXPECT_TRUE(got_shader_dir);175 EXPECT_TRUE(got_shader_dir);
179 EXPECT_TRUE(got_app_dir);176 EXPECT_TRUE(got_app_dir);
180 EXPECT_TRUE(got_app_exec);177 EXPECT_TRUE(got_app_exec);
181 EXPECT_TRUE(got_app_desktop);
182 EXPECT_TRUE(got_app_desktop_path);178 EXPECT_TRUE(got_app_desktop_path);
183}179}
184180
@@ -193,13 +189,12 @@
193 guint len = 0;189 guint len = 0;
194 const DbusTestDbusMockCall * calls = dbus_test_dbus_mock_object_get_method_calls(mock, obj, "SetEnv", &len, NULL);190 const DbusTestDbusMockCall * calls = dbus_test_dbus_mock_object_get_method_calls(mock, obj, "SetEnv", &len, NULL);
195191
196 ASSERT_EQ(4, len);192 ASSERT_EQ(3, len);
197 ASSERT_NE(nullptr, calls);193 ASSERT_NE(nullptr, calls);
198194
199 unsigned int i;195 unsigned int i;
200196
201 bool got_app_exec = false;197 bool got_app_exec = false;
202 bool got_app_desktop = false;
203 bool got_app_desktop_path = false;198 bool got_app_desktop_path = false;
204 bool got_app_exec_policy = false;199 bool got_app_exec_policy = false;
205200
@@ -219,8 +214,6 @@
219 if (g_strcmp0(var, "APP_EXEC") == 0) {214 if (g_strcmp0(var, "APP_EXEC") == 0) {
220 EXPECT_STREQ("foo", value);215 EXPECT_STREQ("foo", value);
221 got_app_exec = true;216 got_app_exec = true;
222 } else if (g_strcmp0(var, "APP_DESKTOP_FILE") == 0) {
223 got_app_desktop = true;
224 } else if (g_strcmp0(var, "APP_DESKTOP_FILE_PATH") == 0) {217 } else if (g_strcmp0(var, "APP_DESKTOP_FILE_PATH") == 0) {
225 EXPECT_STREQ(CMAKE_SOURCE_DIR "/applications/foo.desktop", value);218 EXPECT_STREQ(CMAKE_SOURCE_DIR "/applications/foo.desktop", value);
226 got_app_desktop_path = true;219 got_app_desktop_path = true;
@@ -236,7 +229,6 @@
236 }229 }
237230
238 EXPECT_TRUE(got_app_exec);231 EXPECT_TRUE(got_app_exec);
239 EXPECT_TRUE(got_app_desktop);
240 EXPECT_TRUE(got_app_desktop_path);232 EXPECT_TRUE(got_app_desktop_path);
241 EXPECT_TRUE(got_app_exec_policy);233 EXPECT_TRUE(got_app_exec_policy);
242}234}
243235
=== modified file 'upstart-jobs/application-click.conf.in'
--- upstart-jobs/application-click.conf.in 2014-04-11 18:33:23 +0000
+++ upstart-jobs/application-click.conf.in 2014-05-21 15:00:36 +0000
@@ -10,22 +10,14 @@
10env APP_EXEC10env APP_EXEC
11env APP_URIS11env APP_URIS
12env APP_DIR12env APP_DIR
13# For Surface Flinger13env APP_DESKTOP_FILE_PATH
14env APP_DESKTOP_FILE
15env APP_PROCESS_GROUP
1614
17env UPSTART_APP_LAUNCH_ARCH="@upstart_app_launch_arch@"15env UPSTART_APP_LAUNCH_ARCH="@upstart_app_launch_arch@"
18export UPSTART_APP_LAUNCH_ARCH16export UPSTART_APP_LAUNCH_ARCH
1917
20apparmor switch ${APP_ID}18apparmor switch ${APP_ID}
2119
22pre-start script20pre-start exec @pkglibexecdir@/click-exec
23 if pgrep -u system surfaceflinger ; then
24 initctl set-env USING_SURFACE_FLINGER=1
25 fi
26
27 exec @pkglibexecdir@/click-exec
28end script
2921
30# Remember, this is confined22# Remember, this is confined
31exec @pkglibexecdir@/exec-line-exec23exec @pkglibexecdir@/exec-line-exec
3224
=== modified file 'upstart-jobs/application-legacy.conf.in'
--- upstart-jobs/application-legacy.conf.in 2014-02-13 22:43:55 +0000
+++ upstart-jobs/application-legacy.conf.in 2014-05-21 15:00:36 +0000
@@ -10,20 +10,14 @@
10env APP_EXEC10env APP_EXEC
11env APP_EXEC_POLICY=""11env APP_EXEC_POLICY=""
12env APP_URIS12env APP_URIS
13# For Surface Flinger13env APP_DESKTOP_FILE_PATH
14env APP_DESKTOP_FILE
1514
16# This will be set to "unconfined" by desktop-exec if there is no confinement defined15# This will be set to "unconfined" by desktop-exec if there is no confinement defined
17apparmor switch $APP_EXEC_POLICY16apparmor switch $APP_EXEC_POLICY
1817
19pre-start script18pre-start exec @pkglibexecdir@/desktop-exec
20 if pgrep -u system surfaceflinger ; then19
21 initctl set-env USING_SURFACE_FLINGER=120# This could be confined
22 fi
23
24 exec @pkglibexecdir@/desktop-exec
25end script
26
27exec @pkglibexecdir@/exec-line-exec21exec @pkglibexecdir@/exec-line-exec
2822
29post-start exec @pkglibexecdir@/zg-report-app open23post-start exec @pkglibexecdir@/zg-report-app open

Subscribers

People subscribed via source and target branches