Skip to content
  • Rob Swindell's avatar
    a66f9c6e
    iniRemoveKey() will now remove all keys matching teh passed key name · a66f9c6e
    Rob Swindell authored
    There shouldn't be multiple keys with the same name in a section, but if there
    were, a call to iniRemoveKey() would would only remove the *first* key with
    that name. So loop until all the keys with the matching name are removed and
    return true only if they were all successfully removed from the specified
    section.
    
    This resolved an observed issue with sbbsctrl-windows displaying an error
    dialog "Failure writing initialization file: path/to/sbbs.ini" when there
    were multiple *Sound keys in a section and the first such key value matched
    that same key in the [Global] section: in this case, we try to remove the
    duplicate key/value from the non-global section, but that removal was
    considered a failure (iniKeyExists returned TRUE) because we only removed
    the *first* key with that name (assuming there would be only one). So we
    would abort the save entirely and display the error dialog.
    a66f9c6e
    iniRemoveKey() will now remove all keys matching teh passed key name
    Rob Swindell authored
    There shouldn't be multiple keys with the same name in a section, but if there
    were, a call to iniRemoveKey() would would only remove the *first* key with
    that name. So loop until all the keys with the matching name are removed and
    return true only if they were all successfully removed from the specified
    section.
    
    This resolved an observed issue with sbbsctrl-windows displaying an error
    dialog "Failure writing initialization file: path/to/sbbs.ini" when there
    were multiple *Sound keys in a section and the first such key value matched
    that same key in the [Global] section: in this case, we try to remove the
    duplicate key/value from the non-global section, but that removal was
    considered a failure (iniKeyExists returned TRUE) because we only removed
    the *first* key with that name (assuming there would be only one). So we
    would abort the save entirely and display the error dialog.
Loading