@@ -436,17 +436,15 @@ } switch (handler->mode) { case LC_MODE_CALLBACK: if (handler->callback != NULL) { - lc_errno = LC_ERR_NONE; - lc_err_usererrmsg = NULL; - retval = handler->callback(localvar, var, varargs, value, flags, handler->extra); if (retval < 0) { lc_errno = LC_ERR_CALLBACK; } + return(retval); } break; case LC_MODE_VAR: return(lc_handle_type(handler->type, value, handler->data)); @@ -810,13 +808,10 @@ int lc_process_var(const char *var, const char *varargs, const char *value, lc_flags_t flags) { struct lc_varhandler_st *handler = NULL; const char *lastcomponent_handler = NULL, *lastcomponent_var = NULL; - lc_errno = LC_ERR_NONE; - lc_err_usererrmsg = NULL; - lastcomponent_var = strrchr(var, '.'); if (lastcomponent_var == NULL) { lastcomponent_var = var; } else { lastcomponent_var++; @@ -862,13 +857,10 @@ } int lc_register_callback(const char *var, char opt, lc_var_type_t type, int (*callback)(const char *, const char *, const char *, const char *, lc_flags_t, void *), void *extra) { struct lc_varhandler_st *newhandler = NULL; - lc_errno = LC_ERR_NONE; - lc_err_usererrmsg = NULL; - newhandler = malloc(sizeof(*newhandler)); if (newhandler == NULL) { return(-1); } @@ -891,13 +883,10 @@ } int lc_register_var(const char *var, lc_var_type_t type, void *data, char opt) { struct lc_varhandler_st *newhandler = NULL; - lc_errno = LC_ERR_NONE; - lc_err_usererrmsg = NULL; - newhandler = malloc(sizeof(*newhandler)); if (newhandler == NULL) { return(-1); } @@ -920,13 +909,10 @@ } int lc_process_file(const char *appname, const char *pathname, lc_conf_type_t type) { int chkretval = 0; - lc_errno = LC_ERR_NONE; - lc_err_usererrmsg = NULL; - switch (type) { case LC_CONF_SECTION: chkretval = lc_process_conf_section(appname, pathname); break; case LC_CONF_APACHE: @@ -1020,13 +1006,10 @@ } void lc_cleanup(void) { struct lc_varhandler_st *handler = NULL, *next = NULL; - lc_errno = LC_ERR_NONE; - lc_err_usererrmsg = NULL; - handler = varhandlers; while (handler != NULL) { if (handler->var != NULL) { free(handler->var); }