diff options
author | flow <flowlnlnln@gmail.com> | 2022-06-11 17:19:34 -0300 |
---|---|---|
committer | flow <flowlnlnln@gmail.com> | 2022-07-17 11:33:43 -0300 |
commit | 91a5c4bdcbd3ae18139b85899f051fb3d9cbd1fc (patch) | |
tree | 2845daddf22f1f17a56ace9b4945c7a91d0c477b /launcher/minecraft/mod/Mod.cpp | |
parent | 9a07ede615869e3df87c41a689ebbba16a433849 (diff) | |
download | PrismLauncher-91a5c4bdcbd3ae18139b85899f051fb3d9cbd1fc.tar.gz PrismLauncher-91a5c4bdcbd3ae18139b85899f051fb3d9cbd1fc.tar.bz2 PrismLauncher-91a5c4bdcbd3ae18139b85899f051fb3d9cbd1fc.zip |
feat: add metadata get/delete via mod id
This is, in many cases, more reliable than name comparisons, so it's
useful specially in cases where a mod changes name between versions
Signed-off-by: flow <flowlnlnln@gmail.com>
Diffstat (limited to 'launcher/minecraft/mod/Mod.cpp')
-rw-r--r-- | launcher/minecraft/mod/Mod.cpp | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/launcher/minecraft/mod/Mod.cpp b/launcher/minecraft/mod/Mod.cpp index 81bb902f..bba7b342 100644 --- a/launcher/minecraft/mod/Mod.cpp +++ b/launcher/minecraft/mod/Mod.cpp @@ -164,12 +164,8 @@ void Mod::setMetadata(Metadata::ModStruct* metadata) auto Mod::destroy(QDir& index_dir, bool preserve_metadata) -> bool { - auto n = name(); - // FIXME: This can fail to remove the metadata if the - // "ModMetadataDisabled" setting is on, since there could - // be a name mismatch! - if(!preserve_metadata) - Metadata::remove(index_dir, n); + if (!preserve_metadata && status() != ModStatus::NoMetadata) + Metadata::remove(index_dir, metadata()->mod_id()); m_type = MOD_UNKNOWN; return FS::deletePath(m_file.filePath()); |