itchanddino: I applied the patch to the git version, and I still got the same error. Here's my output from backtrace:
#0 0x00007ffff59afcc9 in raise () from /lib/x86_64-linux-gnu/libc.so.6
#1 0x00007ffff59b30d8 in abort () from /lib/x86_64-linux-gnu/libc.so.6
#2 0x00007ffff62ba6b5 in __gnu_cxx::__verbose_terminate_handler() ()
from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3 0x00007ffff62b8836 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#4 0x00007ffff62b8863 in std::terminate() ()
from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#5 0x00007ffff62b8aa2 in __cxa_throw ()
from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#6 0x00007ffff630a537 in std::__throw_length_error(char const*) ()
from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#7 0x00007ffff6315d2b in std::string::replace(unsigned long, unsigned long, char const*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#8 0x000000000041d200 in std::string::assign<__gnu_cxx::__normal_iterator<char*, std::string> > (this=0x7fffffffc600, __first=..., __last=...)
at /usr/include/c++/4.8/bits/basic_string.h:1158
#9 0x000000000044a570 in Downloader::getExtrasFromHTML (this=0x7fffffffda40,
html=..., gamename=..., gameid=...) at src/downloader.cpp:2326
#10 0x000000000043a772 in Downloader::getGameDetails (this=0x7fffffffda40)
at src/downloader.cpp:288
#11 0x000000000043ec0d in Downloader::download (this=0x7fffffffda40)
at src/downloader.cpp:782
#12 0x00000000004177a6 in main (argc=4, argv=0x7fffffffdf88) at main.cpp:521
Thank you for the backtrace.
Apparently the error isn't in the obvious place that I expected it to be.
It should give more info on what goes wrong with the string assignment and works around the issue by setting the file name to "fileid.zip"
Running release build with this patch should give enough info.