chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
manager: add newly created units to gc queue
[elogind.git]
/
manager.c
diff --git
a/manager.c
b/manager.c
index 767533484ea09bf4685ef33895368e14ef99d187..688d9fa65b28e831217faee879cf4977a241006f 100644
(file)
--- a/
manager.c
+++ b/
manager.c
@@
-1563,7
+1563,7
@@
int manager_load_unit_prepare(Manager *m, const char *name, const char *path, Un
if ((ret = manager_get_unit(m, name))) {
*_ret = ret;
if ((ret = manager_get_unit(m, name))) {
*_ret = ret;
- return
0
;
+ return
1
;
}
if (!(ret = unit_new(m)))
}
if (!(ret = unit_new(m)))
@@
-1582,6
+1582,7
@@
int manager_load_unit_prepare(Manager *m, const char *name, const char *path, Un
unit_add_to_load_queue(ret);
unit_add_to_dbus_queue(ret);
unit_add_to_load_queue(ret);
unit_add_to_dbus_queue(ret);
+ unit_add_to_gc_queue(ret);
if (_ret)
*_ret = ret;
if (_ret)
*_ret = ret;
@@
-1590,7
+1591,6
@@
int manager_load_unit_prepare(Manager *m, const char *name, const char *path, Un
}
int manager_load_unit(Manager *m, const char *name, const char *path, Unit **_ret) {
}
int manager_load_unit(Manager *m, const char *name, const char *path, Unit **_ret) {
- Unit *ret;
int r;
assert(m);
int r;
assert(m);
@@
-1598,13
+1598,13
@@
int manager_load_unit(Manager *m, const char *name, const char *path, Unit **_re
/* This will load the service information files, but not actually
* start any services or anything. */
/* This will load the service information files, but not actually
* start any services or anything. */
- if ((r = manager_load_unit_prepare(m, name, path,
&ret)) <
0)
+ if ((r = manager_load_unit_prepare(m, name, path,
_ret)) !=
0)
return r;
manager_dispatch_load_queue(m);
if (_ret)
return r;
manager_dispatch_load_queue(m);
if (_ret)
- *_ret = unit_follow_merge(ret);
+ *_ret = unit_follow_merge(
*_
ret);
return 0;
}
return 0;
}
@@
-1949,19
+1949,19
@@
int manager_loop(Manager *m) {
sleep(1);
}
sleep(1);
}
- if (manager_dispatch_
cleanup
_queue(m) > 0)
+ if (manager_dispatch_
load
_queue(m) > 0)
continue;
continue;
- if (manager_dispatch_
gc
_queue(m) > 0)
+ if (manager_dispatch_
run
_queue(m) > 0)
continue;
continue;
- if (
manager_dispatch_load_queue
(m) > 0)
+ if (
bus_dispatch
(m) > 0)
continue;
continue;
- if (manager_dispatch_
run
_queue(m) > 0)
+ if (manager_dispatch_
cleanup
_queue(m) > 0)
continue;
continue;
- if (
bus_dispatch
(m) > 0)
+ if (
manager_dispatch_gc_queue
(m) > 0)
continue;
if (manager_dispatch_dbus_queue(m) > 0)
continue;
if (manager_dispatch_dbus_queue(m) > 0)