diff --git a/doc/changes/misc_fixes/mr.2308.md b/doc/changes/misc_fixes/mr.2308.md new file mode 100644 index 000000000..551ad752e --- /dev/null +++ b/doc/changes/misc_fixes/mr.2308.md @@ -0,0 +1 @@ +Fix: Reliability and robustness improvements on Android. diff --git a/src/xrt/ipc/android/ipc_client_android.cpp b/src/xrt/ipc/android/ipc_client_android.cpp index 22653be18..87a380467 100644 --- a/src/xrt/ipc/android/ipc_client_android.cpp +++ b/src/xrt/ipc/android/ipc_client_android.cpp @@ -102,6 +102,11 @@ ipc_client_android_destroy(struct ipc_client_android **ptr_ica) if (ica == NULL) { return; } - delete ica; + try { + delete ica; + } catch (std::exception const &e) { + // Must catch and ignore any exceptions in the destructor! + U_LOG_E("Failure while destroying IPC clean: %s", e.what()); + } *ptr_ica = NULL; }