title: Delphi writing duplicate entries to TIniFile
body: <p>Here's a curious phenomenon. I have a Delphi 10.3 application that has started writing duplicate entries to a <code>TIniFile</code>.</p>
  <p>Here's the code:</p>
  <pre class="lang-pascal prettyprint-override"><code>with TIniFile.Create(UserDatFileName) do
  try
    WriteInteger(SFormName, 'Top', AForm.Top);
    WriteInteger(SFormName, 'Left', AForm.Left);
    WriteInteger(SFormName, 'Height', AForm.Height);
    WriteInteger(SFormName, 'Width', AForm.Width);
    WriteString(SFormName, 'WindowState', SWindowState);
  finally
    Free;
  end;
  </code></pre>
  <p>This has worked fine for years. Now, all of a sudden, I'm getting output like this:</p>
  <pre class="lang-none prettyprint-override"><code>[fMainForm]
  Top=0
  Left=0
  Height=556
  Width=671
  WindowState=wsMaximized
  pnlNavigation.Width=165
  TreeListcxTreeListModule.Width=161
  Top=0
  Left=0
  Height=556
  Width=671
  WindowState=wsMaximized
  pnlNavigation.Width=165
  TreeListcxTreeListModule.Width=161
  Top=0
  Left=0
  Height=556
  Width=671
  WindowState=wsMaximized
  pnlNavigation.Width=165
  TreeListcxTreeListModule.Width=161
  ... etcetera etcetera
  </code></pre>
  <p>Any suggestions about why this might be happening? I thought <code>TIniFile</code> value pairs were supposed to be unique within each section?</p>