From 907d20416333ce7a16953cafc2b938a1758f2bee Mon Sep 17 00:00:00 2001 From: Sam Bingner Date: Wed, 23 Oct 2019 23:26:45 -1000 Subject: Update sbreload to avoid strange apple(?) bug --- data/uikittools/2_sbreload.diff | 43 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 data/uikittools/2_sbreload.diff (limited to 'data/uikittools/2_sbreload.diff') diff --git a/data/uikittools/2_sbreload.diff b/data/uikittools/2_sbreload.diff new file mode 100644 index 000000000..88dcd40f4 --- /dev/null +++ b/data/uikittools/2_sbreload.diff @@ -0,0 +1,43 @@ +diff --git a/sbreload.m b/sbreload.m +index e36134f..85b8e17 100644 +--- a/sbreload.m ++++ b/sbreload.m +@@ -49,6 +49,7 @@ + #define FLAG_PLATFORMIZE (1 << 1) + #include + #include ++#include + + @interface FBSSystemService + +(id)sharedService; +@@ -143,16 +144,26 @@ void platformizeme() { + case kCFNumberLongType: + case kCFNumberLongLongType: + CFNumberGetValue(cfr, kCFNumberLongLongType, &n); +- r = launch_data_alloc(LAUNCH_DATA_INTEGER); +- launch_data_set_integer(r, n); ++ if (kCFCoreFoundationVersionNumber >= 1443.00) { ++ r = (launch_data_t)xpc_int64_create(n); ++ } else { ++ // This hangs forever if I call it on new iOS??? ++ r = launch_data_alloc(LAUNCH_DATA_INTEGER); ++ launch_data_set_integer(r, n); ++ } + break; + case kCFNumberFloat32Type: + case kCFNumberFloat64Type: + case kCFNumberFloatType: + case kCFNumberDoubleType: + CFNumberGetValue(cfr, kCFNumberDoubleType, &d); +- r = launch_data_alloc(LAUNCH_DATA_REAL); +- launch_data_set_real(r, d); ++ if (kCFCoreFoundationVersionNumber >= 1443.00) { ++ r = (launch_data_t)xpc_double_create(d); ++ } else { ++ // Not sure if this hangs, but added to be safe ++ r = launch_data_alloc(LAUNCH_DATA_REAL); ++ launch_data_set_real(r, d); ++ } + break; + default: + r = NULL; -- cgit v1.2.3