aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSergey Poznyakoff <gray@gnu.org.ua>2013-06-04 12:01:29 +0300
committerSergey Poznyakoff <gray@gnu.org.ua>2013-06-04 12:01:29 +0300
commit0cb5eaca7e4b6f5a8fbd0fc6c30550ebf9a9583b (patch)
tree484ea838b5ccfd96a9ec564fd0998225c9460570 /src
parent63e6bec45c4c1cb8c3c7536d616e74dd07127895 (diff)
downloaddirevent-0cb5eaca7e4b6f5a8fbd0fc6c30550ebf9a9583b.tar.gz
direvent-0cb5eaca7e4b6f5a8fbd0fc6c30550ebf9a9583b.tar.bz2
Update docs.
* NEWS: Update. * doc/dircond.conf.5: Update. * doc/dircond.texi: Update. * src/config.c (cb_watcher): Treat missing "event" statement as "all events". * src/dircond.h (evtsetall): New prototype. * src/event.c (evtsetall): New function. * src/environ.c: Minor fix.
Diffstat (limited to 'src')
-rw-r--r--src/config.c6
-rw-r--r--src/dircond.h1
-rw-r--r--src/environ.c2
-rw-r--r--src/event.c11
4 files changed, 15 insertions, 5 deletions
diff --git a/src/config.c b/src/config.c
index c3b9395..7e0ae4b 100644
--- a/src/config.c
+++ b/src/config.c
@@ -249,10 +249,8 @@ cb_watcher(enum grecs_callback_command cmd, grecs_node_t *node,
grecs_error(&node->locus, 0, "no command configured");
++err;
}
- if (evtnullp(&eventconf.eventmask)) {
- grecs_error(&node->locus, 0, "no events configured");
- ++err;
- }
+ if (evtnullp(&eventconf.eventmask))
+ evtsetall(&eventconf.eventmask);
if (err == 0)
eventconf_flush(&node->locus);
else
diff --git a/src/dircond.h b/src/dircond.h
index f781306..06d8003 100644
--- a/src/dircond.h
+++ b/src/dircond.h
@@ -118,6 +118,7 @@ int defevt(const char *name, event_mask *mask, int line);
int getevt(const char *name, event_mask *mask);
int evtnullp(event_mask *mask);
event_mask *event_mask_init(event_mask *m, int fflags, event_mask const *);
+void evtsetall(event_mask *m);
/* Translate generic events to system ones and vice-versa */
extern event_mask genev_xlat[];
diff --git a/src/environ.c b/src/environ.c
index fed2e9d..a28d6b8 100644
--- a/src/environ.c
+++ b/src/environ.c
@@ -119,7 +119,7 @@ environ_setup(char **hint, char **kve)
int wsflags = WRDSF_NOCMD | WRDSF_QUOTE | WRDSF_NOSPLIT |
WRDSF_ENV | WRDSF_ENV_KV;
- ws.ws_env = kve;
+ ws.ws_env = (const char **) kve;
if (!hint)
hint = empty;
diff --git a/src/event.c b/src/event.c
index bbf9181..4959859 100644
--- a/src/event.c
+++ b/src/event.c
@@ -147,4 +147,15 @@ event_mask_init(event_mask *m, int fflags, event_mask const *req)
return m;
}
+void
+evtsetall(event_mask *m)
+{
+ int i;
+ m->sys_mask = 0;
+ m->gen_mask = 0;
+ for (i = 0; i < genev_xlat[i].gen_mask; i++) {
+ m->gen_mask |= genev_xlat[i].gen_mask;
+ m->sys_mask |= genev_xlat[i].sys_mask;
+ }
+}

Return to:

Send suggestions and report system problems to the System administrator.