while (1) {
const struct ovsrec_bridge *br_int;
- const char *remote, *system_id;
+ const char *remote, *system_id, *br_int_name;
ovsdb_idl_run(ctx->ovs_idl);
- ctx->br_int_name = smap_get(&cfg->external_ids, "ovn-bridge");
- if (!ctx->br_int_name) {
- ctx->br_int_name = DEFAULT_BRIDGE_NAME;
+ br_int_name = smap_get(&cfg->external_ids, "ovn-bridge");
+ if (!br_int_name) {
+ br_int_name = DEFAULT_BRIDGE_NAME;
}
+ ctx->br_int_name = xstrdup(br_int_name);
br_int = get_bridge(ctx, ctx->br_int_name);
if (!br_int) {
ovsdb_idl_destroy(ctx.ovs_idl);
ovsdb_idl_destroy(ctx.ovnsb_idl);
+ free(ctx.br_int_name);
+
exit(retval);
}
struct controller_ctx {
char *chassis_id; /* ID for this chassis. */
- const char *br_int_name; /* Name of local integration bridge. */
+ char *br_int_name; /* Name of local integration bridge. */
struct ovsdb_idl *ovnsb_idl;
struct ovsdb_idl *ovs_idl;