ACK
On 16/09/13 13:42, Jan Friesse wrote:
If so, we will return error to library. This shouldn't happen as long as
library user isn't overwriting memory.
Signed-off-by: Jan Friesse <[email protected]>
---
lib/confdb.c | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/lib/confdb.c b/lib/confdb.c
index 5d3c536..ce698e5 100644
--- a/lib/confdb.c
+++ b/lib/confdb.c
@@ -712,12 +712,17 @@ cs_error_t confdb_object_find_destroy(
}
context = find_iter_context(&confdb_inst->object_find_head,
parent_object_handle);
+ if (context == NULL) {
+ error = CS_ERR_LIBRARY;
+ goto error_exit;
+ }
error = do_find_destroy(confdb_inst, context->find_handle);
if (error == CS_OK) {
list_del(&context->list);
free(context);
}
+error_exit:
(void)hdb_handle_put (&confdb_handle_t_db, handle);
return error;
}
@@ -736,12 +741,17 @@ cs_error_t confdb_object_iter_destroy(
}
context = find_iter_context(&confdb_inst->object_iter_head,
parent_object_handle);
+ if (context == NULL) {
+ error = CS_ERR_LIBRARY;
+ goto error_exit;
+ }
error = do_find_destroy(confdb_inst, context->find_handle);
if (error == CS_OK) {
list_del(&context->list);
free(context);
}
+error_exit:
(void)hdb_handle_put (&confdb_handle_t_db, handle);
return error;
}
_______________________________________________
discuss mailing list
[email protected]
http://lists.corosync.org/mailman/listinfo/discuss