Now all unit types define .load. But even if it wasn't defined, we'd need
to call unit_load_fragment_and_dropin() anyway, so this code would not have
worked correctly.
Also, unit_load_fragment_and_dropin() either returns -ENOENT or changes
UNIT_STUB to UNIT_LOADED, so we don't need to repeat this here.
u->fragment_mtime = now(CLOCK_REALTIME);
}
- if (UNIT_VTABLE(u)->load) {
- r = UNIT_VTABLE(u)->load(u);
- if (r < 0)
- goto fail;
- }
-
- if (u->load_state == UNIT_STUB) {
- r = -ENOENT;
+ r = UNIT_VTABLE(u)->load(u);
+ if (r < 0)
goto fail;
- }
+
+ assert(u->load_state != UNIT_STUB);
if (u->load_state == UNIT_LOADED) {
unit_add_to_target_deps_queue(u);