mojira.dev
MC-138886

Exception is not logged when reading options.txt entry fails

The bug

When an entry of the options.txt file could not be read only the warning "Skipping bad option" with option name (and value) is logged. In some cases this is not enough information, instead the thrown exception should be logged as well.

How to reproduce

  1. Create a backup of your options.txt file

  2. Edit the current options.txt:

    • Add an entry without separator (:):

      test
    • Add an entry with invalid float value:

      mouseSensitivity:invalid
  3. Start Minecraft

  4. Look at the log
    ❌ It only logged "Skipping bad option" with the option name, but did not log the exception (indicating why the option is malformed)

Code analysis

20w10a, Mojang names

See net.minecraft.client.Options.load() and look for "Skipping bad option" (there are two occurences).

Comments 6

It’s not a bug...

The "Skipping bad option" warning doesn't seem to be present anymore.

Reopened because this is still the case in 20w12a, however the previously mentioned reproduction steps do not cause this issue anymore.
(Code analysis has version 20w10a on purpose)

I checked in 20w12a, and it seemed like the game just silently reset the value to default value instead of throwing any kind of exception in the first place. So, this ticket is about such a warning not existing now?

It only happens for some option types (e.g. does not happen for booleans). I have added reproduction steps now.
This report is still only about the exception not being logged.

Resolving this as Cannot Reproduce because it appears in 21w05a option parsing was refactored and now the exception is logged.

marcono1234

(Unassigned)

Confirmed

(Unassigned)

logging, options.txt

Minecraft 18w44a, 20w12a, 20w13b

Retrieved