Change exception and store original value in dictionary.
Make sure dictionary is locked wherever a value is being set.
Make sure dictionary is locked wherever a value is being set.
Merge branch 'master' into Portable