MatthewBeshay
a513fa7597
Rename CriticalSection wrapper functions to match std::mutex usage
...
EnterCallbackIdCriticalSection/LeaveCallbackIdCriticalSection -> lockCallbackScenes/unlockCallbackScenes, EnterSaveNotificationSection/LeaveSaveNotificationSection -> lockSaveNotification/unlockSaveNotification, m_saveNotificationCriticalSection -> m_saveNotificationMutex.
2026-03-31 00:16:16 +11:00
MatthewBeshay
e4520df31f
Restore recursive locking for mutexes converted from CRITICAL_SECTION
...
CRITICAL_SECTION is reentrant; std::mutex is not. This caused deadlocks during world generation, post-processing, and saving.
2026-03-30 22:14:14 +11:00
MatthewBeshay
57e4bdd973
Fix dirtyChunksLock scope in updateDirtyChunks
...
Move unique_lock declaration before the FRAME_PROFILE_SCOPE block so it remains in scope for the unlock() calls in the #if/#else branches below.
2026-03-30 19:12:22 +11:00
MatthewBeshay
f1df21590b
Merge dev and resolve formatting conflicts
2026-03-30 19:00:30 +11:00
MatthewBeshay
123c326881
Merge remote-tracking branch 'origin/dev' into refactor/nuke-critical-sections
2026-03-30 18:54:27 +11:00
MatthewBeshay
bc6013ab70
Replace all CRITICAL_SECTION usage with std::mutex and std::lock_guard
...
Migrates 59 files from WinAPI CRITICAL_SECTION to portable C++ std::mutex/std::lock_guard/std::unique_lock. Removes Linux CRITICAL_SECTION shims from winapi_stubs.h.
2026-03-30 18:45:55 +11:00
Tropical
8a83ea0879
Merge pull request #363 from 4jcraft/chore/fmt2
...
Publish Documentation / build (push) Waiting to run
Build (Linux, x86-64) / build-linux (push) Waiting to run
Format Check / clang-format (push) Waiting to run
chore: format everything
2026-03-30 02:33:42 -05:00
Tropical
a8b9e9a185
wtf
2026-03-30 02:31:58 -05:00
Tropical
078eb3a144
format UIScene_ControlsMenu
2026-03-30 02:24:37 -05:00
Tropical
826862e79e
format more things i missed
2026-03-30 02:19:38 -05:00
Tropical
c9b90cae2c
chore: format everything
2026-03-30 02:17:54 -05:00
Tropical
470ddf959d
Merge pull request #362 from 4jcraft/in-tree-4jlibs
...
nuke Windows64 4jlibs
2026-03-30 02:11:45 -05:00
Tropical
f1c9edb6b6
nuke Windows64 4jlibs
2026-03-30 02:11:28 -05:00
MatthewBeshay
c772cfe8b3
Merge pull request #361 from 4jcraft/in-tree-4jlibs
...
refactor: bring 4jlibs back in-tree
2026-03-30 18:09:11 +11:00
Tropical
ecc15c6148
refactor: bring 4jlibs back in-tree
2026-03-30 02:04:44 -05:00
Tropical
7c7446f407
Merge pull request #360 from MatthewBeshay/refactor/nuke-winapi-types
...
Refactor/nuke winapi types
2026-03-30 01:45:58 -05:00
MatthewBeshay
8a6d279230
Merge branch '4jcraft:dev' into refactor/nuke-winapi-types
2026-03-30 17:37:02 +11:00
MatthewBeshay
28d68befd4
Replace remaining WinAPI types with standard C++ equivalents
...
DWORD→uint32_t, BYTE→uint8_t, HRESULT→int32_t, HANDLE→void*, UINT→uint32_t, INT→int32_t, WORD→uint16_t, LONG→int32_t, SHORT→int16_t, LONGLONG→int64_t, ULONG_PTR→uintptr_t, PBYTE→uint8_t*, LPWSTR/PWSTR→wchar_t*, FLOAT→float, CHAR→char, boolean→bool, CONST→const, TRUE→true, FALSE→false across 176 files (excluding vendor libs and Linux stubs).
2026-03-30 17:36:15 +11:00
MatthewBeshay
56290446db
Merge pull request #359 from 4jcraft/nuke-zlib
...
remove xuiscene_base
2026-03-30 17:26:53 +11:00
Tropical
d42f37c3ee
remove xuiscene_base
...
duplicate of a file already in XboxMedia
2026-03-30 01:01:15 -05:00
MatthewBeshay
b9c32b580c
Merge pull request #358 from 4jcraft/nuke-zlib
...
nuke in-tree zlib
2026-03-30 16:57:57 +11:00
Tropical
df5d806c85
nuke in-tree zlib
2026-03-30 00:54:24 -05:00
MatthewBeshay
b28650976d
Merge pull request #357 from 4jcraft/refactor/expand-auto-var
...
nuke more winapi types
2026-03-30 16:44:08 +11:00
Tropical
cba5a56ee7
SIZE_T -> size_t
2026-03-30 00:42:26 -05:00
Tropical
f03c7163f4
WCHAR -> wchar_t
2026-03-30 00:42:26 -05:00
Tropical
be2c65486d
VOID -> void
2026-03-30 00:38:52 -05:00
Tropical
a518b51754
LONG64 -> int64_t
2026-03-30 00:38:52 -05:00
Tropical
c8f59b4a99
Merge pull request #356 from MatthewBeshay/cleanup/nullptr-replacement
...
refactor: replace NULL with nullptr across C++ codebase
2026-03-30 00:35:20 -05:00
MatthewBeshay
a0fdc643d1
Merge branch 'upstream-dev' into cleanup/nullptr-replacement
...
# Conflicts:
# Minecraft.Client/Network/PlayerChunkMap.cpp
# Minecraft.Client/Network/PlayerList.cpp
# Minecraft.Client/Network/ServerChunkCache.cpp
# Minecraft.Client/Platform/Common/Consoles_App.cpp
# Minecraft.Client/Platform/Common/DLC/DLCManager.cpp
# Minecraft.Client/Platform/Common/GameRules/LevelGenerationOptions.cpp
# Minecraft.Client/Platform/Common/GameRules/LevelRuleset.cpp
# Minecraft.Client/Platform/Common/Tutorial/Tutorial.cpp
# Minecraft.Client/Platform/Common/Tutorial/TutorialTask.cpp
# Minecraft.Client/Platform/Common/UI/IUIScene_CreativeMenu.cpp
# Minecraft.Client/Platform/Common/UI/UIComponent_Panorama.cpp
# Minecraft.Client/Platform/Common/UI/UIController.cpp
# Minecraft.Client/Platform/Common/UI/UIController.h
# Minecraft.Client/Platform/Extrax64Stubs.cpp
# Minecraft.Client/Platform/Windows64/4JLibs/inc/4J_Input.h
# Minecraft.Client/Platform/Windows64/4JLibs/inc/4J_Storage.h
# Minecraft.Client/Player/EntityTracker.cpp
# Minecraft.Client/Player/ServerPlayer.cpp
# Minecraft.Client/Rendering/EntityRenderers/PlayerRenderer.cpp
# Minecraft.Client/Textures/Packs/DLCTexturePack.cpp
# Minecraft.Client/Textures/Stitching/StitchedTexture.cpp
# Minecraft.Client/Textures/Stitching/TextureMap.cpp
# Minecraft.Client/Textures/Textures.cpp
# Minecraft.World/Blocks/NotGateTile.cpp
# Minecraft.World/Blocks/PressurePlateTile.cpp
# Minecraft.World/Blocks/TileEntities/PotionBrewing.cpp
# Minecraft.World/Enchantments/EnchantmentHelper.cpp
# Minecraft.World/Entities/HangingEntity.cpp
# Minecraft.World/Entities/LeashFenceKnotEntity.cpp
# Minecraft.World/Entities/LivingEntity.cpp
# Minecraft.World/Entities/Mobs/Boat.cpp
# Minecraft.World/Entities/Mobs/Minecart.cpp
# Minecraft.World/Entities/Mobs/Witch.cpp
# Minecraft.World/Entities/SyncedEntityData.cpp
# Minecraft.World/Items/LeashItem.cpp
# Minecraft.World/Items/PotionItem.cpp
# Minecraft.World/Level/BaseMobSpawner.cpp
# Minecraft.World/Level/CustomLevelSource.cpp
# Minecraft.World/Level/Level.cpp
# Minecraft.World/Level/Storage/DirectoryLevelStorage.cpp
# Minecraft.World/Level/Storage/McRegionLevelStorage.cpp
# Minecraft.World/Level/Storage/RegionFileCache.cpp
# Minecraft.World/Player/Player.cpp
# Minecraft.World/WorldGen/Biomes/BiomeCache.cpp
# Minecraft.World/WorldGen/Features/RandomScatteredLargeFeature.cpp
# Minecraft.World/WorldGen/Layers/BiomeOverrideLayer.cpp
2026-03-30 16:28:40 +11:00
MatthewBeshay
dfb0e3b03e
refactor: replace NULL with nullptr across C++ codebase
...
Excludes vendored C libs (zlib, Miles, DirectXMath, boost, Iggy).
2026-03-30 16:25:52 +11:00
MatthewBeshay
00cd713cc8
Merge pull request #355 from 4jcraft/refactor/expand-auto-var
...
refactor: replace some win32 typedefs
2026-03-30 16:21:16 +11:00
Tropical
2ebead56ca
remove bool identity type
2026-03-30 00:17:42 -05:00
Tropical
51e61a12b4
refactor: replace some win32 typedefs
2026-03-30 00:16:26 -05:00
MatthewBeshay
e65a78d6a7
Merge pull request #354 from 4jcraft/refactor/expand-auto-var
...
refactor: replace double-underscore MSVC integer types with stdint
2026-03-30 16:12:18 +11:00
Tropical
6ed953a3c3
refactor: replace double-underscore MSVC integer types with stdint
2026-03-30 00:08:25 -05:00
Tropical
1602fbec39
Merge pull request #353 from 4jcraft/refactor/expand-auto-var
...
refactor: expand AUTO_VAR macro
2026-03-30 00:04:49 -05:00
Tropical
e45151ae64
refactor: expand AUTO_VAR macro
2026-03-29 23:59:05 -05:00
Tropical
a330ecdcbb
Merge pull request #317 from MatthewBeshay/cleanup/shared-portability-reset-v2
...
Cleanup/shared portability reset v2
2026-03-29 23:38:24 -05:00
Tropical
e437a5f4be
fix build
2026-03-29 23:35:51 -05:00
MatthewBeshay
a104252557
Merge branch 'upstream-dev' into cleanup/shared-portability-reset-v2
...
# Conflicts:
# Minecraft.Client/Platform/Common/Consoles_App.cpp
# Minecraft.World/IO/Files/File.cpp
2026-03-30 15:28:11 +11:00
MatthewBeshay
9375009dd3
Merge pull request #351 from 4jcraft/fix/pathhelper-include
...
fix: PathHelper include path
2026-03-30 15:25:10 +11:00
Tropical
e4c0a3a35b
fix: assets loading and text input issues
2026-03-29 23:24:37 -05:00
MatthewBeshay
6000900285
Merge branch 'upstream-dev' into cleanup/shared-portability-reset-v2
...
# Conflicts:
# Minecraft.Client/Level/ServerLevel.cpp
# Minecraft.Client/Minecraft.cpp
# Minecraft.Client/MinecraftServer.cpp
# Minecraft.Client/Network/ClientConnection.cpp
# Minecraft.Client/Network/ServerChunkCache.cpp
# Minecraft.Client/Platform/Common/Audio/SoundEngine.cpp
# Minecraft.Client/Platform/Common/Consoles_App.cpp
# Minecraft.Client/Platform/Common/Network/GameNetworkManager.cpp
# Minecraft.Client/Platform/Common/Network/Sony/SonyCommerce.cpp
# Minecraft.Client/Platform/Common/Network/Sony/SonyRemoteStorage.cpp
# Minecraft.Client/Platform/Common/UI/UIController.cpp
# Minecraft.Client/Platform/Common/UI/UIScene_CreateWorldMenu.cpp
# Minecraft.Client/Platform/Common/UI/UIScene_EnchantingMenu.cpp
# Minecraft.Client/Platform/Common/UI/UIScene_LaunchMoreOptionsMenu.cpp
# Minecraft.Client/Platform/Common/UI/UIScene_LoadOrJoinMenu.cpp
# Minecraft.Client/Platform/Common/UI/UIScene_MainMenu.cpp
# Minecraft.Client/Platform/Common/XUI/XUI_Death.cpp
# Minecraft.Client/Platform/Common/XUI/XUI_Leaderboards.cpp
# Minecraft.Client/Platform/Common/XUI/XUI_MultiGameJoinLoad.cpp
# Minecraft.Client/Platform/Common/XUI/XUI_PauseMenu.cpp
# Minecraft.Client/Platform/Common/XUI/XUI_TransferToXboxOne.cpp
# Minecraft.Client/Platform/Durango/Durango_Minecraft.cpp
# Minecraft.Client/Platform/Linux/Linux_Minecraft.cpp
# Minecraft.Client/Platform/Orbis/Orbis_Minecraft.cpp
# Minecraft.Client/Platform/PS3/PS3Extras/boost_1_53_0/boost/spirit/home/lex/lexer/lexertl/lexer.hpp
# Minecraft.Client/Platform/PS3/PS3_Minecraft.cpp
# Minecraft.Client/Platform/PS3/SPU_Tasks/ChunkUpdate/TileRenderer_SPU.cpp
# Minecraft.Client/Platform/PS3/SPU_Tasks/ChunkUpdate/Tile_SPU.cpp
# Minecraft.Client/Platform/PS3/Xbox_Minecraft.cpp
# Minecraft.Client/Platform/PSVita/PSVita_Minecraft.cpp
# Minecraft.Client/Platform/Xbox/Xbox_Minecraft.cpp
# Minecraft.Client/Platform/stdafx.h
# Minecraft.Client/Player/LocalPlayer.cpp
# Minecraft.Client/Rendering/Chunk.cpp
# Minecraft.Client/Rendering/EntityRenderers/ItemRenderer.cpp
# Minecraft.Client/Rendering/GameRenderer.cpp
# Minecraft.Client/Rendering/LevelRenderer.cpp
# Minecraft.Client/Textures/BufferedImage.cpp
# Minecraft.Client/UI/Screens/AchievementScreen.cpp
# Minecraft.Client/UI/Screens/ContainerScreen.cpp
# Minecraft.Client/UI/Screens/TrapScreen.cpp
# Minecraft.World/IO/Files/ConsoleSaveFileOriginal.cpp
# Minecraft.World/IO/Files/File.cpp
# Minecraft.World/Player/Player.cpp
# Minecraft.World/Util/C4JThread.cpp
2026-03-30 15:21:08 +11:00
Tropical
0644d9bcde
fix: use correct 4jlibs branch
2026-03-29 23:18:26 -05:00
Tropical
c5d50c4066
fix: PathHelper include path
2026-03-29 23:13:15 -05:00
Tropical
2c72e3de6d
Merge pull request #350 from 4jcraft/fix/revert-ci
...
revert CI
2026-03-29 23:02:43 -05:00
Tropical
b5b9b66307
add libglm dependency again
2026-03-29 23:00:46 -05:00
Tropical
e7af3b42bb
Merge pull request #344 from MatthewBeshay/feat/text-input-support
...
Feat/text input support
2026-03-29 23:00:18 -05:00
Tropical
4ee9175501
don't use apt-install github action
2026-03-29 22:59:23 -05:00
MatthewBeshay
8f61c9b01a
fix: update 4jlibs flake input to latest main
...
Resolves build failure caused by 4jlibs:gles being an unknown option.
2026-03-30 14:57:56 +11:00