diff --git a/frameworks/native/src/native_sensor.cpp b/frameworks/native/src/native_sensor.cpp index f05eb049aaff98226edbd4596024199af95b1610..bfcd647e6a278b785317034682d2dc3ffaad70fd 100644 --- a/frameworks/native/src/native_sensor.cpp +++ b/frameworks/native/src/native_sensor.cpp @@ -86,10 +86,15 @@ Sensor_Info **OH_Sensor_CreateInfos(uint32_t count) int32_t OH_Sensor_DestroyInfos(Sensor_Info **sensors, uint32_t count) { for (uint32_t i = 0; i < count; ++i) { - delete sensors[i]; + if (sensors[i] != nullptr) { + delete sensors[i]; + sensors[i] = nullptr; + } + } + if (sensors != nullptr) { + delete[] sensors; + sensors = nullptr; } - delete[] sensors; - sensors = nullptr; return SENSOR_SUCCESS; }