X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fmountd.git;a=blobdiff_plain;f=ucix.c;h=1e4d1e68c2c48d55f807a0729855452d4e6cac52;hp=e2a6780ec5e1ccaab3e7a4a7c269c9480923b7ab;hb=d13b58730f92fa645c9caf9954b8305c06bdc11e;hpb=827e9eb7ea68786c1b840402a4b2b64473263ae3 diff --git a/ucix.c b/ucix.c index e2a6780..1e4d1e6 100644 --- a/ucix.c +++ b/ucix.c @@ -18,6 +18,8 @@ static inline int ucix_get_ptr(struct uci_context *ctx, const char *p, const cha struct uci_context* ucix_init(const char *config_file) { struct uci_context *ctx = uci_alloc_context(); + if(!ctx) + return NULL; uci_add_delta_path(ctx, "/var/state"); if(uci_load(ctx, config_file, NULL) != UCI_OK) { @@ -30,6 +32,8 @@ struct uci_context* ucix_init(const char *config_file) struct uci_context* ucix_init_path(const char *path, const char *config_file) { struct uci_context *ctx = uci_alloc_context(); + if(!ctx) + return NULL; if(path) { uci_set_savedir(ctx, path); @@ -44,7 +48,10 @@ struct uci_context* ucix_init_path(const char *path, const char *config_file) void ucix_cleanup(struct uci_context *ctx) { - uci_free_context(ctx); + if(ctx) + { + uci_free_context(ctx); + } } int ucix_save(struct uci_context *ctx, const char *p)