From: Ben Pfaff Date: Wed, 6 Jul 2011 21:22:42 +0000 (-0700) Subject: ovsdb: Fix segfault in ovsdb_file_txn_row_from_json(). X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3697c0626f338f4dbeb69cdb08b84f79980acaad;p=openvswitch ovsdb: Fix segfault in ovsdb_file_txn_row_from_json(). If 'error' is nonnull then we destroy the row, so we must not try to reuse the row immediately after that. Support request #6155. Repoted-by: Geoff White --- diff --git a/ovsdb/file.c b/ovsdb/file.c index 9eea460d..05a4067a 100644 --- a/ovsdb/file.c +++ b/ovsdb/file.c @@ -333,10 +333,9 @@ ovsdb_file_txn_row_from_json(struct ovsdb_txn *txn, struct ovsdb_table *table, error = ovsdb_file_update_row_from_json(new, converting, json); if (error) { ovsdb_row_destroy(new); + } else { + ovsdb_txn_row_insert(txn, new); } - - ovsdb_txn_row_insert(txn, new); - return error; } }