Hi,
Attached to https://bugs.freepascal.org/view.php?id=35022 I have posted 2 patches for bugs with TRegIniFile.
Patch registry.currentpath.diff (3,903 bytes) will fix the issue that CurrentPath (TRegistry) is not updated correctly.
Patch reginifile.opensection.diff (831 bytes) fixes a bug in TRegIniFile.OpenSection.
It fixes writing to the wrong key (which I would qualify as a major issue). This patch depends on the first patch.
Fixing TRegIniFile's XML implementation is not feasible. The XML implementation has been broke since from at least revision 22654 (Oct 15 2012).
This revision introduces TRegIniFile.OpenSection, which even at that time always returns False in the XML implementation . TRegIniFile has been declared deprecated for non-windows platforms, so there is no need to even try to fix that.
The fact no bugreports about this bug in the XML implementation have been filed proofs that nobody on a non-Windows platform uses that code anyway.
With the upcoming 3.2 it would be a shame not to have this fix merged IMO.
