From: Ben Pfaff Date: Thu, 24 Jan 2013 22:23:45 +0000 (-0800) Subject: ovsdb-tool: Fix memory leak on error path in "show-log" implementation. X-Git-Tag: v1.9.0~7 X-Git-Url: http://git.cascardo.eti.br/?p=cascardo%2Fovs.git;a=commitdiff_plain;h=f6f0819ee4fded1a7feb2e28e7d106294612e7b6 ovsdb-tool: Fix memory leak on error path in "show-log" implementation. Found by Coverity. Signed-off-by: Ben Pfaff Acked-by: Ethan Jackson --- 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) {