mirror of
https://github.com/ImranR98/Obtainium.git
synced 2026-08-01 09:57:17 -04:00
HIGH severity fixes: - Fix indexOf -> startsWith for URL scheme detection to prevent corrupting non-http URLs (source_provider.dart) - Fix OOM risk: use XFile(path) instead of readAsBytes() for large APKs (apps_provider_install.dart) - Fix GeneratedFormSwitch.ensureType returning String instead of bool, causing runtime _CastError (generated_form_model.dart) - Fix initForm() called during build() triggering parent setState by moving init to didUpdateWidget + postFrameCallback (generated_form_renderer.dart) - Fix CI sed no-op: update regex to match actual signingConfig pattern in build.gradle.kts (release.yml) - Fix build.sh auto git push on no-args: require explicit arg to sync+build - Pin all git dependencies to commit SHAs instead of mutable branches MEDIUM severity fixes: - Sequence background service start/stop calls to prevent races (main.dart) - Move loadSystemFont() from build() to init to prevent visible font flash - Prevent concurrent bgUpdateCheck calls in onRepeatEvent with guard flag - Extend download retry to SocketException and TimeoutException - Cap install permission loop at 10 attempts to prevent infinite hang - Remove dead unused headers variable causing double bcrypt hash (coolapk.dart) - Remove HTTP 304 from redirect status check (huaweiappgallery.dart) - Guard result.files.single against empty file picker results (import_export.dart) - Add error logging to linkFn catch block (add_app.dart) - Disable continue button when no download URL available (app_detail_widgets.dart) - Fix DEVELOPER_GUIDE.md: list all git-pinned deps, correct android_package_manager LOW severity fixes: - Use 'final' instead of 'late' for FDroid field (izzyondroid.dart) - Use stable 'name' instead of runtime-type sourceIdentifier (neutroncode.dart) - Fix typo: finalUrlKey -> urlDataKey (uptodown.dart) - Fix aptoide constructor field order for consistency - Remove dead app?.app == null condition (app.dart) - Reuse SourceProvider instance instead of throwaway (apps.dart) - Support descending sort for 'as added' column (app_list_tile.dart) - Remove SDK >= 31 guard causing layout shift for material-you option (settings.dart) - Secure standardize.mjs: atomic write-then-rename, Object.hasOwn, error handling - Add flutter_launcher_icons to dev_dependencies