This reverts commit 8b6d936385f011b48958b14b4150dda24a811419.
Fixes a number of isses with ConfigFile, and prevents the hotkey thread
from potentially corrupting the config file.
This reverts commit 6a6b0106d17d0ab147c20ae0e919cf1a2d657fe7.
Fixes a number of isses with ConfigFile, and prevents the hotkey thread
from potentially corrupting the config file.
Because ConfigFile exposed the entire class to plugins, anything that
changes the class breaks ABI, and the last ConfigFile commit did just
that. So this adds an additional hack to allow additional internal
variables without breaking ABI. It changes the lpFileData in to a
variable that creates another internal variable structure as a rather
terrible hack for adding new internal variables.
So, what's the lesson? Never expose anything you don't need to expose
unless you need maximum performance and its structure size will never
change.