summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosé Bollo <jose.bollo@iot.bzh>2017-11-16 11:59:06 +0100
committerJosé Bollo <jose.bollo@iot.bzh>2017-11-24 17:44:57 +0100
commit1867d049f8a3b181bb920fef6d904cfa67de06f0 (patch)
treecce9044e1448ac4dd18d138ebf881491e5b471c6
parent88531199d2f46f8758dd1ef3262e567cc849c0b8 (diff)
afm-udb: add comments
Change-Id: I03d560a8fca3a064fa526afb55c951062fa7a78e Signed-off-by: José Bollo <jose.bollo@iot.bzh>
-rw-r--r--src/afm-udb.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/afm-udb.c b/src/afm-udb.c
index 24c188f..718aa5c 100644
--- a/src/afm-udb.c
+++ b/src/afm-udb.c
@@ -280,7 +280,7 @@ static int read_unit_file(const char *path, char **content, size_t *length)
/* read the file */
rc = getfile(path, content, length);
if (rc >= 0) {
- /* removes any comment and join lines */
+ /* removes any comment and join continued lines */
st = 0;
read = write = *content;
for (;;) {
@@ -289,6 +289,7 @@ static int read_unit_file(const char *path, char **content, size_t *length)
break;
switch (st) {
case 0:
+ /* state 0: begin of a line */
if (c == ';' || c == '#') {
st = 3; /* removes lines starting with ; or # */
break;
@@ -299,6 +300,7 @@ enter_state_1:
st = 1;
/*@fallthrough@*/
case 1:
+ /* state 1: emitting a normal line */
if (c == '\\')
st = 2;
else {
@@ -308,12 +310,14 @@ enter_state_1:
}
break;
case 2:
+ /* state 2: character after '\' */
if (c == '\n')
c = ' ';
else
*write++ = '\\';
goto enter_state_1;
case 3:
+ /* state 3: inside a comment, wait its end */
if (c == '\n')
st = 0;
break;