flow
29f7ea752f
refactor: make shared_qobject_ptr ctor explicit
...
This turns issues like creating two shared ptrs from a single raw ptr
from popping up at runtime, instead making them a compile error.
Signed-off-by: flow <flowlnlnln@gmail.com>
2023-01-25 16:57:51 -03:00
flow
c9eb584ac8
fix: prevent deletes by shared pointer accidental creation
...
This fixes the launcher crashing when opening the game :iea:
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-16 20:12:30 -03:00
flow
10493bd44a
fix: move newly allocated resources to the main thread
...
This avoids them getting deleted when the worker thread exits, due to
thread affinity on the created thread.
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-16 20:12:30 -03:00
flow
9e35230467
fix: memory leak when getting mods from the mods folder
...
friendly reminder to always delete your news.
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-16 20:12:30 -03:00
flow
42c81395b3
fix: race condition on ResourceFolderModel tests
...
This (hopefully) fixes the race contiditions that sometimes got
triggered in tests.
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-09-03 13:37:22 -03:00
flow
e7cf9932a9
refactor: simplify Mod structure
...
No need to keep track of pointers left and right. A single one already
gives enough headaches!
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-20 10:48:51 -03:00
flow
92aa24ae34
fix: don't give shared pointer to obj. external to the model
...
It causes some weird problems and adds refcounting overhead.
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-20 10:48:00 -03:00
flow
ec62d8e973
refactor: move general code from mod model to its own model
...
This aims to continue decoupling other types of resources (e.g. resource
packs, shader packs, etc) from mods, so that we don't have to
continuously watch our backs for changes to one of them affecting the
others.
To do so, this creates a more general list model for resources, based on
the mods one, that allows you to extend it with functionality for other
resources.
I had to do some template and preprocessor stuff to get around the
QObject limitation of not allowing templated classes, so that's sadge :c
On the other hand, I tried cleaning up most general-purpose code in the
mod model, and added some documentation, because it looks nice :D
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-20 10:45:01 -03:00
flow
2f5e55bea0
fix: only remove orphaned metadata on first opening
...
This avoids deleting the metadata while one is updating their mods.
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-11 13:11:56 -03:00
flow
31ba1de53b
fix: remove orphaned metadata to avoid problems with auto-updating insts
...
Just as my master has taught me. 🔫
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-08-02 16:15:39 -03:00
flow
54b335711a
fix: raw-pointers and leaks in ModFolderLoadTask
...
Co-authored-by: timoreo <contact@timoreo.fr>
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:56:23 -03:00
flow
c4316e81e6
change: make Mod a QObject used as a pointer
...
Prevents problems when copying it around!
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:44 -03:00
flow
fd6755c93f
change: mod metadata improvements
...
- Use slug instead of name
- Keep temporary status before having local details
Signed-off-by: flow <flowlnlnln@gmail.com>
2022-07-17 11:33:43 -03:00
Sefa Eyeoglu
349fc4143d
Merge pull request #714 from Scrumplex/fix-tests
...
Fix mod metadata tests
2022-06-13 23:10:35 +02:00
flow
4448418b63
fix: segfault when the same mod is present enabled and disabled at once
...
This maintains the previous behaviour
2022-06-12 09:44:03 -03:00
flow
9f1f37e780
fix: correctly handle disabled mods with metadata
...
im stupid
2022-06-12 09:25:25 -03:00
Sefa Eyeoglu
a4ef0940ed
chore: add license headers
2022-06-12 13:50:58 +02:00
Sefa Eyeoglu
8856c8cd62
refactor(test): fix loading mod metadata setting
2022-06-12 13:33:17 +02:00
flow
2fc1b99911
chore: add license headers
...
Prevents a massive inload of Scrumplex ditto's :)
I didn't add it to every file modified in this PR because the other
changes are pretty minor, and would explode the diff of the PR. I hope
that's not a problem O_O
2022-05-23 14:58:14 -03:00
flow
e17b6804a7
fix: implement PR suggestions
...
Some stylistic changes, and get hashes from the mod providers when
building the metadata.
2022-05-23 14:43:09 -03:00
flow
96e36f0604
refactor: make mod metadata presence (or lack of) easier to find out
2022-05-23 14:43:09 -03:00
flow
d7f6b36990
test+fix: add basic tests and fix issues with it
2022-05-23 14:42:28 -03:00
flow
4439666e67
feat: allow disabling mod metadata usage
2022-05-23 14:42:28 -03:00
flow
fab4a7a602
refactor: abstract metadata handling and clarify names
2022-05-23 14:42:28 -03:00
flow
e9fb566c07
refactor: remove unused mod info and organize some stuff
2022-05-23 14:42:27 -03:00
flow
5a34e8fd7c
refactor: move mod tasks to their own subfolder
...
Makes the launcher/minecraft/mod/ folder a little more organized.
2022-05-23 14:42:27 -03:00