eivindveg / HotSUploader

JavaFX-based Replay Uploader for Heroes of the Storm
Apache License 2.0
185 stars 36 forks source link

Windows 7 does not detect replays in non-default "Documents" directory #136

Closed Poobslag closed 8 years ago

Poobslag commented 8 years ago

My "Documents" folder is not located on my C drive -- it's located in "D:\documents". This means my HotS replay files are stored in locations like "D:\documents\Heroes of the Storm\Accounts\Replays\Multiplayer\Battlefield of Eternity (4).StormReplay". My computer's set up this way because my C drive is an SSD, and my D drive is a much larger HDD.

HotSUploader does not detect any replays. Furthermore, on startup it creates a new "C:\Users\Documents" directory, which contains a single file, "C:\Users\Documents\HotSReplayUploader\database.mv.db".

I would expect this file would instead be stored in my "Documents" directory on the D: drive, and I would expect it would detect all of the replays I have stored there.

eivindveg commented 8 years ago

Are you able to provide the verbatim output of the following command?

reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v personal

If it displays any personal information and you feel you need to censor it, please make sure that the replaced values conform to the same pattern, ie:

This is an issue that is definitely fixed in most cases of a moved documents folder. However, the Windows 1252 encoding does not translate well into any other character set and can cause a lot of breakages.

Note to other developers: In the case of a coding error, the offending code is located at https://github.com/eivindveg/HotSUploader/blob/develop/src/main/java/ninja/eivind/hotsreplayuploader/services/platform/WindowsService.java#L102-L137, specifically the fallback at line 131

Poobslag commented 8 years ago

Sure, there was no personal information displayed.

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders personal REG_SZ d:\documents

Also I forgot -- I'm running Windows 8 not Windows 7. My mistake.

eivindveg commented 8 years ago

Stupid stupid stupid stupid! That had to bite me in the behind eventually. -.-

The matcher doesn't allow lower case drive labels. I don't think it makes a difference at all for Windows, but in case I'm wrong, I won't recommend the obvious workaround. We'll get to work on issuing a fix. I'll let you know when we're ready to release.

eivindveg commented 8 years ago

The issue has been fixed, and we'll be rolling out a release in the coming days.

Poobslag commented 8 years ago

Thanks that's great to hear!

eivindveg commented 8 years ago

Fix for this will be released in 2.1.2, which is currently in note drafting.