TheClashFruit / Rithle

Android app for Modrinth written in Kotlin.
GNU General Public License v3.0
20 stars 1 forks source link

The app crashes when you open a project with a moderator message. #4

Closed TheClashFruit closed 1 year ago

TheClashFruit commented 1 year ago

Describe the bug The app crashes when you open a project with a moderator message.

To Reproduce Steps to reproduce the behavior:

  1. Open a project with a moderator message
  2. The app should crash

Expected behavior The app shouldn't crash and open the project normally.

Screenshots N/A

Smartphone (please complete the following information):

Additional context

2022-12-10 17:22:44.262 16930-16930/me.theclashfruit.rithle E/AndroidRuntime: FATAL EXCEPTION: main
    Process: me.theclashfruit.rithle, PID: 16930
    kotlinx.serialization.json.internal.JsonDecodingException: Unexpected JSON token at offset 682: Expected beginning of the string, but got { at path: $.moderator_message
    JSON input: .....approved","moderator_message":{"message":"License is invalid.....
        at kotlinx.serialization.json.internal.JsonExceptionsKt.JsonDecodingException(JsonExceptions.kt:24)
        at kotlinx.serialization.json.internal.JsonExceptionsKt.JsonDecodingException(JsonExceptions.kt:32)
        at kotlinx.serialization.json.internal.AbstractJsonLexer.fail(AbstractJsonLexer.kt:530)
        at kotlinx.serialization.json.internal.AbstractJsonLexer.fail$default(AbstractJsonLexer.kt:528)
        at kotlinx.serialization.json.internal.AbstractJsonLexer.consumeStringLenient(AbstractJsonLexer.kt:399)
        at kotlinx.serialization.json.internal.AbstractJsonLexer.unexpectedToken(AbstractJsonLexer.kt:204)
        at kotlinx.serialization.json.internal.StringJsonLexer.consumeNextToken(StringJsonLexer.kt:74)
        at kotlinx.serialization.json.internal.StringJsonLexer.consumeKeyString(StringJsonLexer.kt:85)
        at kotlinx.serialization.json.internal.AbstractJsonLexer.consumeString(AbstractJsonLexer.kt:315)
        at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeString(StreamingJsonDecoder.kt:342)
        at kotlinx.serialization.internal.StringSerializer.deserialize(Primitives.kt:153)
        at kotlinx.serialization.internal.StringSerializer.deserialize(Primitives.kt:149)
        at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:70)
        at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:43)
        at kotlinx.serialization.encoding.AbstractDecoder.decodeNullableSerializableElement(AbstractDecoder.kt:79)
        at me.theclashfruit.rithle.models.ModrinthProjectModel$$serializer.deserialize(ModrinthProjectModel.kt:5)
        at me.theclashfruit.rithle.models.ModrinthProjectModel$$serializer.deserialize(ModrinthProjectModel.kt:5)
        at kotlinx.serialization.json.internal.StreamingJsonDecoder.decodeSerializableValue(StreamingJsonDecoder.kt:70)
        at kotlinx.serialization.json.Json.decodeFromString(Json.kt:95)
        at me.theclashfruit.rithle.fragments.ProjectViewFragment.onCreateView$lambda-2(ProjectViewFragment.kt:104)
        at me.theclashfruit.rithle.fragments.ProjectViewFragment.$r8$lambda$bbv78OT6bK14dgoZazvALbcTMEI(Unknown Source:0)
        at me.theclashfruit.rithle.fragments.ProjectViewFragment$$ExternalSyntheticLambda1.onResponse(Unknown Source:8)
        at com.android.volley.toolbox.JsonRequest.deliverResponse(JsonRequest.java:100)
        at com.android.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:102)
        at android.os.Handler.handleCallback(Handler.java:938)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loopOnce(Looper.java:226)
        at android.os.Looper.loop(Looper.java:313)
        at android.app.ActivityThread.main(ActivityThread.java:8669)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1135)
TheClashFruit commented 1 year ago

just for me so I won't forget to fix

TheClashFruit commented 1 year ago

Fix will be implemented in 0.2.0-alpha.