diff --git a/Update_Checker.lsl b/Update_Checker.lsl index b71b751..7ea2e58 100644 --- a/Update_Checker.lsl +++ b/Update_Checker.lsl @@ -287,20 +287,28 @@ default { updateCheckInProgress = FALSE; if (status == 200) { - // Parse GitHub release JSON + // Parse GitHub release JSON - with robust error handling string latestVersion = llJsonGetValue(body, ["tag_name"]); - string releaseNotes = llJsonGetValue(body, ["body"]); string htmlUrl = llJsonGetValue(body, ["html_url"]); string publishedAt = llJsonGetValue(body, ["published_at"]); if (latestVersion == JSON_INVALID) { llOwnerSay("❌ Could not parse GitHub API response"); if (VERBOSE_LOGGING) { - llOwnerSay("🔍 Response: " + llGetSubString(body, 0, 100) + "..."); + llOwnerSay("🔍 Response preview: " + llGetSubString(body, 0, 200) + "..."); } return; } + // Parse release notes with error handling + string releaseNotes = llJsonGetValue(body, ["body"]); + if (releaseNotes == JSON_INVALID) { + releaseNotes = "Release notes unavailable"; + if (VERBOSE_LOGGING) { + llOwnerSay("⚠️ Could not parse release notes - may contain special characters"); + } + } + llOwnerSay("=== 🔍 UPDATE CHECK RESULTS ==="); llOwnerSay("📊 Current Version: v" + CURRENT_VERSION); llOwnerSay("✨ Latest GitHub Release: " + latestVersion);