kevin macaulayvacher
4897f8726b
- Separates FFrame::ReadObject and FFrame::ReadProperty to rely on a new method, FFrame::ReadPointer(), which returns a bare ScriptPointerType.
...
- Changed codepaths reading FProperty objects using ReadObject() to now use ReadPropertyUnchecked(), since FProperty is not a child of UObject (ReadObject was also an unchecked implementation so validation has been lost).
These changes allow ReadObject to return a UObject fetched from a constructed TObjectPtr<UObject> which enables UObject access tracking. This corrects the previous implementation of ReadProperty which would return an FProperty from a temporarily constructed TObjectPtr<UObject>. This had the effect of running TObjectPtr tracking handlers (if any are registered) on the FProperty object which is not actually a UObject type. Using the intermediate TObjectPtr<UObject> in a handler could corrupt the underlying FProperty data as many codepaths in TObjectPtr lazily initialize UObject member variables upon calling UObject methods.
#jira UE-204533
#rb Francis.Hurteau, Robert.Manuszewski
[CL 30924162 by kevin macaulayvacher in ue5-main branch]
2024-01-26 10:27:20 -05:00
..
2024-01-17 11:51:40 -05:00
2023-12-14 22:26:25 -05:00
2024-01-25 14:09:12 -05:00
2024-01-25 14:09:12 -05:00
2024-01-25 11:24:13 -05:00
2024-01-19 16:41:35 -05:00
2024-01-25 09:58:44 -05:00
2024-01-19 16:41:35 -05:00
2024-01-25 14:09:12 -05:00
2024-01-25 14:09:12 -05:00
2024-01-23 17:57:52 -05:00
2024-01-10 16:09:03 -05:00
2023-12-14 18:48:05 -05:00
2024-01-19 16:41:35 -05:00
2023-12-08 11:50:21 -05:00
2024-01-19 16:41:35 -05:00
2024-01-19 16:41:35 -05:00
2024-01-22 16:42:09 -05:00
2023-12-07 17:41:15 -05:00
2024-01-18 12:22:38 -05:00
2024-01-22 01:42:51 -05:00
2024-01-19 16:41:35 -05:00
2024-01-19 16:41:35 -05:00
2024-01-12 10:45:33 -05:00
2024-01-19 16:41:35 -05:00
2023-12-21 12:56:11 -05:00
2024-01-26 09:34:10 -05:00
2024-01-26 10:27:20 -05:00
2024-01-25 03:54:34 -05:00
2024-01-19 16:41:35 -05:00
2024-01-25 14:09:12 -05:00
2024-01-26 09:34:10 -05:00
2024-01-26 08:18:34 -05:00
2023-11-28 11:26:43 -05:00
2024-01-12 10:47:04 -05:00
2024-01-19 19:41:56 -05:00
2024-01-19 16:41:35 -05:00
2024-01-25 14:09:12 -05:00
2024-01-23 15:07:05 -05:00
2024-01-19 16:41:35 -05:00
2024-01-25 14:09:12 -05:00
2024-01-19 16:41:35 -05:00
2024-01-15 18:19:35 -05:00
2024-01-17 01:34:02 -05:00
2024-01-19 16:41:35 -05:00
2024-01-19 16:41:35 -05:00
2024-01-12 12:19:29 -05:00
2024-01-19 16:41:35 -05:00
2024-01-19 16:41:35 -05:00
2024-01-22 13:48:03 -05:00
2024-01-17 11:51:40 -05:00
2023-12-19 14:06:55 -05:00
2023-12-13 07:47:48 -05:00
2024-01-23 13:58:04 -05:00
2024-01-19 16:41:35 -05:00
2024-01-25 14:00:20 -05:00
2024-01-11 17:33:06 -05:00
2024-01-25 17:28:51 -05:00
2023-12-07 13:59:38 -05:00
2023-12-20 18:33:12 -05:00
2024-01-24 19:18:54 -05:00
2024-01-19 16:41:35 -05:00
2024-01-19 16:41:35 -05:00
2024-01-19 16:41:35 -05:00
2024-01-24 17:36:37 -05:00
2024-01-19 16:41:35 -05:00
2024-01-23 16:11:41 -05:00
2024-01-19 16:41:35 -05:00
2024-01-25 14:09:12 -05:00
2023-11-29 14:14:09 -05:00
2024-01-26 08:18:34 -05:00
2024-01-19 19:41:56 -05:00
2024-01-19 16:41:35 -05:00
2024-01-25 14:09:12 -05:00
2024-01-26 10:05:21 -05:00
2024-01-11 17:33:06 -05:00
2023-12-11 13:55:22 -05:00
2024-01-25 14:09:12 -05:00
2024-01-25 15:33:21 -05:00
2024-01-10 15:23:17 -05:00
2024-01-25 14:09:12 -05:00
2024-01-17 11:51:40 -05:00
2023-12-08 21:45:21 -05:00
2024-01-19 16:41:35 -05:00
2024-01-24 14:43:39 -05:00
2024-01-16 11:15:58 -05:00
2024-01-23 15:40:21 -05:00
2023-12-21 17:36:45 -05:00
2024-01-25 17:45:54 -05:00
2024-01-26 00:33:50 -05:00
2024-01-26 10:24:14 -05:00
2024-01-25 14:09:12 -05:00
2024-01-22 11:04:48 -05:00
2024-01-19 16:41:35 -05:00
2024-01-19 16:41:35 -05:00
2024-01-19 16:41:35 -05:00
2024-01-19 16:41:35 -05:00
2024-01-24 19:44:15 -05:00
2024-01-23 15:30:07 -05:00
2024-01-24 10:26:07 -05:00
2024-01-23 17:19:46 -05:00
2024-01-17 19:51:06 -05:00
2024-01-19 16:41:35 -05:00
2024-01-19 16:41:35 -05:00
2023-12-14 15:49:11 -05:00
2023-12-11 13:55:22 -05:00
2024-01-12 03:14:57 -05:00
2023-12-12 13:43:17 -05:00
2024-01-25 18:02:54 -05:00
2024-01-12 14:28:27 -05:00
2024-01-25 18:33:29 -05:00
2024-01-24 16:04:51 -05:00
2024-01-26 02:19:44 -05:00
2024-01-12 10:47:04 -05:00
2024-01-17 11:51:40 -05:00
2024-01-23 14:58:18 -05:00
2023-12-15 19:25:42 -05:00
2024-01-19 16:41:35 -05:00
2024-01-19 16:41:35 -05:00