-
loftar
- Posts: 9096
- Joined: Fri Apr 03, 2009 7:05 am
- Location: Your character database
Re: Debugging woes: Small rollback
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
-
orlandina
- Posts: 3
- Joined: Sun Jan 16, 2022 1:54 am
Re: Debugging woes: Small rollback
I just wanted to play today. Are you looking for me? =)
-
TerpLord420
- Posts: 5
- Joined: Mon Dec 23, 2024 1:18 am
Re: Debugging woes: Small rollback
crashes sometimes when i close: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.
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
-
loftar
- Posts: 9096
- Joined: Fri Apr 03, 2009 7:05 am
- Location: Your character database
Re: Debugging woes: Small rollback
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.
That's a custom client bug.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)
"Object-oriented design is the roman numerals of computing." -- Rob Pike
-
NightMind
- Posts: 94
- Joined: Tue Aug 23, 2011 2:37 pm
Re: Debugging woes: Small rollback
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
Supporting Timber Racks, Mechanical press, and most fervently Custom floors and walls for house interior
-
jordancoles
- Posts: 14168
- Joined: Sun May 29, 2011 6:50 pm
- Location: British Columbia, Canada
Re: Debugging woes: Small rollback
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
I really don't see a reason to keep 16 around and 16.1 isn't different enough to split the playerbase
Check out my pro-tips threadDuhhrail 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.

-
NightMind
- Posts: 94
- Joined: Tue Aug 23, 2011 2:37 pm
Re: Debugging woes: Small rollback
Here, have some reasons: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
- * 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
Supporting Timber Racks, Mechanical press, and most fervently Custom floors and walls for house interior
-
loftar
- Posts: 9096
- Joined: Fri Apr 03, 2009 7:05 am
- Location: Your character database
Re: Debugging woes: Small rollback
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.
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
-
Brojnos
- Posts: 30
- Joined: Sun Jul 27, 2025 10:23 pm
Re: Debugging woes: Small rollback
Keep up the good work Loftar, thanks for fixing these bugsloftar 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.
-
Robben_DuMarsch
- Posts: 2646
- Joined: Wed Sep 28, 2011 2:58 am
Re: Debugging woes: Small rollback
Loftar will soon fix every bug in Haven but this elusive one that he's looking for.