DraqueT / PolyGlot

PolyGlot is a conlang construction toolkit.
MIT License
397 stars 45 forks source link

still getting corrupt files -- more details #77

Closed opulentSandwich closed 10 years ago

opulentSandwich commented 10 years ago

After upgrading to polyglot 8.1.1, I'm still able to corrupt a file by saving on quit, and I think I figured out why -- it has IPA letters in the pronunciation guide.

When saving on other OS' (I tried xubuntu and windows 7), there's no problem, and was able to save and exit from windows 8.1 after the update without corrupting the file, but I noticed my IPA characters had turned into ??'s.

After replacing one of them with the proper IPA unicode character, I saved and closed and tried to reopen, and it's giving me that same error about 'invalid bye 2 of 4-byte UTF8 sequence'.

To test, I made a brand new file with gibberish in it, saved and reopened without issue. Opened it up and added one letter to the pronunciation guide with an ð as the pronunciation, saved and reopened -- it's giving me the same error message as my main dictionary.

DraqueT commented 10 years ago

Yikes, this bug is proving to be pretty nightmarish... It's only happening in Windows 8 to your knowledge, though? (I don't have access to a W8 machine currently, but I'll root around until I can find one if that's the case).

opulentSandwich commented 10 years ago

I'll double check tonight once I can get on my Windows 7 laptop, but I believe it's only in 8.

DraqueT commented 10 years ago

Awesome! If this is down to saving problems when using unicode in Windows 8 only... it might be that Windows 8 is somehow forcing UTF 16 into the string. Gotta do some research... please let me know when you do the test, though! I'll send you a preview copy of the next version so you can check out any modifications I make on W8. ^^

opulentSandwich commented 10 years ago

I verified that this does NOT happen on windows 7 -- however, it does strip the IPA from the file in windows 7, leaving ?'s behind. But at least I can open it afterwards!

DraqueT commented 10 years ago

Looking into the permissions thing now... I'm finally on my W7 machine again, and I've reproduced the error. I'm hoping to pick up a W8 virtual tomorrow to do more testing on.

DraqueT commented 10 years ago

Ok. I have tested this one in Windows 7, Windows XP, and Mac OSX. It seems to work correctly in all of them, and in W7, it saved the ð correctly. Check it out at:

https://dl.dropboxusercontent.com/u/2750499/PolyGlot/PolyGLot%200.8.1.2.zip

If this works in W7 and W8 for you, I need to remember to offer up something to the gods of computing...

DraqueT commented 10 years ago

Ok... Forced UTF8 on the data string and the output stream, tested with ð character for both save and load in OSX, WXP, W7, and W8. All clear on my end. I'm calling this one a release, as it prevents people from corrupting their existing saves, if nothing else.

opulentSandwich commented 10 years ago

Sorry for the delay in response! I tried out the new release on W7 and 8, and it's definitely behaving now :D but you knew that already.

DraqueT commented 10 years ago

No worries on the response time, you were a life saver in terms of helping me track this!