From f4a01f3a5dc0d8fe2f4f6d804d790da91d1bc30c Mon Sep 17 00:00:00 2001 From: Jude Melton-Houghton Date: Mon, 26 Sep 2022 17:03:43 -0400 Subject: Avoid duplication of mod metadata in memory (#12562) Co-authored-by: sfan5 --- src/database/database-sqlite3.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/database/database-sqlite3.h') diff --git a/src/database/database-sqlite3.h b/src/database/database-sqlite3.h index 5e3d7c96c..566f6cebb 100644 --- a/src/database/database-sqlite3.h +++ b/src/database/database-sqlite3.h @@ -240,9 +240,13 @@ public: virtual ~ModMetadataDatabaseSQLite3(); virtual bool getModEntries(const std::string &modname, StringMap *storage); + virtual bool getModEntry(const std::string &modname, + const std::string &key, std::string *value); + virtual bool hasModEntry(const std::string &modname, const std::string &key); virtual bool setModEntry(const std::string &modname, const std::string &key, const std::string &value); virtual bool removeModEntry(const std::string &modname, const std::string &key); + virtual bool removeModEntries(const std::string &modname); virtual void listMods(std::vector *res); virtual void beginSave() { Database_SQLite3::beginSave(); } @@ -253,7 +257,10 @@ protected: virtual void initStatements(); private: + sqlite3_stmt *m_stmt_get_all = nullptr; sqlite3_stmt *m_stmt_get = nullptr; + sqlite3_stmt *m_stmt_has = nullptr; sqlite3_stmt *m_stmt_set = nullptr; sqlite3_stmt *m_stmt_remove = nullptr; + sqlite3_stmt *m_stmt_remove_all = nullptr; }; -- cgit v1.2.3