From 8090832f3b27c74df2e1ef21a5c26bc42d72ddde Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Sun, 20 Aug 2023 23:38:14 +0200 Subject: [PATCH] Fix weird unitilialised shared class issue --- novelwriter/shared.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/novelwriter/shared.py b/novelwriter/shared.py index 6c115fca..07ea2d81 100644 --- a/novelwriter/shared.py +++ b/novelwriter/shared.py @@ -42,6 +42,11 @@ logger = logging.getLogger(__name__) class SharedData(QObject): + __slots__ = ( + "_gui", "_theme", "_project", "_leckedBy", "_alert", + "_idleTime", "_idleRefTime", + ) + projectStatusChanged = pyqtSignal(bool) projectStatusMessage = pyqtSignal(str) @@ -149,9 +154,12 @@ class SharedData(QObject): the last time this function was called. Otherwise, only the reference time is updated. """ - if userIdle: - self._idleTime += currTime - self._idleRefTime - self._idleRefTime = currTime + if hasattr(self, "_idleRefTime"): + # This method is called by a timer from C++, and the + # instance may not have be initialised + if userIdle: + self._idleTime += currTime - self._idleRefTime + self._idleRefTime = currTime return ##