diff --git a/dmtree/tr181/xmpp.c b/dmtree/tr181/xmpp.c index 22038f58..c568d867 100644 --- a/dmtree/tr181/xmpp.c +++ b/dmtree/tr181/xmpp.c @@ -20,7 +20,7 @@ static int add_xmpp_connection(char *refparam, struct dmctx *ctx, void *data, ch last_inst = get_last_instance("cwmp_xmpp", "xmpp_connection", "connection_instance"); dmuci_add_section_and_rename("cwmp_xmpp", "xmpp_connection", &xmpp_connection, &value1); dmuci_add_section_and_rename("cwmp_xmpp", "xmpp_connection_server", &xmpp_connection_server, &value2); - dmasprintf(instancepara, "%d", atoi(last_inst)+1); + dmasprintf(instancepara, "%d", (last_inst) ? atoi(last_inst)+1 : 1); dmuci_set_value_by_section(xmpp_connection, "connection_instance", *instancepara); dmuci_set_value_by_section(xmpp_connection, "enable", "0"); dmuci_set_value_by_section(xmpp_connection, "interval", "30");