desura / Desurium

Free online games platform (juegos gratis), with an open source client. LGPL repo for Desura client. Potentially out of date. See https://github.com/desura/desura-app for newest (LGPL) client.
https://www.desura.com/es
GNU General Public License v3.0
270 stars 42 forks source link

MCF extraction breaks when the target path contains a broken symlink #222

Open ssokolow opened 12 years ago

ssokolow commented 12 years ago

In revision 3a317cf5201efb96469434b4f320971ae256c544, if ~/.desura/games/GAME is a symlink to ~/opt/desura/common/GAME and the target folder has been deleted or renamed, big problems will occur:

  1. It will fail when attempting to install the game again. (Displaying an MCF extraction failure dialog you can only OK)
  2. On OKing the dialog, it will then continue to attempt to extract individual files, not offering you a cancel button in the progress dialog.
  3. If you then identify the problem before the process finishes and delete the symlink part-way through the process, it will successfully unpack what remains of the game, potentially confusing users when it doesn't make any more mention of the failure beyond leaving status on "Not Ready".

Probably quite a rare situation, but definitely one that should at least fail in a less confusing manner. (The only reason I realized what was going on was because I'd happened to run ./install/run.sh in a terminal window where I could see stderr.

The unusual circumstances that lead me to this problem are as follows:

  1. [Described in Issue #221]
  2. I wanted to show someone the non-DLC title screen for Dungeons of Dredmor, renamed dungeons-of-dredmor to dungeons-of-dredmor.bak, and forgot about the symlink.
karolherbst commented 11 years ago

is this bug still valid?