Browse Source

Catch UnicodeDecodeErrors when parsing error messages from server

Stupid recursive errors.

Fixes Sentry issue CURA-3VB.
Ghostkeeper 2 years ago
parent
commit
b5e3479c1c
1 changed files with 4 additions and 1 deletions
  1. 4 1
      plugins/Marketplace/PackageList.py

+ 4 - 1
plugins/Marketplace/PackageList.py

@@ -244,7 +244,10 @@ class PackageList(ListModel):
 
     def _downloadError(self, package_id: str, update: bool = False, reply: Optional["QNetworkReply"] = None, error: Optional["QNetworkReply.NetworkError"] = None) -> None:
         if reply:
-            reply_string = bytes(reply.readAll()).decode()
+            try:
+                reply_string = bytes(reply.readAll()).decode()
+            except UnicodeDecodeError:
+                reply_string = "<error message is corrupt too>"
             Logger.error(f"Failed to download package: {package_id} due to {reply_string}")
         self._package_manager.packageInstallingFailed.emit(package_id)