fixed a crash-bug in open_url

This commit is contained in:
Eric 2023-10-16 15:16:33 -07:00
parent e0f6f2a516
commit da1a43b4ca
No known key found for this signature in database
GPG Key ID: 89C93F0F8D6D5A98
6 changed files with 37 additions and 34 deletions

56
.efrocachemap generated
View File

@ -4056,26 +4056,26 @@
"build/assets/windows/Win32/ucrtbased.dll": "2def5335207d41b21b9823f6805997f1",
"build/assets/windows/Win32/vc_redist.x86.exe": "b08a55e2e77623fe657bea24f223a3ae",
"build/assets/windows/Win32/vcruntime140d.dll": "865b2af4d1e26a1a8073c89acb06e599",
"build/prefab/full/linux_arm64_gui/debug/ballisticakit": "ce0628aa40119fda33a0070fc5a5849f",
"build/prefab/full/linux_arm64_gui/release/ballisticakit": "6ae8e5b1d931d316b27f2026a24492da",
"build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "755ff319a078d9fdbc80908a6f062e66",
"build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "954aa4169a4e0b84bd071ac0555b098f",
"build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "b430a78b9b6c479dd37adf97f8a6cee0",
"build/prefab/full/linux_x86_64_gui/release/ballisticakit": "c78ad812d6811a87e6652f59cc727990",
"build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "64f608500550bcfe2fe0747280676875",
"build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "ef3c3bc20a9ca9def33aca446364fd92",
"build/prefab/full/mac_arm64_gui/debug/ballisticakit": "98192e4d10863f86de556baa3aa3eb52",
"build/prefab/full/mac_arm64_gui/release/ballisticakit": "fffa329c0f999c39ecc7c537b333480c",
"build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "2b2c521bc2a3afcfbfd8d87869a43dea",
"build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "1b0c69b48e6b1d354d7e444d5f92731a",
"build/prefab/full/mac_x86_64_gui/debug/ballisticakit": "8e55eb7c0cfb5268cca54c455f567f85",
"build/prefab/full/mac_x86_64_gui/release/ballisticakit": "7aa66285bd814f121850b6cfb782ab40",
"build/prefab/full/mac_x86_64_server/debug/dist/ballisticakit_headless": "69397f3a8bbad81f8c8d9295528dd41b",
"build/prefab/full/mac_x86_64_server/release/dist/ballisticakit_headless": "55c0ebaada6f257620f3ba0225087114",
"build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "68dd9d4782fdd2e7ef26fa34d336d6d0",
"build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "44f7bd9b24fef5ee1ff749b0a61b03b9",
"build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "dee3013cbc5ea749943bc0544b41c0ec",
"build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "fb35137239d263b18e0ae80dac8acb29",
"build/prefab/full/linux_arm64_gui/debug/ballisticakit": "32bb83a4f89e01aa643757b0cb13b109",
"build/prefab/full/linux_arm64_gui/release/ballisticakit": "e710eeae8cc6ebfafe869b860528437c",
"build/prefab/full/linux_arm64_server/debug/dist/ballisticakit_headless": "605497ca84eba13f05d08fb16cba5741",
"build/prefab/full/linux_arm64_server/release/dist/ballisticakit_headless": "3b88d767fc74e9169a24c707e5f1b075",
"build/prefab/full/linux_x86_64_gui/debug/ballisticakit": "edc3598904990e1224bbb922c5a49034",
"build/prefab/full/linux_x86_64_gui/release/ballisticakit": "3e4cfe6ef623f8c6263ebd4be0837762",
"build/prefab/full/linux_x86_64_server/debug/dist/ballisticakit_headless": "6a76e3a83ad2129cc1eefe627fd53d48",
"build/prefab/full/linux_x86_64_server/release/dist/ballisticakit_headless": "6245c26fe2355a955ed668fbf39545c9",
"build/prefab/full/mac_arm64_gui/debug/ballisticakit": "330b0cc59fc767d5263ef2136f7a7611",
"build/prefab/full/mac_arm64_gui/release/ballisticakit": "09230899c32ad2ad72a45849937206b3",
"build/prefab/full/mac_arm64_server/debug/dist/ballisticakit_headless": "3ea59821a409a4ebca355ed3ce6efb05",
"build/prefab/full/mac_arm64_server/release/dist/ballisticakit_headless": "9a54eca69f5746b02eeddd3b91cc4411",
"build/prefab/full/mac_x86_64_gui/debug/ballisticakit": "ef7fca726c6fb0324412efe93c01ad90",
"build/prefab/full/mac_x86_64_gui/release/ballisticakit": "430599b16acfbc01b769539d422434b0",
"build/prefab/full/mac_x86_64_server/debug/dist/ballisticakit_headless": "dc41efdaf2d6d441545008a55c6fa465",
"build/prefab/full/mac_x86_64_server/release/dist/ballisticakit_headless": "78a7ce5e1d4502da430f452dd66ff8fc",
"build/prefab/full/windows_x86_gui/debug/BallisticaKit.exe": "75062e8500654d7041127bad885e3d41",
"build/prefab/full/windows_x86_gui/release/BallisticaKit.exe": "9bc73b6a26c1a3337a28b55de99e1c9e",
"build/prefab/full/windows_x86_server/debug/dist/BallisticaKitHeadless.exe": "d78640a51f84484fdbe5bcdded3e4262",
"build/prefab/full/windows_x86_server/release/dist/BallisticaKitHeadless.exe": "55ec3263f4ed2f62c9a6825dd7a54169",
"build/prefab/lib/linux_arm64_gui/debug/libballisticaplus.a": "80ff019ab0715f68dc4cae15c7a9fdab",
"build/prefab/lib/linux_arm64_gui/release/libballisticaplus.a": "bbe53e6685130822cbba276f63b76dcb",
"build/prefab/lib/linux_arm64_server/debug/libballisticaplus.a": "80ff019ab0715f68dc4cae15c7a9fdab",
@ -4092,14 +4092,14 @@
"build/prefab/lib/mac_x86_64_gui/release/libballisticaplus.a": "70d5ec6b86c91c787a182da729737951",
"build/prefab/lib/mac_x86_64_server/debug/libballisticaplus.a": "444861c2242f3f0b9e09046b6cbf0245",
"build/prefab/lib/mac_x86_64_server/release/libballisticaplus.a": "70d5ec6b86c91c787a182da729737951",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.lib": "4c37ef02c9d97ebf58e9cd4055b557a7",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.pdb": "5450d7efd2aec4481be61a1315d78af2",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.lib": "42a5fefe21fdffdfb62a0f236b33193e",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.pdb": "d8f2d5d50cfedfff5b1ce1c9c7c52ef4",
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.lib": "f19d0d8db9b776291dc3bc99f402608e",
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.pdb": "c1dea4974ce3723ded4391eca5ae2bfc",
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.lib": "cf3bbe5f15e76197937e67cfaf2f0a32",
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.pdb": "2b8c93e04d1876a787b2a8befbbde004",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.lib": "864a9cbab9f9585aee77de74198a7972",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitGenericPlus.pdb": "74b8380f81af7e753f474432d90a29ff",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.lib": "adaf30a163aecc89a70c796bbbe26834",
"build/prefab/lib/windows/Debug_Win32/BallisticaKitHeadlessPlus.pdb": "0dac2937a62d13700550dbc73e1c0d2c",
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.lib": "df398f3b1cf28ef14c6cc6f5983f2180",
"build/prefab/lib/windows/Release_Win32/BallisticaKitGenericPlus.pdb": "87465318edc11b17f84de48d555d895a",
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.lib": "0744a823a205fa95a12f7fe3ecb480cc",
"build/prefab/lib/windows/Release_Win32/BallisticaKitHeadlessPlus.pdb": "859de1201dd68abbd308f95514a6375b",
"src/assets/ba_data/python/babase/_mgen/__init__.py": "f885fed7f2ed98ff2ba271f9dbe3391c",
"src/assets/ba_data/python/babase/_mgen/enums.py": "28323912b56ec07701eda3d41a6a4101",
"src/ballistica/base/mgen/pyembed/binding_base.inc": "bb96031e3f844704fcc9a0549a6d2c41",

