[UTC][sensor][Non-ACR] Fix miss destroying 72/263872/1
authortaemin.yeom <taemin.yeom@samsung.com>
Mon, 13 Sep 2021 05:16:27 +0000 (14:16 +0900)
committerHyotaek Shim <hyotaek.shim@samsung.com>
Mon, 13 Sep 2021 05:48:12 +0000 (05:48 +0000)
Fix errors that TC destroy improper listeners

Change-Id: I6070518a9f1ca31c6882dd45de12c76ac1cf739f
Signed-off-by: taemin.yeom <taemin.yeom@samsung.com>
src/utc/sensor/utc-system-sensor-basic.c

index 1999a5330be80fb329c620c42d4ebf98ece48702..ad885a39058a1eef5e27a4287b6cf3d74f59fa62 100755 (executable)
@@ -741,8 +741,9 @@ int utc_system_sensor_listener_set_event_cb_n(void)
 
        assert_eq(error, SENSOR_ERROR_INVALID_PARAMETER);
 
-       sensor_listener_h listener, wrong_listener;
+       sensor_listener_h listener;
        sensor_h sensor;
+       int backup;
 
        if (!sensor_supported[SENSOR_ACCELEROMETER])
                return 0;
@@ -751,11 +752,13 @@ int utc_system_sensor_listener_set_event_cb_n(void)
 
        sensor_create_listener(sensor, &listener);
 
-       *(int *)wrong_listener = WRONG_HANDLE;
+       backup = *(int *)listener;
+       *(int *)listener = WRONG_HANDLE;
 
-       error = sensor_listener_set_event_cb(wrong_listener, INTERVAL, test_callback, TEST_STRING);
+       error = sensor_listener_set_event_cb(listener, INTERVAL, test_callback, TEST_STRING);
        assert_eq(error, SENSOR_ERROR_OPERATION_FAILED);
 
+       *(int *)listener = backup;
        sensor_destroy_listener(listener);
 
        return 0;
@@ -886,8 +889,9 @@ int utc_system_sensor_listener_set_events_cb_n(void)
 
        assert_eq(error, SENSOR_ERROR_INVALID_PARAMETER);
 
-       sensor_listener_h listener, wrong_listener;
+       sensor_listener_h listener;
        sensor_h sensor;
+       int backup;
 
        if (!sensor_supported[SENSOR_ACCELEROMETER])
                return 0;
@@ -895,12 +899,13 @@ int utc_system_sensor_listener_set_events_cb_n(void)
        sensor_get_default_sensor(SENSOR_ACCELEROMETER, &sensor);
 
        sensor_create_listener(sensor, &listener);
+       backup = *(int *)listener;
+       *(int *)listener = WRONG_HANDLE;
 
-       *(int *)wrong_listener = WRONG_HANDLE;
-
-       error = sensor_listener_set_events_cb(wrong_listener, test_events_callback, TEST_STRING);
+       error = sensor_listener_set_events_cb(listener, test_events_callback, TEST_STRING);
        assert_eq(error, SENSOR_ERROR_OPERATION_FAILED);
 
+       *(int *)listener = backup;
        sensor_destroy_listener(listener);
 
        return 0;
@@ -1024,8 +1029,9 @@ int utc_system_sensor_listener_set_accuracy_cb_n(void)
 
        assert_eq(error, SENSOR_ERROR_INVALID_PARAMETER);
 
-       sensor_listener_h listener, wrong_listener;
+       sensor_listener_h listener;
        sensor_h sensor;
+       int backup;
 
        if (!sensor_supported[SENSOR_ACCELEROMETER])
                return 0;
@@ -1033,12 +1039,13 @@ int utc_system_sensor_listener_set_accuracy_cb_n(void)
        sensor_get_default_sensor(SENSOR_ACCELEROMETER, &sensor);
 
        sensor_create_listener(sensor, &listener);
+       backup = *(int *)listener;
+       *(int *)listener = WRONG_HANDLE;
 
-       *(int *)wrong_listener = WRONG_HANDLE;
-
-       error = sensor_listener_set_accuracy_cb(wrong_listener, test_callback, TEST_STRING);
+       error = sensor_listener_set_accuracy_cb(listener, test_callback, TEST_STRING);
        assert_eq(error, SENSOR_ERROR_OPERATION_FAILED);
 
+       *(int *)listener = backup;
        sensor_destroy_listener(listener);
 
        return 0;