ChrisNZL / Tallowmere2

Changelog, issue tracker, and development knowledge for Tallowmere 2.
https://tallowmere2.com
13 stars 0 forks source link

Mobile: Null ref: T2.QuasiModalCanvas.SetCurrentIcon #1043

Closed ChrisNZL closed 2 years ago

ChrisNZL commented 2 years ago

Found in version 0.3.5b. Mobile. Feedback ID: 20220518-ZWH64

Error when trying to access Magic Mirror. (iOS, signed into Game Center with Core Supporter Pack purchased)

8:31:01, Frame 1520, EXCEPTION »  NullReferenceException: Object reference not set to an instance of an object.
>>>>> CRITICAL ERROR >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

T2.QuasiModalCanvas.SetCurrentIcon (T2.InputDeviceAssignerPlayerIcon newIcon)
T2.MobileProduct.OnUserPurchasedOrRestoredCoreSupporterPack ()
T2.Platform_CloudOnce.get_UserIsCoreSupporter ()
T2.CreatureBodyProfile.get_IsUnlockedForMagicMirror ()
T2.QuasiModalCanvas.UpdateMagicMirrorChains ()
T2.QuasiModalCanvas.BeginShowingForPlayer (T2.Player player, T2.DemonStatue demonStatue, T2.RewardSet rewardSet, T2.WeaponRack weaponRack, T2.MagicMirror magicMirror)
T2.CreatureBody.Update ()

GameStates: RompingThroughDungeon, UsingQuasiModalCanvas
OnlineGameInfo: Device is offline.
No previous server nor online game info.
GameSetupMode: Singleplayer
Players: 1
DungeonRoomTransitioner.state: Null
DungeonRoom.state: Ready
Room: 0 / 0
RoomModifiers: None
YouHaveDiedState: Null
SystemPlayer InputDevice: Touchscreen
HumanPlayer 1 InputDevice: Touchscreen
AccountDisplayName: XXXXX
UserIsCoreSupporter: True
CoreSupporterPack_ReceiptHash: XXXXX
ChrisNZL commented 2 years ago

Seems fixed in 0.3.5d.

Need to push to both Android and iOS.

ChrisNZL commented 2 years ago

Fixed for real in 0.3.5e.

Added null check at start of QuasiModalCanvas.SetCurrentIcon – stack trace was previously assuming currentIcon existed, with a weird call when checking against UserIsCoreSupporter for the first time when accessing the Magic Mirror, only seemingly happening on iOS (sometimes).