Healix/Gw2Launcher

Import accounts: randomly loses password

AndrewBourgeois opened this issue · 8 comments

When importing accounts, some passwords won't be imported.
Out of 14 accounts in the XML file, 2 passwords weren't imported.

This can also be seen in the XML when exporting the accounts after importing them:
<password></password>

Build: 7254.

Were the passwords exported encrypted or in plain text?

Were the passwords for those accounts working, for example with automatic logins? A blank password when exporting means it couldn't be decrypted. If you copied Gw2Launcher's settings from another computer for example, the passwords would be invalid.

I added 1 account manually and exported it with passwords in plain text.
I then copypasted the <account> element it to add my other accounts and I then imported that file. 2/14 passwords weren't imported.

So the original (and only) entry was working and then 12/14 were working after import.

P.S.: the passwords only contain alphanumeric characters.

If the only one that imported was one that was exported and all the others were manually changed, I would guess it wasn't formatted correctly. The first account is shown as a sample when importing, so you can confirm if it's getting the password without actually importing it.

The basic format is:

<accounts>
<account>
  <name>Account 1</name>
  <password>Password1</password>
</account>
<account>
  <name>Account 2</name>
  <password>Password2</password>
</account>
</accounts>

Try replacing the password with one of your passwords that wouldn't import and confirm it.

12/14 passwords were correctly imported. So not just the one that was exported.
And I checked the XML again: the <password> tag for the 2 accounts that didn't have a password properly imported is correct.
I fixed it by exporting again and then manually updating the password for the accounts with an empty <password></password>.
I'm adding more accounts this way. I'll let you know if it happens again when I'm done!

I had a few extra cases of missing passwords after importing accounts (with plain text passwords in the XML file).

It turns out that I can set the password for these accounts in the app but that this will not persist after a restart of the app. So the account can auto login until I restart it.

I'll try manually readding these accounts after work to see if the accounts are fine then.

Healix commented

Try the beta version. I found a problem that would cause it to fail to decrypt a password. It basically occurred when the checksum for the password was 0, causing it to be treated as a corrupted password. 2 identical passwords can be different when encrypted, so it could happen to any password.

This appears to fix the issue. I don't even need to reimport the accounts!

Are there release notes somewhere for the beta versions?

Thank you.

Healix commented

Are there release notes somewhere for the beta versions?

There's comments on the commits; there's nothing notable. The "beta" version isn't really a beta version, it's more of a "testing" version I use for cases like this (I don't actively update it).