diff --git a/ovsdb/file.c b/ovsdb/file.c index 8d16b097b7e..0af077fcecc 100644 --- a/ovsdb/file.c +++ b/ovsdb/file.c @@ -235,10 +235,14 @@ ovsdb_convert_table(struct ovsdb_txn *txn, continue; } + ovsdb_datum_destroy(&dst_row->fields[dst_column->index], + &dst_column->type); + struct ovsdb_error *error = ovsdb_datum_convert( &dst_row->fields[dst_column->index], &dst_column->type, &src_row->fields[src_column->index], &src_column->type); if (error) { + ovsdb_datum_init_empty(&dst_row->fields[dst_column->index]); ovsdb_row_destroy(dst_row); return error; }