Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JsonCacheInfoRepository: FormatException: Unexpected end of input (at character 1) ^ #450

Open
1 of 2 tasks
gemunet opened this issue Apr 3, 2024 · 0 comments
Open
1 of 2 tasks

Comments

@gemunet
Copy link

gemunet commented Apr 3, 2024

🐛 Bug Report

occasionally this error is generated when initializing CacheManager with JsonCacheInfoRepository

Fatal Exception: io.flutter.plugins.firebase.crashlytics.FlutterError: FormatException: Unexpected end of input (at character 1)

^

       at .jsonDecode(dart:convert)
       at JsonCacheInfoRepository._readFile(json_cache_info_repository.dart:143)
       at JsonCacheInfoRepository.open(json_cache_info_repository.dart:40)
       at new CacheStore.<fn>(cache_store.dart:34)

This happens when the {databaseName}.json file is created but empty and jsonString = ""

JsonCacheInfoRepository.dart: _readFile()
final json = jsonDecode(jsonString) as List<dynamic>;

A possible solution would be to check that the file is not empty before decoding the json

    if (await file.exists() && await file.length() > 0) {
      try {
        final jsonString = await file.readAsString();
        final json = jsonDecode(jsonString) as List<dynamic>;

note: I don't know why the json file is empty and not with an empty list []

Expected behavior

no error

Configuration

Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, 3.16.1, on Microsoft Windows [Versi¢n 10.0.22631.3296], locale es-CL)
[√] Windows Version (Installed version of Windows is version 10 or higher)
[√] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[√] Chrome - develop for the web
[√] Visual Studio - develop Windows apps (Visual Studio Build Tools 2022 17.8.2)
[√] Android Studio (version 2022.3)
[√] VS Code (version 1.87.2)
[√] Connected device (4 available)
[√] Network resources

• No issues found!

Version: 3.3.1

Platform:

  • 📱 iOS
  • 🤖 Android 13 (AP I33)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant