ovs-vsctl: Fix a segfault.
authorGurucharan Shetty <gshetty@nicira.com>
Wed, 10 Apr 2013 18:55:06 +0000 (11:55 -0700)
committerGurucharan Shetty <gshetty@nicira.com>
Fri, 12 Apr 2013 21:24:25 +0000 (14:24 -0700)
The following two commands results in a ovs-vsctl segfault.
ovs-vsctl -vfatal_signal:off --timeout=0 wait-until \
Open_vswitch . external_ids:blah="1"
/etc/init.d/openvswitch-switch restart

This patch fixes the segfault by properly setting the global
varibale, the_idl_txn to NULL when the underlying memory is
freed.

Signed-off-by: Gurucharan Shetty <gshetty@nicira.com>
utilities/ovs-vsctl.c

index 18ace60..aed90fd 100644 (file)
@@ -4105,6 +4105,7 @@ try_again:
     if (txn) {
         ovsdb_idl_txn_abort(txn);
         ovsdb_idl_txn_destroy(txn);
+        the_idl_txn = NULL;
     }
     ovsdb_symbol_table_destroy(symtab);
     for (c = commands; c < &commands[n_commands]; c++) {