Merge lp:~xnox/upstart/lp1433013 into lp:upstart
- lp1433013
- Merge into trunk
Proposed by
Dimitri John Ledkov
Status: | Merged |
---|---|
Merged at revision: | 1667 |
Proposed branch: | lp:~xnox/upstart/lp1433013 |
Merge into: | lp:upstart |
Diff against target: |
255 lines (+83/-2) 4 files modified
dbus/Makefile.am (+1/-0) dbus/org.freedesktop.DBus.xml (+9/-0) init/Makefile.am (+33/-0) init/control.c (+40/-2) |
To merge this branch: | bzr merge lp:~xnox/upstart/lp1433013 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Marco Trevisan (Treviño) (community) | Approve | ||
Upstart Reviewers | Pending | ||
Review via email: mp+259317@code.launchpad.net |
Commit message
Description of the change
This resolves the nasty https:/
To test in Unity, check that environment variables are sane in the terminal started from the left launcher, application lense, and Alt-F2.
In principle, variables that are set with initctl set-env --global should propagate to the DBus activation environment and hence to processes that are dbus activated there after - i.e. all the unity shell components.
To post a comment you must log in.
Revision history for this message
Marco Trevisan (Treviño) (3v1n0) wrote : | # |
Revision history for this message
Marco Trevisan (Treviño) (3v1n0) wrote : | # |
It looks to fix at least one issue with GTK_MODULES not being properly set for dbus activation runner when loading unity-gtk-
review:
Approve
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'dbus/Makefile.am' | |||
2 | --- dbus/Makefile.am 2009-07-02 17:31:25 +0000 | |||
3 | +++ dbus/Makefile.am 2015-05-16 19:16:03 +0000 | |||
4 | @@ -7,6 +7,7 @@ | |||
5 | 7 | 7 | ||
6 | 8 | EXTRA_DIST = \ | 8 | EXTRA_DIST = \ |
7 | 9 | upstart.h \ | 9 | upstart.h \ |
8 | 10 | org.freedesktop.DBus.xml \ | ||
9 | 10 | com.ubuntu.Upstart.xml \ | 11 | com.ubuntu.Upstart.xml \ |
10 | 11 | com.ubuntu.Upstart.Job.xml \ | 12 | com.ubuntu.Upstart.Job.xml \ |
11 | 12 | com.ubuntu.Upstart.Instance.xml | 13 | com.ubuntu.Upstart.Instance.xml |
12 | 13 | 14 | ||
13 | === added file 'dbus/org.freedesktop.DBus.xml' | |||
14 | --- dbus/org.freedesktop.DBus.xml 1970-01-01 00:00:00 +0000 | |||
15 | +++ dbus/org.freedesktop.DBus.xml 2015-05-16 19:16:03 +0000 | |||
16 | @@ -0,0 +1,9 @@ | |||
17 | 1 | <!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" | ||
18 | 2 | "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd"> | ||
19 | 3 | <node> | ||
20 | 4 | <interface name="org.freedesktop.DBus"> | ||
21 | 5 | <method name="UpdateActivationEnvironment"> | ||
22 | 6 | <arg name="vars" direction="in" type="a{ss}"/> | ||
23 | 7 | </method> | ||
24 | 8 | </interface> | ||
25 | 9 | </node> | ||
26 | 0 | 10 | ||
27 | === modified file 'init/Makefile.am' | |||
28 | --- init/Makefile.am 2014-07-11 19:18:09 +0000 | |||
29 | +++ init/Makefile.am 2015-05-16 19:16:03 +0000 | |||
30 | @@ -64,6 +64,7 @@ | |||
31 | 64 | errors.h \ | 64 | errors.h \ |
32 | 65 | apparmor.c apparmor.h | 65 | apparmor.c apparmor.h |
33 | 66 | nodist_init_SOURCES = \ | 66 | nodist_init_SOURCES = \ |
34 | 67 | $(org_freedesktop_DBus_OUTPUTS) \ | ||
35 | 67 | $(com_ubuntu_Upstart_OUTPUTS) \ | 68 | $(com_ubuntu_Upstart_OUTPUTS) \ |
36 | 68 | $(com_ubuntu_Upstart_Job_OUTPUTS) \ | 69 | $(com_ubuntu_Upstart_Job_OUTPUTS) \ |
37 | 69 | $(com_ubuntu_Upstart_Instance_OUTPUTS) | 70 | $(com_ubuntu_Upstart_Instance_OUTPUTS) |
38 | @@ -125,14 +126,30 @@ | |||
39 | 125 | --default-interface=com.ubuntu.Upstart0_6.Instance \ | 126 | --default-interface=com.ubuntu.Upstart0_6.Instance \ |
40 | 126 | --output=$@ $< | 127 | --output=$@ $< |
41 | 127 | 128 | ||
42 | 129 | org_freedesktop_DBus_OUTPUTS = \ | ||
43 | 130 | org.freedesktop.DBus.c \ | ||
44 | 131 | org.freedesktop.DBus.h | ||
45 | 132 | |||
46 | 133 | org_freedesktop_DBus_XML = \ | ||
47 | 134 | ../dbus/org.freedesktop.DBus.xml | ||
48 | 135 | |||
49 | 136 | $(org_freedesktop_DBus_OUTPUTS): $(org_freedesktop_DBus_XML) | ||
50 | 137 | $(AM_V_GEN)$(NIH_DBUS_TOOL) \ | ||
51 | 138 | --package=$(PACKAGE) \ | ||
52 | 139 | --mode=proxy --prefix=control_dbus \ | ||
53 | 140 | --default-interface=org.freedesktop.DBus \ | ||
54 | 141 | --output=$@ $< | ||
55 | 142 | |||
56 | 128 | # These have to be built sources because we can't compile object files | 143 | # These have to be built sources because we can't compile object files |
57 | 129 | # without the header file existing first | 144 | # without the header file existing first |
58 | 130 | BUILT_SOURCES = \ | 145 | BUILT_SOURCES = \ |
59 | 146 | $(org_freedesktop_DBus_OUTPUTS) \ | ||
60 | 131 | $(com_ubuntu_Upstart_OUTPUTS) \ | 147 | $(com_ubuntu_Upstart_OUTPUTS) \ |
61 | 132 | $(com_ubuntu_Upstart_Job_OUTPUTS) \ | 148 | $(com_ubuntu_Upstart_Job_OUTPUTS) \ |
62 | 133 | $(com_ubuntu_Upstart_Instance_OUTPUTS) | 149 | $(com_ubuntu_Upstart_Instance_OUTPUTS) |
63 | 134 | 150 | ||
64 | 135 | CLEANFILES = \ | 151 | CLEANFILES = \ |
65 | 152 | $(org_freedesktop_DBus_OUTPUTS) \ | ||
66 | 136 | $(com_ubuntu_Upstart_OUTPUTS) \ | 153 | $(com_ubuntu_Upstart_OUTPUTS) \ |
67 | 137 | $(com_ubuntu_Upstart_Job_OUTPUTS) \ | 154 | $(com_ubuntu_Upstart_Job_OUTPUTS) \ |
68 | 138 | $(com_ubuntu_Upstart_Instance_OUTPUTS) | 155 | $(com_ubuntu_Upstart_Instance_OUTPUTS) |
69 | @@ -231,6 +248,7 @@ | |||
70 | 231 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 248 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
71 | 232 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 249 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
72 | 233 | session.o log.o state.o xdg.o apparmor.o \ | 250 | session.o log.o state.o xdg.o apparmor.o \ |
73 | 251 | org.freedesktop.DBus.o \ | ||
74 | 234 | com.ubuntu.Upstart.o \ | 252 | com.ubuntu.Upstart.o \ |
75 | 235 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 253 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
76 | 236 | $(top_builddir)/test/libtest_util_common.a \ | 254 | $(top_builddir)/test/libtest_util_common.a \ |
77 | @@ -249,6 +267,7 @@ | |||
78 | 249 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 267 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
79 | 250 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 268 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
80 | 251 | session.o log.o state.o xdg.o apparmor.o \ | 269 | session.o log.o state.o xdg.o apparmor.o \ |
81 | 270 | org.freedesktop.DBus.o \ | ||
82 | 252 | com.ubuntu.Upstart.o \ | 271 | com.ubuntu.Upstart.o \ |
83 | 253 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 272 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
84 | 254 | $(NIH_LIBS) \ | 273 | $(NIH_LIBS) \ |
85 | @@ -266,6 +285,7 @@ | |||
86 | 266 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 285 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
87 | 267 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 286 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
88 | 268 | session.o log.o state.o xdg.o apparmor.o \ | 287 | session.o log.o state.o xdg.o apparmor.o \ |
89 | 288 | org.freedesktop.DBus.o \ | ||
90 | 269 | com.ubuntu.Upstart.o \ | 289 | com.ubuntu.Upstart.o \ |
91 | 270 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 290 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
92 | 271 | $(top_builddir)/test/libtest_util_common.a \ | 291 | $(top_builddir)/test/libtest_util_common.a \ |
93 | @@ -284,6 +304,7 @@ | |||
94 | 284 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 304 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
95 | 285 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 305 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
96 | 286 | session.o log.o state.o xdg.o apparmor.o \ | 306 | session.o log.o state.o xdg.o apparmor.o \ |
97 | 307 | org.freedesktop.DBus.o \ | ||
98 | 287 | com.ubuntu.Upstart.o \ | 308 | com.ubuntu.Upstart.o \ |
99 | 288 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 309 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
100 | 289 | $(top_builddir)/test/libtest_util_common.a \ | 310 | $(top_builddir)/test/libtest_util_common.a \ |
101 | @@ -302,6 +323,7 @@ | |||
102 | 302 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 323 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
103 | 303 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 324 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
104 | 304 | session.o log.o state.o xdg.o apparmor.o \ | 325 | session.o log.o state.o xdg.o apparmor.o \ |
105 | 326 | org.freedesktop.DBus.o \ | ||
106 | 305 | com.ubuntu.Upstart.o \ | 327 | com.ubuntu.Upstart.o \ |
107 | 306 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 328 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
108 | 307 | $(top_builddir)/test/libtest_util_common.a \ | 329 | $(top_builddir)/test/libtest_util_common.a \ |
109 | @@ -320,6 +342,7 @@ | |||
110 | 320 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 342 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
111 | 321 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 343 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
112 | 322 | session.o log.o state.o xdg.o apparmor.o \ | 344 | session.o log.o state.o xdg.o apparmor.o \ |
113 | 345 | org.freedesktop.DBus.o \ | ||
114 | 323 | com.ubuntu.Upstart.o \ | 346 | com.ubuntu.Upstart.o \ |
115 | 324 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 347 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
116 | 325 | $(top_builddir)/test/libtest_util_common.a \ | 348 | $(top_builddir)/test/libtest_util_common.a \ |
117 | @@ -338,6 +361,7 @@ | |||
118 | 338 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 361 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
119 | 339 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 362 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
120 | 340 | session.o log.o state.o xdg.o apparmor.o \ | 363 | session.o log.o state.o xdg.o apparmor.o \ |
121 | 364 | org.freedesktop.DBus.o \ | ||
122 | 341 | com.ubuntu.Upstart.o \ | 365 | com.ubuntu.Upstart.o \ |
123 | 342 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 366 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
124 | 343 | $(NIH_LIBS) \ | 367 | $(NIH_LIBS) \ |
125 | @@ -355,6 +379,7 @@ | |||
126 | 355 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 379 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
127 | 356 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 380 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
128 | 357 | session.o log.o state.o xdg.o apparmor.o \ | 381 | session.o log.o state.o xdg.o apparmor.o \ |
129 | 382 | org.freedesktop.DBus.o \ | ||
130 | 358 | com.ubuntu.Upstart.o \ | 383 | com.ubuntu.Upstart.o \ |
131 | 359 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 384 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
132 | 360 | $(top_builddir)/test/libtest_util_common.a \ | 385 | $(top_builddir)/test/libtest_util_common.a \ |
133 | @@ -373,6 +398,7 @@ | |||
134 | 373 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 398 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
135 | 374 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 399 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
136 | 375 | session.o log.o state.o xdg.o apparmor.o \ | 400 | session.o log.o state.o xdg.o apparmor.o \ |
137 | 401 | org.freedesktop.DBus.o \ | ||
138 | 376 | com.ubuntu.Upstart.o \ | 402 | com.ubuntu.Upstart.o \ |
139 | 377 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 403 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
140 | 378 | $(NIH_LIBS) \ | 404 | $(NIH_LIBS) \ |
141 | @@ -390,6 +416,7 @@ | |||
142 | 390 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 416 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
143 | 391 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 417 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
144 | 392 | session.o log.o state.o xdg.o apparmor.o \ | 418 | session.o log.o state.o xdg.o apparmor.o \ |
145 | 419 | org.freedesktop.DBus.o \ | ||
146 | 393 | com.ubuntu.Upstart.o \ | 420 | com.ubuntu.Upstart.o \ |
147 | 394 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 421 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
148 | 395 | $(top_builddir)/test/libtest_util_common.a \ | 422 | $(top_builddir)/test/libtest_util_common.a \ |
149 | @@ -408,6 +435,7 @@ | |||
150 | 408 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 435 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
151 | 409 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 436 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
152 | 410 | session.o log.o state.o xdg.o apparmor.o \ | 437 | session.o log.o state.o xdg.o apparmor.o \ |
153 | 438 | org.freedesktop.DBus.o \ | ||
154 | 411 | com.ubuntu.Upstart.o \ | 439 | com.ubuntu.Upstart.o \ |
155 | 412 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 440 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
156 | 413 | $(NIH_LIBS) \ | 441 | $(NIH_LIBS) \ |
157 | @@ -430,6 +458,7 @@ | |||
158 | 430 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 458 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
159 | 431 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 459 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
160 | 432 | session.o log.o state.o xdg.o apparmor.o \ | 460 | session.o log.o state.o xdg.o apparmor.o \ |
161 | 461 | org.freedesktop.DBus.o \ | ||
162 | 433 | com.ubuntu.Upstart.o \ | 462 | com.ubuntu.Upstart.o \ |
163 | 434 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 463 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
164 | 435 | $(top_builddir)/test/libtest_util_common.a \ | 464 | $(top_builddir)/test/libtest_util_common.a \ |
165 | @@ -448,6 +477,7 @@ | |||
166 | 448 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 477 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
167 | 449 | parse_job.o parse_conf.o control.o quiesce.o \ | 478 | parse_job.o parse_conf.o control.o quiesce.o \ |
168 | 450 | session.o log.o state.o xdg.o apparmor.o \ | 479 | session.o log.o state.o xdg.o apparmor.o \ |
169 | 480 | org.freedesktop.DBus.o \ | ||
170 | 451 | com.ubuntu.Upstart.o \ | 481 | com.ubuntu.Upstart.o \ |
171 | 452 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 482 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
172 | 453 | $(NIH_LIBS) \ | 483 | $(NIH_LIBS) \ |
173 | @@ -479,6 +509,7 @@ | |||
174 | 479 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 509 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
175 | 480 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 510 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
176 | 481 | session.o log.o state.o xdg.o apparmor.o cgroup.o \ | 511 | session.o log.o state.o xdg.o apparmor.o cgroup.o \ |
177 | 512 | org.freedesktop.DBus.o \ | ||
178 | 482 | com.ubuntu.Upstart.o \ | 513 | com.ubuntu.Upstart.o \ |
179 | 483 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 514 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
180 | 484 | $(top_builddir)/test/libtest_util_common.a \ | 515 | $(top_builddir)/test/libtest_util_common.a \ |
181 | @@ -495,6 +526,7 @@ | |||
182 | 495 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 526 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
183 | 496 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 527 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
184 | 497 | session.o log.o state.o xdg.o apparmor.o \ | 528 | session.o log.o state.o xdg.o apparmor.o \ |
185 | 529 | org.freedesktop.DBus.o \ | ||
186 | 498 | com.ubuntu.Upstart.o \ | 530 | com.ubuntu.Upstart.o \ |
187 | 499 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 531 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
188 | 500 | $(NIH_LIBS) \ | 532 | $(NIH_LIBS) \ |
189 | @@ -512,6 +544,7 @@ | |||
190 | 512 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ | 544 | job_class.o job_process.o job.o event.o event_operator.o blocked.o \ |
191 | 513 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ | 545 | parse_job.o parse_conf.o conf.o control.o quiesce.o \ |
192 | 514 | session.o log.o state.o xdg.o apparmor.o \ | 546 | session.o log.o state.o xdg.o apparmor.o \ |
193 | 547 | org.freedesktop.DBus.o \ | ||
194 | 515 | com.ubuntu.Upstart.o \ | 548 | com.ubuntu.Upstart.o \ |
195 | 516 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ | 549 | com.ubuntu.Upstart.Job.o com.ubuntu.Upstart.Instance.o \ |
196 | 517 | $(top_builddir)/test/libtest_util_common.a \ | 550 | $(top_builddir)/test/libtest_util_common.a \ |
197 | 518 | 551 | ||
198 | === modified file 'init/control.c' | |||
199 | --- init/control.c 2014-08-14 11:19:43 +0000 | |||
200 | +++ init/control.c 2015-05-16 19:16:03 +0000 | |||
201 | @@ -62,6 +62,7 @@ | |||
202 | 62 | #include "xdg.h" | 62 | #include "xdg.h" |
203 | 63 | 63 | ||
204 | 64 | #include "com.ubuntu.Upstart.h" | 64 | #include "com.ubuntu.Upstart.h" |
205 | 65 | #include "org.freedesktop.DBus.h" | ||
206 | 65 | 66 | ||
207 | 66 | #ifdef ENABLE_CGROUPS | 67 | #ifdef ENABLE_CGROUPS |
208 | 67 | #include "cgroup.h" | 68 | #include "cgroup.h" |
209 | @@ -1421,8 +1422,45 @@ | |||
210 | 1421 | nih_assert (job->env); | 1422 | nih_assert (job->env); |
211 | 1422 | 1423 | ||
212 | 1423 | NIH_MUST (environ_add (&job->env, job, NULL, replace, envvar)); | 1424 | NIH_MUST (environ_add (&job->env, job, NULL, replace, envvar)); |
215 | 1424 | } else if (job_class_environment_set (envvar, replace) < 0) { | 1425 | } else { |
216 | 1425 | nih_return_no_memory_error (-1); | 1426 | if (job_class_environment_set (envvar, replace) < 0) { |
217 | 1427 | nih_return_no_memory_error (-1); | ||
218 | 1428 | } | ||
219 | 1429 | if (job_name == NULL && user_mode && control_bus ) { | ||
220 | 1430 | ControlDbusUpdateActivationEnvironmentVarsElement **dbus_vars = NULL; | ||
221 | 1431 | NihDBusProxy *dbus_proxy = NULL; | ||
222 | 1432 | char ** split_vars = NULL; | ||
223 | 1433 | dbus_vars = NIH_MUST (nih_alloc (NULL, sizeof (ControlDbusUpdateActivationEnvironmentVarsElement *) * 2)); | ||
224 | 1434 | dbus_vars[0] = NIH_MUST (nih_new (dbus_vars, ControlDbusUpdateActivationEnvironmentVarsElement)); | ||
225 | 1435 | dbus_vars[1] = NULL; | ||
226 | 1436 | split_vars = NIH_MUST (nih_str_split (dbus_vars[0], envvar, "=", FALSE)); | ||
227 | 1437 | if (*split_vars && *split_vars[0]) { | ||
228 | 1438 | dbus_vars[0]->item0 = *split_vars; | ||
229 | 1439 | } else { | ||
230 | 1440 | dbus_vars[0]->item0 = nih_strdup (dbus_vars[0], ""); | ||
231 | 1441 | } | ||
232 | 1442 | if (*(split_vars+1) && *(split_vars+1)[0]) { | ||
233 | 1443 | dbus_vars[0]->item1 = *(split_vars+1); | ||
234 | 1444 | } else { | ||
235 | 1445 | dbus_vars[0]->item1 = nih_strdup (dbus_vars[0], ""); | ||
236 | 1446 | } | ||
237 | 1447 | |||
238 | 1448 | dbus_proxy = NIH_SHOULD (nih_dbus_proxy_new (dbus_vars, control_bus, "org.freedesktop.DBus", "/", NULL, NULL)); | ||
239 | 1449 | if (! dbus_proxy) { | ||
240 | 1450 | nih_warn (_("Failed to get dbus_proxy")); | ||
241 | 1451 | } else { | ||
242 | 1452 | if (control_dbus_update_activation_environment_sync (dbus_vars, dbus_proxy, dbus_vars) != 0) { | ||
243 | 1453 | NihDBusError *dbus_err; | ||
244 | 1454 | dbus_err = (NihDBusError *)nih_error_get (); | ||
245 | 1455 | nih_error ("%s", dbus_err->message); | ||
246 | 1456 | nih_free (dbus_err); | ||
247 | 1457 | nih_warn ("dbus_vars[0] item0: %s", dbus_vars[0]->item0); | ||
248 | 1458 | nih_warn ("dbus_vars[0] item1: %s", dbus_vars[0]->item1); | ||
249 | 1459 | nih_warn (_("Failed to update DBus activation environment")); | ||
250 | 1460 | } | ||
251 | 1461 | } | ||
252 | 1462 | nih_free(dbus_vars); | ||
253 | 1463 | } | ||
254 | 1426 | } | 1464 | } |
255 | 1427 | } | 1465 | } |
256 | 1428 | 1466 |
Hey, any news on this?