Zandronum Chat @ irc.zandronum.com
#zandronum
Get the latest version: 3.0
Source Code

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0003262Doomseeker[All Projects] Bugpublic2017-09-12 03:332017-10-05 02:44
ReporterWubTheCaptain 
Assigned To 
PriorityhighSeveritytweakReproducibilityalways
StatusacknowledgedResolutionopen 
Platformx86_64OSDebian GNU/LinuxOS Versionbuster/sid
Product Version1.1 
Target VersionFixed in Version 
Summary0003262: Allow $HOME and/or ~/ in file paths
DescriptionDoomseeker currently requires the file path to be absolute. ~/ and $HOME are not recognized as valid alternatives to /home/<username>, instead /home/<username> (e.g. /home/wub in my case) is written to each configuration. In example for IWAD paths, ~/ and $HOME fail with "Iwad Path error".

This could possibly be extended to other user-configurable file paths, such as server executable path.
Steps To Reproduce

  1. Have a defined home folder for an Unix-like user. Mine is /home/wub. This is assumed to be the same as ~/ and $HOME.

  2. Have an IWAD of your choice in your preferred location somewhere in your home folder. Mine is /home/wub/.local/share/games/doom/freedoom.wad.

  3. Open the "Create Game" dialog in Doomseeker. If necessary, configure the minimum necessary to start a server.

  4. Attempt to start a server with IWAD path at preferred location: "/home/wub/.local/share/games/doom/freedoom.wad". This should work.

  5. Attempt to start a server with IWAD path at preferred location: "~/.local/share/games/doom/freedoom.wad". This should work, but fails to an Iwad Path error.

  6. Attempt to start a server with IWAD path at preferred location: "$HOME/.local/share/games/doom/freedoom.wad". This should work, but fails to an Iwad Path error.

Additional InformationChanging the path of my home folder (as a consequence of renaming my username on the local system) means all my previous configurations with IWAD paths in the "Create Game" window and various IWAD/PWAD paths subsequently need fixing to the new location.

If I recall correctly, at worst this means the "Create Game" window fails to list the additional WADs and they will be missing. The paths still exist in the .ini configuration and need to be manually edited to the new paths in a text editor.

In reverse: If I keep my old home location, no change is required if the user wants to hard-type their old path.
Attached Fileslog file icon dpkg.log [^] (3,173 bytes) 2017-09-12 03:37

- Relationships
child of 0003279acknowledged List of Debian issues (misc/non-policy) 

-  Notes
User avatar (0018287)
WubTheCaptain (developer)
2017-09-12 03:37
edited on: 2017-09-12 03:38

Tested with Qt5 5.9.1 for original suggestion.

User avatar (0018355)
WubTheCaptain (developer)
2017-09-21 10:40
edited on: 2017-09-21 10:43

In addition to what's described in the steps to reproduce, here's some test case guidance for implementers (consider ~/ is /home/user1/):


  • ~user2/something.wad should fetch from /home/user2/something.wad, not /home/user1/user2/something.wad or /home/user1user2/something.wad.

  • ~/foo/~bar/something.wad should fetch from "/home/user1/foo/~bar/something.wad" (second tilde is escaped), not /home/bar/something.wad.

  • On Windows, for compatibility reasons a path beginning with ~ may optionally map to %HOMEDIR% (e.g. C:\Documents and Settings\user1 or C:\Users\user1 in example). Or, %HOMEDIR% could be supported too on Windows (if not already so).



QDir::homePath() may be useful.

User avatar (0018398)
WubTheCaptain (developer)
2017-09-27 19:18

After some consideration, I think this is an upstream issue with QFileDialog in Qt which requires no change in Doomseeker. The change isn't as trivial as I initially thought it would be. It'd be nice to have in Qt for sure.

Should we close this ticket?
User avatar (0018399)
WubTheCaptain (developer)
2017-09-27 19:34

Nevermind. This issue was fixed in Qt 4.8 six years ago:https://bugreports.qt.io/browse/QTBUG-20571 [^]

Seems like something about Doomseeker's use of QFileInfo is wrong, then. QFileInfo in Qt 5 definitely supports tilde.
User avatar (0018400)
Zalewa (developer)
2017-09-27 20:01

I'd still like to have a look around. Maybe I'll find out we're doing something non-standard with paths and it doesn't work everywhere. I'll also think if I want to support env vars resolution in paths.

Issue Community Support
Only registered users can voice their support. Click here to register, or here to log in.
Supporters: Zalewa
Opponents: No one explicitly opposes this issue yet.

- Issue History
Date Modified Username Field Change
2017-09-12 03:33 WubTheCaptain New Issue
2017-09-12 03:37 WubTheCaptain Note Added: 0018287
2017-09-12 03:37 WubTheCaptain File Added: dpkg.log
2017-09-12 03:38 WubTheCaptain Note Edited: 0018287 View Revisions
2017-09-21 10:40 WubTheCaptain Note Added: 0018355
2017-09-21 10:43 WubTheCaptain Note Edited: 0018355 View Revisions
2017-09-27 18:30 Zalewa Relationship added child of 0003246
2017-09-27 19:18 WubTheCaptain Note Added: 0018398
2017-09-27 19:34 WubTheCaptain Note Added: 0018399
2017-09-27 20:01 Zalewa Note Added: 0018400
2017-09-27 21:53 WubTheCaptain Relationship added child of 0003279
2017-09-27 21:54 WubTheCaptain Relationship deleted child of 0003246
2017-10-04 19:27 WubTheCaptain Category Suggestion => Bug
2017-10-05 02:44 WubTheCaptain Status new => acknowledged






Questions or other issues? Contact Us.

Links


Copyright © 2000 - 2017 MantisBT Team
Powered by Mantis Bugtracker