projects
/
collectd.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge pull request #1699 from tokkee/sh/grpc
[collectd.git]
/
src
/
daemon
/
plugin.c
diff --git
a/src/daemon/plugin.c
b/src/daemon/plugin.c
index
fa78fa0
..
3a2e287
100644
(file)
--- a/
src/daemon/plugin.c
+++ b/
src/daemon/plugin.c
@@
-1690,11
+1690,12
@@
int plugin_unregister_notification (const char *name)
return (plugin_unregister (list_notification, name));
}
return (plugin_unregister (list_notification, name));
}
-
void
plugin_init_all (void)
+
int
plugin_init_all (void)
{
char const *chain_name;
llentry_t *le;
int status;
{
char const *chain_name;
llentry_t *le;
int status;
+ int ret = 0;
/* Init the value cache */
uc_init ();
/* Init the value cache */
uc_init ();
@@
-1739,7
+1740,7
@@
void plugin_init_all (void)
}
if ((list_init == NULL) && (read_heap == NULL))
}
if ((list_init == NULL) && (read_heap == NULL))
- return;
+ return
ret
;
/* Calling all init callbacks before checking if read callbacks
* are available allows the init callbacks to register the read
/* Calling all init callbacks before checking if read callbacks
* are available allows the init callbacks to register the read
@@
-1768,6
+1769,7
@@
void plugin_init_all (void)
* handling themselves. */
/* FIXME: Unload _all_ functions */
plugin_unregister_read (le->key);
* handling themselves. */
/* FIXME: Unload _all_ functions */
plugin_unregister_read (le->key);
+ ret = -1;
}
le = le->next;
}
le = le->next;
@@
-1789,6
+1791,7
@@
void plugin_init_all (void)
if (num != -1)
start_read_threads ((num > 0) ? num : 5);
}
if (num != -1)
start_read_threads ((num > 0) ? num : 5);
}
+ return ret;
} /* void plugin_init_all */
/* TODO: Rename this function. */
} /* void plugin_init_all */
/* TODO: Rename this function. */
@@
-1972,9
+1975,10
@@
int plugin_flush (const char *plugin, cdtime_t timeout, const char *identifier)
return (0);
} /* int plugin_flush */
return (0);
} /* int plugin_flush */
-
void
plugin_shutdown_all (void)
+
int
plugin_shutdown_all (void)
{
llentry_t *le;
{
llentry_t *le;
+ int ret = 0; // Assume success.
stop_read_threads ();
stop_read_threads ();
@@
-2011,7
+2015,8
@@
void plugin_shutdown_all (void)
* after callback returns. */
le = le->next;
* after callback returns. */
le = le->next;
- (*callback) ();
+ if ((*callback) () != 0)
+ ret = -1;
plugin_set_ctx (old_ctx);
}
plugin_set_ctx (old_ctx);
}
@@
-2033,6
+2038,7
@@
void plugin_shutdown_all (void)
plugin_free_loaded ();
plugin_free_data_sets ();
plugin_free_loaded ();
plugin_free_data_sets ();
+ return (ret);
} /* void plugin_shutdown_all */
int plugin_dispatch_missing (const value_list_t *vl) /* {{{ */
} /* void plugin_shutdown_all */
int plugin_dispatch_missing (const value_list_t *vl) /* {{{ */