I've ran into an issue when updating certain games, different from #15. So far i've encountered this when updating BattleTech, Tower of Time and SOMA.
mike@bigrig:~/GOG Games/BATTLETECH$ RUST_BACKTRACE=1 wyvern -vvvv update
INFO 2019-03-19T19:17:27Z: wyvern: Path not specified. Using current dir
INFO 2019-03-19T19:17:27Z: wyvern: Updating game
INFO 2019-03-19T19:17:27Z: wyvern::games::update: Reading in gameinfo file
INFO 2019-03-19T19:17:27Z: wyvern::games::update: Parsing gameinfo
INFO 2019-03-19T19:17:27Z: wyvern::config: Getting name from gameinfo
INFO 2019-03-19T19:17:27Z: wyvern::config: Getting version string from gameinfo
INFO 2019-03-19T19:17:27Z: wyvern::games::update: Searching GOG products for BATTLETECH
INFO 2019-03-19T19:17:28Z: wyvern::games::update: Fetching the GameDetails for first result of search
INFO 2019-03-19T19:17:29Z: wyvern::games::update: Getting game's linux downloads
INFO 2019-03-19T19:17:29Z: wyvern::games::update: Fetching installer data.
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Custom { kind: UnexpectedEof, error: StringError("failed to fill whole buffer") }', src/libcore/result.rs:997:5
stack backtrace:
0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
at src/libstd/sys/unix/backtrace/tracing/gcc_s.rs:39
1: std::sys_common::backtrace::_print
at src/libstd/sys_common/backtrace.rs:70
2: std::panicking::default_hook::{{closure}}
at src/libstd/sys_common/backtrace.rs:58
at src/libstd/panicking.rs:200
3: std::panicking::default_hook
at src/libstd/panicking.rs:215
4: std::panicking::rust_panic_with_hook
at src/libstd/panicking.rs:478
5: std::panicking::continue_panic_fmt
at src/libstd/panicking.rs:385
6: rust_begin_unwind
at src/libstd/panicking.rs:312
7: core::panicking::panic_fmt
at src/libcore/panicking.rs:85
8: core::result::unwrap_failed
at /rustc/2aa4c46cfdd726e97360c2734835aa3515e8c858/src/libcore/macros.rs:16
9: <core::result::Result<T, E>>::unwrap
at /rustc/2aa4c46cfdd726e97360c2734835aa3515e8c858/src/libcore/result.rs:798
10: gog::extract::CDEntry::from_reader
at /home/mike/.cargo/git/checkouts/gog-rs-3c06ac510bb5cd16/0d2a926/src/extract.rs:175
11: gog::Gog::extract_data
at /home/mike/.cargo/git/checkouts/gog-rs-3c06ac510bb5cd16/0d2a926/src/lib.rs:752
12: wyvern::games::update::update
at src/games.rs:38
13: wyvern::parse_args
at src/main.rs:397
14: wyvern::main
at src/main.rs:89
15: std::rt::lang_start::{{closure}}
at /rustc/2aa4c46cfdd726e97360c2734835aa3515e8c858/src/libstd/rt.rs:64
16: std::panicking::try::do_call
at src/libstd/rt.rs:49
at src/libstd/panicking.rs:297
17: __rust_maybe_catch_panic
at src/libpanic_unwind/lib.rs:92
18: std::rt::lang_start_internal
at src/libstd/panicking.rs:276
at src/libstd/panic.rs:388
at src/libstd/rt.rs:48
19: std::rt::lang_start
at /rustc/2aa4c46cfdd726e97360c2734835aa3515e8c858/src/libstd/rt.rs:64
20: main
21: __libc_start_main
22: _start
Tested this out on my machine and got the same error. It looks like these installers are somehow different from the standard mojosetup installers. I'll investigate more later. Thanks for the report!
I've ran into an issue when updating certain games, different from #15. So far i've encountered this when updating BattleTech, Tower of Time and SOMA.