From: Bartlomiej Grzelewski Date: Fri, 27 Mar 2020 11:24:42 +0000 (+0000) Subject: elm_atspi_bridge: fix bugs reported by coverity X-Git-Tag: submit/tizen/20200405.220557~52 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F14%2F229114%2F2;p=platform%2Fupstream%2Fefl.git elm_atspi_bridge: fix bugs reported by coverity Make sure we free allocated resources in the error path. Prevent usage of uninitilized value. Signed-off-by: Bartlomiej Grzelewski Reviewed-by: Stefan Schmidt Differential Revision: https://phab.enlightenment.org/D11607 Change-Id: I1d86a397a9d983d8b733615ffeaf318d4f0c9437 --- diff --git a/src/lib/elementary/elm_atspi_bridge.c b/src/lib/elementary/elm_atspi_bridge.c index ad5db0a978..ebd6f98275 100644 --- a/src/lib/elementary/elm_atspi_bridge.c +++ b/src/lib/elementary/elm_atspi_bridge.c @@ -2149,12 +2149,15 @@ _text_string_at_offset_get(const Eldbus_Service_Interface *iface, const Eldbus_M return _dbus_invalid_ref_error_new(msg); } + str = str ? str : strdup(""); + ret = eldbus_message_method_return_new(msg); - EINA_SAFETY_ON_NULL_RETURN_VAL(ret, NULL); + EINA_SAFETY_ON_NULL_GOTO(ret, cleanup); eldbus_message_arguments_append(ret, "sii", str, start, end); - free(str); +cleanup: + free(str); return ret; } @@ -2194,11 +2197,12 @@ _text_text_get(const Eldbus_Service_Interface *iface, const Eldbus_Message *msg) str = str ? str : strdup(""); Eldbus_Message *ret = eldbus_message_method_return_new(msg); - EINA_SAFETY_ON_NULL_RETURN_VAL(ret, NULL); + EINA_SAFETY_ON_NULL_GOTO(ret, cleanup); + eldbus_message_arguments_append(ret, "s", str); +cleanup: free(str); - return ret; } @@ -2355,9 +2359,10 @@ _text_attribute_value_get(const Eldbus_Service_Interface *iface, const Eldbus_Me } ret = eldbus_message_method_return_new(msg); - EINA_SAFETY_ON_NULL_RETURN_VAL(ret, NULL); + EINA_SAFETY_ON_NULL_GOTO(ret, cleanup); eldbus_message_arguments_append(ret, "siib", value ? value : "", start, end, res); +cleanup: free(value); return ret; }