summaryrefslogtreecommitdiff
path: root/src/KingSystem/Resource/resUnit.cpp
diff options
context:
space:
mode:
authorLéo Lam <leo@leolam.fr>2020-09-27 16:11:56 +0200
committerLéo Lam <leo@leolam.fr>2020-10-04 02:00:38 +0200
commit12e6979b6c175d7b9d8b871cb50bbbe9b545a74e (patch)
tree23c778e41c0c96eeabaa5e60341ee2f127cfc59f /src/KingSystem/Resource/resUnit.cpp
parentf8db98617c3ccdac22276a2f0e7e9c033b4b62f2 (diff)
ksys/res: Implement more Cache functions
Diffstat (limited to 'src/KingSystem/Resource/resUnit.cpp')
-rw-r--r--src/KingSystem/Resource/resUnit.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/KingSystem/Resource/resUnit.cpp b/src/KingSystem/Resource/resUnit.cpp
index 8ddc4f34..1c2f0e1c 100644
--- a/src/KingSystem/Resource/resUnit.cpp
+++ b/src/KingSystem/Resource/resUnit.cpp
@@ -78,7 +78,13 @@ bool ResourceUnit::init(const ResourceUnit::InitArg& arg) {
mFlags.change(Flag::_2, arg.set_flag_2);
mFlags.change(Flag::_4, arg.set_flag_4);
+#ifdef MATCHING_HACK_NX_CLANG
+ mStatusFlags.change(StatusFlag::_20000,
+ arg.load_req_field_26 &&
+ !*static_cast<const volatile bool*>(&arg.load_req_field_28));
+#else
mStatusFlags.change(StatusFlag::_20000, arg.load_req_field_26 && !arg.load_req_field_28);
+#endif
mStatusFlags.change(StatusFlag::_40000, arg.load_req->_27);
mStatusFlags.change(StatusFlag::HasHeap, arg.heap != nullptr);
mStatusFlags.change(StatusFlag::_80000, arg.load_req_field_28);