afm-udb: keep looking at valid units
authorJosé Bollo <jose.bollo@iot.bzh>
Tue, 10 Oct 2017 15:09:14 +0000 (17:09 +0200)
committerJosé Bollo <jose.bollo@iot.bzh>
Fri, 24 Nov 2017 16:44:57 +0000 (17:44 +0100)
Returning an error when a unit is not valid has
drawbacks. With this commit, bogus units are
ignored. The benefit is to be able of using valid
units instead of using none because in the previous
case, all the DB was cancelled.

Change-Id: Id1e4d6d5efd4af7e118b9d549238bd5e3d6c52d7
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
src/afm-udb.c

index 0a48810..80cc715 100644 (file)
@@ -34,7 +34,6 @@
 
 #include "afm-udb.h"
 
-
 static const char x_afm_prefix[] = "X-AFM-";
 static const char service_extension[] = ".service";
 static const char key_unit_path[] = "-unit-path";
@@ -367,12 +366,14 @@ static int update_cb(void *closure, const char *name, const char *path, int isus
        /* reads the file */
        rc = read_unit_file(path, &content, &length);
        if (rc < 0)
-               return rc;
+               return 0;
 
        /* process the file */
        rc = addunit(&updt->applications, isuser, path, name, content, length);
+       /* TODO: if (rc < 0)
+               ERROR("Ignored boggus unit %s (error: %m)", path); */
        free(content);
-       return rc;
+       return 0;
 }
 
 /*