Debugging woes: Small rollback

Announcements about major changes in Haven & Hearth.

Re: Debugging woes: Small rollback

Postby loftar » Fri Nov 28, 2025 1:56 am

Caught yet another one that I wasn't looking for. Unlike the previous two (which would have been harmless in practice), this one was at least a slightly more significant use-after-free bug, so I'm glad ASan caught it. Anyway, debugging continues.
"Object-oriented design is the roman numerals of computing." -- Rob Pike
User avatar
loftar
 
Posts: 9075
Joined: Fri Apr 03, 2009 7:05 am

Re: Debugging woes: Small rollback

Postby orlandina » Fri Nov 28, 2025 1:58 am

I just wanted to play today. Are you looking for me? =)
orlandina
 
Posts: 3
Joined: Sun Jan 16, 2022 1:54 am

Re: Debugging woes: Small rollback

Postby TerpLord420 » Fri Nov 28, 2025 2:49 am

loftar wrote:Caught yet another one that I wasn't looking for. Unlike the previous two (which would have been harmless in practice), this one was at least a slightly more significant use-after-free bug, so I'm glad ASan caught it. Anyway, debugging continues.


crashes sometimes when i close:

haven.UI$CommandException: error during ui command-handling: #<cmd 844 #<wdgmsg 0 curs []> (deps 0) (bars 0)>
at haven.UI$CommandQueue.run(UI.java:323)
at haven.UI$CommandQueue.lambda$execute$0(UI.java:331)
at haven.Loader.lambda$defer$0(Loader.java:240)
at haven.Loader$Future.run(Loader.java:71)
at haven.Loader$Future.access$400(Loader.java:42)
at haven.Loader.loop(Loader.java:202)
at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException: Cannot invoke "haven.Indir.get()" because "cursor" is null
at haven.CharacterInfo.updateCursor(CharacterInfo.java:58)
at haven.RootWidget.uimsg(RootWidget.java:158)
at haven.Widget$MessageEvent.shandle(Widget.java:980)
at haven.Widget.handle(Widget.java:921)
at haven.Widget$Event.dispatch(Widget.java:873)
at haven.UI.dispatch(UI.java:663)
at haven.UI$UiMessage.run(UI.java:734)
at haven.UI$CommandQueue.run(UI.java:319)
... 6 more
TerpLord420
 
Posts: 5
Joined: Mon Dec 23, 2024 1:18 am

Re: Debugging woes: Small rollback

Postby loftar » Fri Nov 28, 2025 3:24 am

Well, that bug was actually completely unrelated to the current bout of debugging, and was available for anyone to crash the server for about a year, by clicking a wild onion while holding a food trough (due to an invalid specification of wild onions as fodder). Debugging continues, then.

TerpLord420 wrote:Caused by: java.lang.NullPointerException: Cannot invoke "haven.Indir.get()" because "cursor" is null
at haven.CharacterInfo.updateCursor(CharacterInfo.java:58)
at haven.RootWidget.uimsg(RootWidget.java:158)

That's a custom client bug.
"Object-oriented design is the roman numerals of computing." -- Rob Pike
User avatar
loftar
 
Posts: 9075
Joined: Fri Apr 03, 2009 7:05 am

Re: Debugging woes: Small rollback

Postby NightMind » Fri Nov 28, 2025 3:42 am

Just got this error, bare (steam) client
Code: Select all
haven.UI$CommandException: error during ui command-handling: #<cmd 7189 #<dstwdg 7> (deps 7 6) (bars 7 6)>
   at haven.UI$CommandQueue.run(UI.java:272)
   at haven.UI$CommandQueue.lambda$execute$0(UI.java:280)
   at haven.Loader.lambda$defer$0(Loader.java:240)
   at haven.Loader$Future.run(Loader.java:71)
   at haven.Loader$Future.access$400(Loader.java:42)
   at haven.Loader.loop(Loader.java:202)
   at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException: Cannot invoke "haven.render.RenderTree$Slot.remove()" because "this.gobs.slot" is null
   at haven.MapView.dispose(MapView.java:513)
   at haven.Widget.rdispose(Widget.java:525)
   at haven.Widget.destroy(Widget.java:546)
   at haven.Widget.reqdestroy(Widget.java:541)
   at haven.UI.destroy(UI.java:596)
   at haven.UI$DstWidget.run(UI.java:628)
   at haven.UI$CommandQueue.run(UI.java:268)
   ... 6 more
NightMind
 
Posts: 39
Joined: Tue Aug 23, 2011 2:37 pm

Re: Debugging woes: Small rollback

Postby jordancoles » Fri Nov 28, 2025 3:42 am

Just wipe it and go with world 17

I really don't see a reason to keep 16 around and 16.1 isn't different enough to split the playerbase
Duhhrail wrote:No matter how fast you think you can beat your meat, Jordancoles lies in the shadows and waits to attack his defenseless prey. (tl;dr) Don't afk and jack off. :lol:

Check out my pro-tips thread
Image Image Image
User avatar
jordancoles
 
Posts: 14092
Joined: Sun May 29, 2011 6:50 pm
Location: British Columbia, Canada

Re: Debugging woes: Small rollback

Postby NightMind » Fri Nov 28, 2025 3:47 am

jordancoles wrote:Just wipe it and go with world 17

I really don't see a reason to keep 16 around and 16.1 isn't different enough to split the playerbase


Here, have some reasons:
    * Hermits get to play their old bases longer. If anyone still plays, they are happy
    * Teaching world for newbies
    * jorb can break just one server at a time and keep W16.1 (presumably) running smoother.
    * A/B Testing for features
    * Multiple worlds potentially allow for more frequent wipes/restarts of the side-world
NightMind
 
Posts: 39
Joined: Tue Aug 23, 2011 2:37 pm

Re: Debugging woes: Small rollback

Postby loftar » Fri Nov 28, 2025 5:59 am

Yet another bug that I wasn't looking for. For the curious, a missing NULL-termination of a credo-quest specification. (In all likelihood, the reason it hasn't crashed so far is because a NULL-termination was "accidentally" inserted by padding between elements.) Great to find, but debugging continues.

Running with ASan every once in a while might not be such a bad idea.
"Object-oriented design is the roman numerals of computing." -- Rob Pike
User avatar
loftar
 
Posts: 9075
Joined: Fri Apr 03, 2009 7:05 am

Re: Debugging woes: Small rollback

Postby Brojnos » Fri Nov 28, 2025 6:02 am

loftar wrote:Yet another bug that I wasn't looking for. For the curious, a missing NULL-termination of a credo-quest specification. Great to find, but debugging continues.

Running with ASan every once in a while might not be such a bad idea.

Keep up the good work Loftar, thanks for fixing these bugs
User avatar
Brojnos
 
Posts: 6
Joined: Sun Jul 27, 2025 10:23 pm

Re: Debugging woes: Small rollback

Postby Robben_DuMarsch » Fri Nov 28, 2025 6:04 am

Loftar will soon fix every bug in Haven but this elusive one that he's looking for.
User avatar
Robben_DuMarsch
 
Posts: 2460
Joined: Wed Sep 28, 2011 2:58 am

PreviousNext

Return to Announcements

Who is online

Users browsing this forum: Claude [Bot], OIchi, Padshiy, PetalBot [Bot], Python-Requests [Bot], Trendiction [Bot], ksillema, moj1 and 15 guests