From a15fce8efcd159d729ad4749a6c3a1b7dbb36571 Mon Sep 17 00:00:00 2001 From: Ben Pfaff Date: Thu, 24 Jan 2013 14:23:45 -0800 Subject: [PATCH] ovsdb-tool: Fix memory leak on error path in "show-log" implementation. Found by Coverity. Signed-off-by: Ben Pfaff Acked-by: Ethan Jackson --- ovsdb/ovsdb-tool.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ovsdb/ovsdb-tool.c b/ovsdb/ovsdb-tool.c index 6b75f4971..b50b39bcc 100644 --- a/ovsdb/ovsdb-tool.c +++ b/ovsdb/ovsdb-tool.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009, 2010, 2011, 2012 Nicira, Inc. + * Copyright (c) 2009, 2010, 2011, 2012, 2013 Nicira, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -435,8 +435,8 @@ print_db_changes(struct shash *tables, struct shash *names, ? shash_find_data(&table_schema->columns, column) : NULL); if (column_schema) { - const struct ovsdb_error *error; const struct ovsdb_type *type; + struct ovsdb_error *error; struct ovsdb_datum datum; type = &column_schema->type; @@ -448,6 +448,8 @@ print_db_changes(struct shash *tables, struct shash *names, ds_init(&s); ovsdb_datum_to_string(&datum, type, &s); value_string = ds_steal_cstr(&s); + } else { + ovsdb_error_destroy(error); } } if (!value_string) { -- 2.47.0