diff --git a/src/app.py b/src/app.py index 94a0bf3..cc00c8f 100644 --- a/src/app.py +++ b/src/app.py @@ -58,7 +58,11 @@ class Application: def ipc_realization_check(self, ipc_server): try: ipc_server.create_ipc_listener() - except Exception: + except (OSError, PermissionError) as e: + logger.info(f"IPC listener creation failed: {e}, falling back to test message") + ipc_server.send_test_ipc_message() + except Exception as e: + logger.error(f"Unexpected IPC setup error: {e}") ipc_server.send_test_ipc_message() def setup_debug_hook(self): diff --git a/src/core/widgets/code/completion_providers/python_completion_provider.py b/src/core/widgets/code/completion_providers/python_completion_provider.py index d8268fe..319ce99 100644 --- a/src/core/widgets/code/completion_providers/python_completion_provider.py +++ b/src/core/widgets/code/completion_providers/python_completion_provider.py @@ -101,8 +101,7 @@ class PythonCompletionProvider(GObject.Object, GtkSource.CompletionProvider): def get_icon_for_type(self, _type): try: return self._theme.load_icon(icon_names[_type.lower()], 16, 0) - except: - try: - return self._theme.load_icon(Gtk.STOCK_ADD, 16, 0) - except: - return None \ No newline at end of file + except (KeyError, AttributeError, GObject.GError) as e: + return self._theme.load_icon(Gtk.STOCK_ADD, 16, 0) + except (GObject.GError, AttributeError) as e: + return None \ No newline at end of file diff --git a/src/libs/ipc_server.py b/src/libs/ipc_server.py index d8ea5df..d082277 100644 --- a/src/libs/ipc_server.py +++ b/src/libs/ipc_server.py @@ -63,8 +63,10 @@ class IPCServer(Singleton): self._handle_ipc_message(conn, start_time) except EOFError as e: logger.debug( repr(e) ) + except (OSError, ConnectionError, BrokenPipeError) as e: + logger.debug( f"IPC connection error: {e}" ) except Exception as e: - logger.debug( repr(e) ) + logger.debug( f"Unexpected IPC error: {e}" ) finally: conn.close() @@ -116,8 +118,10 @@ class IPCServer(Singleton): conn.close() except ConnectionRefusedError as e: logger.error("Connection refused...") + except (OSError, ConnectionError, BrokenPipeError) as e: + logger.error( f"IPC connection error: {e}" ) except Exception as e: - logger.error( repr(e) ) + logger.error( f"Unexpected IPC error: {e}" ) def send_test_ipc_message(self, message: str = "Empty Data...") -> None: @@ -135,5 +139,7 @@ class IPCServer(Singleton): if self._conn_type == "socket": logger.error("IPC Socket no longer valid.... Removing.") os.unlink(self._ipc_address) + except (OSError, ConnectionError, BrokenPipeError) as e: + logger.error( f"IPC connection error: {e}" ) except Exception as e: - logger.error( repr(e) ) \ No newline at end of file + logger.error( f"Unexpected IPC error: {e}" ) \ No newline at end of file