CameraITS: fix context manager methods
We use context manager to operate camera object so move object
init/delete logic into __enter__/__exit__.
Test: run ITS tests
Bug: 79417758
Change-Id: I0a1914b33a796d5fb7a69e6c7c13a94570a0b163
diff --git a/apps/CameraITS/pymodules/its/device.py b/apps/CameraITS/pymodules/its/device.py
index cb3f51a..1c3c2c1 100644
--- a/apps/CameraITS/pymodules/its/device.py
+++ b/apps/CameraITS/pymodules/its/device.py
@@ -216,7 +216,7 @@
break
proc.kill()
- def __init__(self):
+ def __enter__(self):
# Initialize device id and adb command.
self.device_id = get_device_id()
self.adb = "adb -s " + self.device_id
@@ -226,16 +226,12 @@
self.__close_camera()
self.__open_camera()
-
- def __del__(self):
- if hasattr(self, 'sock') and self.sock:
- self.__close_camera()
- self.sock.close()
-
- def __enter__(self):
return self
def __exit__(self, type, value, traceback):
+ if hasattr(self, 'sock') and self.sock:
+ self.__close_camera()
+ self.sock.close()
return False
def __read_response_from_socket(self):