Buildinggadgets: Null Pointer Exception while loading

Created on 3 Feb 2019  路  11Comments  路  Source: Direwolf20-MC/BuildingGadgets

This is a non-critical error. The game continues to load, and everything seems to work. But there's a Null Pointer Exception during load that would be nice to have cleaned up.

[12:59:30] [Client thread/INFO] [buildinggadgets]: Preparing to migrate old config Data to new Format java.lang.NullPointerException: null at com.direwolf20.buildinggadgets.common.config.CompatConfig.parseCompatConfig(CompatConfig.java:66) ~[CompatConfig.class:?] ...

bug

All 11 comments

I guess the category isn't empty for some reason, but null...
How did you manage to get the old config File to have a null Blacklist category?

I guess the cfg, file was so old, that the blacklist didn't exist at that time - fix would be to add a null check in Front of the isEmpty check here

I'm so happy I added the catch block, as I already though people might have messed up/too old for me to know how they are structured config Files... I'm sorry @utoxin, as soon as this null check comes in, you're old config will be ported too (and you'll get rid of that log spam)

@MajorTuvok did you ever implement a way to check for config version number
@utoxin Could you pastebin your config to confirm @MajorTuvok thoughts?

There wasn't one before...
So nope.

The Heuristik used for detecting an old config File comes from the File names, as the new File has a different name, than the old one.

Last time I checked you could add a config version number and if it doesn't exist then just check for null. it's a great way to check if there is going to be fatal conversion errors.

Ok, didn't notice that.

(I tested with a config File from 2.5.0... when creating the PR) (in hindsight, I should have tested with an older version too... -_- sorry)

I had two config files somehow... not sure how, since this is a brand new pack I'm working on building, and I haven't messed with Building Gadgets config yet. I installed whatever the version prior to 2.6 was, and then upgraded it the other day when Dire announced he'd released it. Anyway... here's my two config files:

BuildingGadgets.cfg: https://pastebin.com/sgtDJKQp (Jan 27, 2019)
Building Gadgets.cfg: https://pastebin.com/ju9Pm7Sk (Feb 3, 2019)

The older one is the one, that makes Problems according to code.

Apperently, your blacklist isn't in the General Category, like it should be as I see it...?!?
I'll do some testing with 2.5.0 and the current, inorder to see what's going on here.

Really?!? I found it: Blacklist is spelled with a capital B not a b - I must have lost it, when I accidentally deleted the CompatConfig whilst merging

After using a captial B everything works fine and as expected the old config get's deleted

Fixed in v2.6.1

Was this page helpful?
0 / 5 - 0 ratings

Related issues

WenXin20 picture WenXin20  路  3Comments

sunsparkda picture sunsparkda  路  4Comments

loordgek picture loordgek  路  6Comments

delta2k picture delta2k  路  3Comments

P3rf3ctXZer0 picture P3rf3ctXZer0  路  5Comments