projects
/
project
/
uci.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
remove some obsolete variables. thx, lorenz
[project/uci.git]
/
libuci.c
diff --git
a/libuci.c
b/libuci.c
index
262ca69
..
af240ce
100644
(file)
--- a/
libuci.c
+++ b/
libuci.c
@@
-22,8
+22,6
@@
#include <stdlib.h>
#include <stdio.h>
#include "uci.h"
#include <stdlib.h>
#include <stdio.h>
#include "uci.h"
-
-#define DEBUG
#include "err.h"
static const char *uci_errstr[] = {
#include "err.h"
static const char *uci_errstr[] = {
@@
-79,7
+77,7
@@
static char *uci_strdup(struct uci_context *ctx, const char *str)
}
#include "list.c"
}
#include "list.c"
-#include "
pars
e.c"
+#include "
fil
e.c"
/* externally visible functions */
/* externally visible functions */
@@
-94,10
+92,22
@@
struct uci_context *uci_alloc(void)
return ctx;
}
return ctx;
}
+void uci_free(struct uci_context *ctx)
+{
+ struct uci_element *e, *tmp;
+
+ uci_cleanup(ctx);
+ uci_foreach_element_safe(&ctx->root, tmp, e) {
+ uci_free_package(uci_to_package(e));
+ }
+ free(ctx);
+ return;
+}
+
int uci_cleanup(struct uci_context *ctx)
{
UCI_HANDLE_ERR(ctx);
int uci_cleanup(struct uci_context *ctx)
{
UCI_HANDLE_ERR(ctx);
- uci_
pars
e_cleanup(ctx);
+ uci_
fil
e_cleanup(ctx);
return 0;
}
return 0;
}
@@
-116,7
+126,7
@@
void uci_perror(struct uci_context *ctx, const char *str)
switch (err) {
case UCI_ERR_PARSE:
if (ctx->pctx) {
switch (err) {
case UCI_ERR_PARSE:
if (ctx->pctx) {
- fprintf(stderr, "%s: %s
at line %d, byte %d\n", str, uci_errstr[err]
, ctx->pctx->line, ctx->pctx->byte);
+ fprintf(stderr, "%s: %s
(%s) at line %d, byte %d\n", str, uci_errstr[err], (ctx->pctx->reason ? ctx->pctx->reason : "unknown")
, ctx->pctx->line, ctx->pctx->byte);
break;
}
/* fall through */
break;
}
/* fall through */