Your message dated Wed, 05 Apr 2017 17:48:54 +0000 with message-id <[email protected]> and subject line Bug#857691: fixed in lgogdownloader 3.1-2 has caused the Debian Bug report #857691, regarding lgogdownloader: crashes if you have DLC for a missing game to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact [email protected] immediately.) -- 857691: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=857691 Debian Bug Tracking System Contact [email protected] with problems
--- Begin Message ---Package: lgogdownloader Version: 3.1-1 Severity: important Tags: patch fixed-upstream `lgogdownloader --list` crashes if your GOG account has DLC for a game that you don't have, for example if you accidentally added the free DLC for The Witcher 3 like I did. It doesn't seem to be possible to remove items from an account once they have been added, so this is not something that affected users can work around, except by buying the corresponding game. This was fixed upstream shortly after 3.1. Sdiffstat for lgogdownloader-3.1 lgogdownloader-3.1 changelog | 8 ++++ patches/Fix-crash-in-Website-getGames.patch | 49 ++++++++++++++++++++++++++++ patches/series | 1 3 files changed, 58 insertions(+) diff -Nru lgogdownloader-3.1/debian/changelog lgogdownloader-3.1/debian/changelog --- lgogdownloader-3.1/debian/changelog 2017-01-16 18:35:28.000000000 +0000 +++ lgogdownloader-3.1/debian/changelog 2017-03-13 22:27:46.000000000 +0000 @@ -1,3 +1,11 @@ +lgogdownloader (3.1-2) UNRELEASED; urgency=medium + + * Team upload + * Backport patch from 3.2 fixing the ability to list games if a game + has {'updates': null} + + -- Simon McVittie <[email protected]> Mon, 13 Mar 2017 22:27:46 +0000 + lgogdownloader (3.1-1) unstable; urgency=medium * New upstream release. diff -Nru lgogdownloader-3.1/debian/patches/Fix-crash-in-Website-getGames.patch lgogdownloader-3.1/debian/patches/Fix-crash-in-Website-getGames.patch --- lgogdownloader-3.1/debian/patches/Fix-crash-in-Website-getGames.patch 1970-01-01 01:00:00.000000000 +0100 +++ lgogdownloader-3.1/debian/patches/Fix-crash-in-Website-getGames.patch 2017-03-13 22:27:46.000000000 +0000 @@ -0,0 +1,49 @@ +From: Sude <[email protected]> +Date: Fri, 20 Jan 2017 00:15:50 +0200 +Subject: Fix crash in Website::getGames + +JSON value for updates can be null in some cases. For example when user owns a dlc but not the base game. +This caused a crash due to std::stoi throwing std::invalid_argument exception + +Origin: upstream, 3.2, commit:22f47de4fcd8cd7ecc2a89fbb25f94efb1b3f743 +--- + src/website.cpp | 26 +++++++++++++++++++++++++- + 1 file changed, 25 insertions(+), 1 deletion(-) + +diff --git a/src/website.cpp b/src/website.cpp +index 0803432..8ca4c8c 100644 +--- a/src/website.cpp ++++ b/src/website.cpp +@@ -163,7 +163,31 @@ std::vector<gameItem> Website::getGames() + gameItem game; + game.name = product["slug"].asString(); + game.id = product["id"].isInt() ? std::to_string(product["id"].asInt()) : product["id"].asString(); +- game.updates = product["updates"].isInt() ? product["updates"].asInt() : std::stoi(product["updates"].asString()); ++ ++ if (product.isMember("updates")) ++ { ++ if (product["updates"].isNull()) ++ { ++ /* In some cases the value can be null. ++ * For example when user owns a dlc but not the base game ++ * https://github.com/Sude-/lgogdownloader/issues/101 ++ * Assume that there are no updates in this case */ ++ game.updates = 0; ++ } ++ else if (product["updates"].isInt()) ++ game.updates = product["updates"].asInt(); ++ else ++ { ++ try ++ { ++ game.updates = std::stoi(product["updates"].asString()); ++ } ++ catch (std::invalid_argument& e) ++ { ++ game.updates = 0; // Assume no updates ++ } ++ } ++ } + + unsigned int platform = 0; + if (product["worksOn"]["Windows"].asBool()) diff -Nru lgogdownloader-3.1/debian/patches/series lgogdownloader-3.1/debian/patches/series --- lgogdownloader-3.1/debian/patches/series 2016-05-09 22:28:40.000000000 +0100 +++ lgogdownloader-3.1/debian/patches/series 2017-03-13 22:27:46.000000000 +0000 @@ -1 +1,2 @@ +Fix-crash-in-Website-getGames.patch manpage-whatis.patch
--- End Message ---
--- Begin Message ---Source: lgogdownloader Source-Version: 3.1-2 We believe that the bug you reported is fixed in the latest version of lgogdownloader, which is due to be installed in the Debian FTP archive. A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to [email protected], and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Stephen Kitt <[email protected]> (supplier of updated lgogdownloader package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing [email protected]) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Format: 1.8 Date: Wed, 05 Apr 2017 19:27:13 +0200 Source: lgogdownloader Binary: lgogdownloader Architecture: source Version: 3.1-2 Distribution: unstable Urgency: medium Maintainer: Debian Games Team <[email protected]> Changed-By: Stephen Kitt <[email protected]> Description: lgogdownloader - downloader for GOG.com files Closes: 857691 Changes: lgogdownloader (3.1-2) unstable; urgency=medium . [ Simon McVittie ] * Team upload * Backport patch from 3.2 fixing the ability to list games if a game has {'updates': null} (Closes: #857691) Checksums-Sha1: a9689ed3c51575511cff4662890bde65fefd5a9f 2214 lgogdownloader_3.1-2.dsc 59bcf05f616e65d83fefb97f7a5f62dddb404b75 3936 lgogdownloader_3.1-2.debian.tar.xz d5b3639e97e5a96ab070d39609a88b5a56017f62 8116 lgogdownloader_3.1-2_source.buildinfo Checksums-Sha256: 063989c1f1e62702b78dca590cb4864d6efb0427dacc4df327cbe4a1ca1989cf 2214 lgogdownloader_3.1-2.dsc f409821ab56826226df17925d31ba291f38f50db8432362fa95cbb9e6ca30e88 3936 lgogdownloader_3.1-2.debian.tar.xz bdf81335da8c553bdc99c09a549aaaa5d23ac3f6e6c6198fbf8eb6f5bb0d14dc 8116 lgogdownloader_3.1-2_source.buildinfo Files: 1f4134989f29274cbc75a654e991057a 2214 web optional lgogdownloader_3.1-2.dsc 1947db9ea26ac56e9c5cca59735bcfd6 3936 web optional lgogdownloader_3.1-2.debian.tar.xz a7aa6cde3003444effe3ffd8e629108a 8116 web optional lgogdownloader_3.1-2_source.buildinfo -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEnPVX/hPLkMoq7x0ggNMC9Yhtg5wFAljlKQ0ACgkQgNMC9Yht g5yBGxAAjDfsnAidpcL8uZjwvX2Y6Fu0TerCXh8ZItYkWpKXSkVjqMXY4AO+YXFu kNpih6KvFFPkMYfeOjriv1M08QfUdcqSi0aLpEwXfITY7SCN2kBIgXSM9lFr152F W8m9TjKgLmw+PLkiL2UDu0FOMI30/2mM+sqJ1kQLZJj3ShJDH+YZH8U2LmKKf4tD Zs/ROI9jkRYNuL4QUjdnw1N4zATyGk68Ow2odWaUz+IoOHJJLNIn4xMQ/QyS+Uad k+AFAoOGkTncadoG+MPIba4GyUNHFd7wEtfgT6pTMk1ocZlw8HHhIOtCggSxk17X uRBqYFh7CsKF0Bhai5DY8W+s47OtCNMnyxMK165gBCUl2Mjgy9F5WpxqtylI+szw +bKz2oEOUaW4GrzNxlvRhgf7kc0Pdsi/zazEuLUDUYF4dojPKNOAtT2aoZd0dORF e9BlZtgxjvs5eFwSTz6hVtZLP/B10I5KLImmWY0ACb1LkpalIY+cH8DPJQyXjhOw SIPQZnRpgNNRdfS4Mces7R2vSe9L6PQ3yoFUqoJfSRVIPylJFRmM911bJJuVMp9k Zr0a65rjU6c+N3YXWCRcUAtfLxxVK4Zi8ITBSJBauxEUK70JfNcTCMxbqej6Hscz rSZXdxLI0KRrSEJeHKbDrGWKtjnXiF5u0jIvAMKtzNs9CHQl0z8= =SjVW -----END PGP SIGNATURE-----
--- End Message ---

