From 864e15a0bc107310b980929c7b4abeacf1d0215e Mon Sep 17 00:00:00 2001 From: gir489 <100792176+gir489returns@users.noreply.github.com> Date: Sun, 5 Nov 2023 07:54:15 -0500 Subject: [PATCH] fix: Submarine crash and allowing empty JSON filenames to be saved (#2380) --- .../commands/teleport/teleport_to_personal_vehicle.cpp | 3 ++- src/hooks/protections/can_apply_data.cpp | 5 +++++ src/views/vehicle/spawn/view_persist_car.cpp | 6 ++++++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/backend/commands/teleport/teleport_to_personal_vehicle.cpp b/src/backend/commands/teleport/teleport_to_personal_vehicle.cpp index 1f1af26e..9d6b6cbe 100644 --- a/src/backend/commands/teleport/teleport_to_personal_vehicle.cpp +++ b/src/backend/commands/teleport/teleport_to_personal_vehicle.cpp @@ -12,7 +12,8 @@ namespace big virtual void execute(const command_arguments&, const std::shared_ptr ctx) override { Vehicle veh = mobile::mechanic::get_personal_vehicle(); - teleport::into_vehicle(veh); + if (self::veh != veh) + teleport::into_vehicle(veh); } }; diff --git a/src/hooks/protections/can_apply_data.cpp b/src/hooks/protections/can_apply_data.cpp index 87dfe8fc..6ec432e9 100644 --- a/src/hooks/protections/can_apply_data.cpp +++ b/src/hooks/protections/can_apply_data.cpp @@ -1557,6 +1557,11 @@ namespace big } } } + if (!NETWORK::NETWORK_IS_ACTIVITY_SESSION()) //If we're in Freemode. + { + notify::crash_blocked(sender, "submarine car freemode"); + return true; + } } break; diff --git a/src/views/vehicle/spawn/view_persist_car.cpp b/src/views/vehicle/spawn/view_persist_car.cpp index 0d18161f..f72bfceb 100644 --- a/src/views/vehicle/spawn/view_persist_car.cpp +++ b/src/views/vehicle/spawn/view_persist_car.cpp @@ -184,6 +184,9 @@ namespace big ImGui::SetTooltip("VEHICLE_FOLDER_NAME_EXAMPLE"_T.data()); components::button("SAVE_VEHICLE"_T, [] { + if (vehicle_file_name_input[0] == '\0') + return; + if (!self::veh) return g_notification_service->push_warning("PERSIST_CAR"_T.data(), "PERSIST_CAR_NOT_IN_VEHICLE"_T.data()); @@ -193,6 +196,9 @@ namespace big else { components::button("SAVE_VEHICLE"_T, [] { + if (vehicle_file_name_input[0] == '\0') + return; + if (!self::veh) return g_notification_service->push_warning("PERSIST_CAR"_T.data(), "PERSIST_CAR_NOT_IN_VEHICLE"_T.data());