Bob with respect, it has nothing to do with that, at least on my 996XT anyhow. I can also confirm that this is occurring in my files as well, no duplicates. I download from scanner, change e.g. lockout a bunch, save and upload, then download and it's all for not, please look into this as it's rather frustrating.
Update: So under Proscan, I save and upload to scanner, then download and lockouts don't hold for individual TGs, however as far as I can tell channels that are locked out remain as such so that's good there. Anyhow moving on, I close out Proscan, open up Freescan, download from scanner, make the necessary changes, re-locking out the TGs in question, upload back, then download and all are holding, hmm. Then close Freescan, start Proscan and download from scanner and as I'd expect, the TGs are still locked out but if I change anything in Proscan and upload, all of my locked out TGs are unlocked again.
Update2: Ok I think I know what's going on, if we open up whatever file, then download from scanner and btw Bob just curious here mind you, but why is it necessary to open up a database file in the first place in order to download from scanner? In Freescan this isn't necessary, where you can just download directly. Anyhow, back to Proscan, if we open, then download, then make changes and upload, this possible bug happens where locked out TGs don't hold. However if we download from scanner, make changes, save and rather than directly uploading following saving, just re-open that file you just saved and THEN upload, then download afterwards things are fine.