From 51c30190556e154958984f08554ddc60fa90fe9b Mon Sep 17 00:00:00 2001 From: Stossy11 <69031796+stossy11@users.noreply.github.com> Date: Sat, 12 Apr 2025 11:31:22 +1000 Subject: [PATCH] Fix heartbeat again hopefully --- StikJIT/StikJITApp.swift | 1 + StikJIT/idevice/heartbeat.c | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/StikJIT/StikJITApp.swift b/StikJIT/StikJITApp.swift index fc43458..a72f6f8 100644 --- a/StikJIT/StikJITApp.swift +++ b/StikJIT/StikJITApp.swift @@ -462,6 +462,7 @@ func startHeartbeatInBackground() { timer.invalidate() } } + } else { print("Error: \(message ?? "") (Code: \(result))") diff --git a/StikJIT/idevice/heartbeat.c b/StikJIT/idevice/heartbeat.c index 43952f9..d2ee11a 100644 --- a/StikJIT/idevice/heartbeat.c +++ b/StikJIT/idevice/heartbeat.c @@ -18,11 +18,13 @@ bool isHeartbeat = false; void startHeartbeat(IdevicePairingFile* pairing_file, TcpProviderHandle** provider, int* heartbeatSessionId, HeartbeatCompletionHandlerC completion, LogFuncC logger) { int currentSessionId = *heartbeatSessionId; + isHeartbeat = true; struct sockaddr_in addr; memset(&addr, 0, sizeof(addr)); addr.sin_family = AF_INET; if (inet_pton(AF_INET, "10.7.0.1", &addr.sin_addr) <= 0) { logger("DEBUG: Error converting IP address."); + isHeartbeat = false; return; } logger("DEBUG: Socket address created for IP 10.7.0.1"); @@ -35,6 +37,7 @@ void startHeartbeat(IdevicePairingFile* pairing_file, TcpProviderHandle** provid if (err != IdeviceSuccess) { logger("DEBUG: Failed to create TCP provider: %d", err); completion(err, "Failed to create TCP provider"); + isHeartbeat = false; return; } logger("DEBUG: TCP provider created successfully."); @@ -45,13 +48,13 @@ void startHeartbeat(IdevicePairingFile* pairing_file, TcpProviderHandle** provid if (err != IdeviceSuccess) { completion(err, "Failed to connect to Heartbeat"); logger("DEBUG: Failed to connect to installation proxy: %d", err); + isHeartbeat = false; return; } logger("DEBUG: Connected to heartbeat successfully."); completion(0, "Heartbeat Completed"); - isHeartbeat = true; u_int64_t current_interval = 15; while (1) { if(*heartbeatSessionId != currentSessionId) {