This Space for Rent

New Code!

Discount has been rolled up to version 3.0.1.2, and, whew, where do I begin?

As usual, don’t be surprised if running this code makes your computer phase into another dimension, or, less excitingly, melt down; it’s been working for me™ but that’s no guarantee of success elsewhere. Do note that you need to recompile everything from scratch to use the new code, because I’ve kept the old interface around (but not actually accessable yet because I didn’t manage to set up compatibility flags correctly), internally named the new published interface with a v3 prefix, then hid it from the user by #defineing all the v3mdk… functions to mkd…

And don’t forget to check all of your code that uses flags; since flags are now a blob, you need to allocate the flag structure (with mkd_flags()) before attempting to use it, and you must never try to do bit manipulation on them because they are now a pointer to an black box!

But anyway, New Code™ ready for your downloading enjoymentmirrored on github as well; download it today for an exciting tomorrow! :-)

EDIT: I forgot to null-terminate three strings, which my ci network didn’t catch :-( So instead of 3.0.1 it’s now 3.0.1.1 !

SECOND EDIT: My paranoid malloc code was returning buffers initialized to nulls, which hid even more strings I’d not null-terminated (as well as two structure allocations), so I had to fix that and make 3.0.1.1 into 3.0.1.2