mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-08-15 21:26:06 +08:00
Added exception handling for when wrapped reply object is already deleted
CURA-2295
This commit is contained in:
parent
f2e93bfd97
commit
93cc25b408
@ -252,6 +252,7 @@ class NetworkPrinterOutputDevice(PrinterOutputDevice):
|
|||||||
self._connection_message.show()
|
self._connection_message.show()
|
||||||
# Check if we were uploading something. Abort if this is the case.
|
# Check if we were uploading something. Abort if this is the case.
|
||||||
# Some operating systems handle this themselves, others give weird issues.
|
# Some operating systems handle this themselves, others give weird issues.
|
||||||
|
try:
|
||||||
if self._post_reply:
|
if self._post_reply:
|
||||||
self._post_reply.abort()
|
self._post_reply.abort()
|
||||||
try:
|
try:
|
||||||
@ -259,6 +260,8 @@ class NetworkPrinterOutputDevice(PrinterOutputDevice):
|
|||||||
except TypeError:
|
except TypeError:
|
||||||
pass # The disconnection can fail on mac in some cases. Ignore that.
|
pass # The disconnection can fail on mac in some cases. Ignore that.
|
||||||
self._progress_message.hide()
|
self._progress_message.hide()
|
||||||
|
except RuntimeError:
|
||||||
|
self._post_reply = None # It can happen that the wrapped c++ object is already deleted.
|
||||||
return
|
return
|
||||||
else:
|
else:
|
||||||
self._recreate_network_manager_count = 1
|
self._recreate_network_manager_count = 1
|
||||||
@ -273,6 +276,7 @@ class NetworkPrinterOutputDevice(PrinterOutputDevice):
|
|||||||
self._connection_message.show()
|
self._connection_message.show()
|
||||||
# Check if we were uploading something. Abort if this is the case.
|
# Check if we were uploading something. Abort if this is the case.
|
||||||
# Some operating systems handle this themselves, others give weird issues.
|
# Some operating systems handle this themselves, others give weird issues.
|
||||||
|
try:
|
||||||
if self._post_reply:
|
if self._post_reply:
|
||||||
self._post_reply.abort()
|
self._post_reply.abort()
|
||||||
try:
|
try:
|
||||||
@ -280,6 +284,8 @@ class NetworkPrinterOutputDevice(PrinterOutputDevice):
|
|||||||
except TypeError:
|
except TypeError:
|
||||||
pass # The disconnection can fail on mac in some cases. Ignore that.
|
pass # The disconnection can fail on mac in some cases. Ignore that.
|
||||||
self._progress_message.hide()
|
self._progress_message.hide()
|
||||||
|
except RuntimeError:
|
||||||
|
self._post_reply = None # It can happen that the wrapped c++ object is already deleted.
|
||||||
self.setConnectionState(ConnectionState.error)
|
self.setConnectionState(ConnectionState.error)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user