X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;f=history.c;h=c698192eda56f760665933f589fb32764927c070;hb=476db477246a1438f3b2535bf37ab7f9130827c8;hp=ae36217a757a0f47f4b792cc686aa152b53b870e;hpb=4763c3f56ddfc69369a21634e9ad83d6175ca451;p=uci.git diff --git a/history.c b/history.c index ae36217..c698192 100644 --- a/history.c +++ b/history.c @@ -419,6 +419,17 @@ int uci_save(struct uci_context *ctx, struct uci_package *p) if ((asprintf(&filename, "%s/%s", ctx->savedir, p->e.name) < 0) || !filename) UCI_THROW(ctx, UCI_ERR_MEM); + uci_foreach_element(&ctx->hooks, tmp) { + struct uci_hook *hook = uci_to_hook(tmp); + + if (!hook->ops->set) + continue; + + uci_foreach_element(&p->history, e) { + hook->ops->set(hook->ops, p, uci_to_history(e)); + } + } + ctx->err = 0; UCI_TRAP_SAVE(ctx, done); f = uci_open_stream(ctx, filename, SEEK_END, true, true);