Fix SVACE & Coverity issues #2 12/173312/1 accepted/tizen/unified/20180321.134840 submit/tizen/20180321.023238
authorchanywa <cbible.kim@samsung.com>
Tue, 20 Mar 2018 11:28:06 +0000 (20:28 +0900)
committerchanywa <cbible.kim@samsung.com>
Tue, 20 Mar 2018 11:28:06 +0000 (20:28 +0900)
Change-Id: I8f883a52605f148c5507dcf083d3458a7d6ae63a

location/manager/location-common-util.c

index e7aa284..74989b2 100644 (file)
@@ -158,7 +158,10 @@ int set_prop_boundary(GList **prev_boundary_priv_list, GList *new_boundary_priv_
                        LocationBoundaryPrivate *copy_priv = g_slice_new0(LocationBoundaryPrivate);
                        if (!copy_priv) break;
                        copy_priv->boundary = location_boundary_copy(new_priv->boundary);
-                       if (!copy_priv->boundary) break;
+                       if (!copy_priv->boundary) {
+                               g_slice_free(LocationBoundaryPrivate, copy_priv);
+                               break;
+                       }
                        copy_priv->zone_status = new_priv->zone_status;
                        *prev_boundary_priv_list = g_list_append(*prev_boundary_priv_list, copy_priv);
 
@@ -181,7 +184,10 @@ int set_prop_removal_boundary(GList **prev_boundary_list, LocationBoundary *boun
        g_return_val_if_fail(remove_priv, LOCATION_ERROR_PARAMETER);
 
        remove_priv->boundary = location_boundary_copy(boundary);
-       g_return_val_if_fail(remove_priv->boundary, LOCATION_ERROR_PARAMETER);
+       if (!remove_priv->boundary) {
+               g_slice_free(LocationBoundaryPrivate, remove_priv);
+               return LOCATION_ERROR_PARAMETER;
+       }
 
        check_list = g_list_find_custom(*prev_boundary_list, remove_priv, (GCompareFunc) boundary_compare);
        if (check_list) {