View File

@ -1,4 +1,4 @@
### 1.7.28 (build 21471, api 8, 2023-10-16)
### 1.7.28 (build 21473, api 8, 2023-10-16)
- Massively cleaned up code related to rendering and window systems (OpenGL,
SDL, etc). This code had been growing into a nasty tangle for 15 years

View File

@ -52,7 +52,7 @@ if TYPE_CHECKING:
# Build number and version of the ballistica binary we expect to be
# using.
TARGET_BALLISTICA_BUILD = 21471
TARGET_BALLISTICA_BUILD = 21473
TARGET_BALLISTICA_VERSION = '1.7.28'

View File

@ -704,7 +704,7 @@ class AccountSettingsWindow(bui.Window):
position=((self._sub_width - button_width) * 0.5, v + 30),
autoselect=True,
size=(button_width, 60),
label=bui.Lstr(resource=self._r + '.manageAccountText'),
label=bui.Lstr(resource=f'{self._r}.manageAccountText'),
color=(0.55, 0.5, 0.6),
icon=bui.gettexture('settingsIcon'),
textcolor=(0.75, 0.7, 0.8),

View File

@ -39,7 +39,7 @@ auto main(int argc, char** argv) -> int {
namespace ballistica {
// These are set automatically via script; don't modify them here.
const int kEngineBuildNumber = 21471;
const int kEngineBuildNumber = 21473;
const char* kEngineVersion = "1.7.28";
const int kEngineApiVersion = 8;

View File

@ -2708,7 +2708,7 @@ static PyMethodDef PyBackPressDef = {
static auto PyOpenURL(PyObject* self, PyObject* args, PyObject* keywds)
-> PyObject* {
BA_PYTHON_TRY;
const char* address = nullptr;
const char* address{};
int force_internal{0};
static const char* kwlist[] = {"address", "force_internal", nullptr};
if (!PyArg_ParseTupleAndKeywords(args, keywds, "s|p",
@ -2716,12 +2716,15 @@ static auto PyOpenURL(PyObject* self, PyObject* args, PyObject* keywds)
&force_internal)) {
return nullptr;
}
// Need to pass a self-contained string to a lambda; not a char*.
std::string address2{address};
assert(g_base->app_adapter);
if (force_internal) {
g_base->ui->ShowURL(address);
} else {
g_base->app_adapter->PushMainThreadCall(
[address] { g_base->platform->OpenURL(address); });
[address2] { g_base->platform->OpenURL(address2); });
}
Py_RETURN_NONE;
BA_PYTHON_CATCH;