From 75b6051b7ae3aade1f06c8eb2bb915add4f317d1 Mon Sep 17 00:00:00 2001 From: Patric Stout Date: Mon, 28 Jun 2021 16:39:48 +0200 Subject: Change: move sensitive information to secrets.cfg and private information to private.cfg We often ask people for their openttd.cfg, which now includes their passwords, usernames, etc. It is easy for people to overlook this, unwillingly sharing information they shouldn't. By splitting this information over either private.cfg or secrets.cfg, we make it more obvious they shouldn't be sharing those files, and hint to what is inside them. --- src/ini_load.cpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'src/ini_load.cpp') diff --git a/src/ini_load.cpp b/src/ini_load.cpp index 308f822be..0663ef1e4 100644 --- a/src/ini_load.cpp +++ b/src/ini_load.cpp @@ -100,6 +100,29 @@ IniItem *IniGroup::GetItem(const std::string &name, bool create) return new IniItem(this, name); } +/** + * Remove the item with the given name. + * @param name Name of the item to remove. + */ +void IniGroup::RemoveItem(const std::string &name) +{ + IniItem **prev = &this->item; + + for (IniItem *item = this->item; item != nullptr; prev = &item->next, item = item->next) { + if (item->name != name) continue; + + *prev = item->next; + if (this->last_item == &this->item) { + this->last_item = &item->next; + } + + item->next = nullptr; + delete item; + + return; + } +} + /** * Clear all items in the group */ -- cgit v1.2.3-54-g00ecf