Friday, July 24, 2020
Well, the bugs start coming and they don't stop coming
As soon as I find one bug than I find another one.
In an unrelated program.
Sigh.
In this case, the bug was in my gopher server, or rather, the custom module for the gopher server that serves up my blog entries. Earlier this month, I rewrote parts of that module to convert HTML to text and I munged the part that serves up ancillary files like images. I found the bug as I was pulling links for the previous entry when I came across this entry from last year about the horrible job Lynx was doing converting HTML to text. In that post, I wrote what I would like to see and I decided to check how good of a job I did.
It's pretty much spot on, but I for some reason decided to view the image on that entry (via gopher), and that's when I found the bug.
The image never downloaded because the coroutine handling the request crashed,
which triggered a call to assert()
causing the server to stop running.
Oops.
The root cause was I forgot to prepend the storage path to the ancilliary files. And with that out of the way …