Beemer (dr_tectonic) wrote,

Feh, I say, feh.

Yesterday I finally tracked down this one very quirky bug in my program. Sometimes when you finally figure out what's wrong, it's this great transformational moment when you suddenly discard your false hypothesis and see the whole problem from a new perspective where it all makes sense, and it's really cool.

And sometimes, you just plod along until you reach a conclusion, and you sort of go, "oh. Is THAT what it is? How annoying."

This was one of the latter. (For the record: dialog popups in swing block, and block the whole thread, including sockets. Which means that somebody not clicking on the "OK" button can make the server come to a halt, even when the server is on another machine, because the server has to wait for it to unblock to be able to write to the socket.)

I was at work for almost 14 hours today, because after working on fixing this thing for a while, I quickly realized that it was one of those changes where I couldn't stop in the middle or I would completely lose track of everything and have to start all over. I fixed it, but the chain of secondary changes that it set off is not quite finished. I'm pretty sure I just forgot to clear a flag, and once I do that, it'll all be great, but until then, it's just annoyingly not quite there.

Happily, it's now the weekend and I'm going to ignore it utterly until Monday.

  • Post a new comment


    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded