The current version number is 1.23.0
#define DK_HAVE_NDBM_H 1to dksdbi.h, I intended to remove the line after adding a test to the configure script. Unfortunately I forgot to remove the line, so the configure script test result was ignored.
int dkenc_utf82uc(dk_udword *ucp, dk_ubyte *u8p, size_t u8l, size_t *u8u); size_t dkenc_uc2utf8(dk_udword c, dk_ubyte *u8p, size_t u8l);As we want to count bytes or numbers of doubleword the size_t type is a better choice than int.
char *dkenc_str_utf82bits8(char *s); char *dkenc_str_bits82utf8(char *s);The functions return pointers to dynamically allocated memory, use dk_delete() to free the memory if the strings are not longer needed.
ar <library> <object(s)>is not sufficient to build a library, an additional
ranlib <library>is necessary.
int setmode(int, int); int _setmode(int, int);which can be used to force binary mode for a filedeskriptor.
void *setmode(const char *);which has something to do with converting a file permission string to mode_t settings.
char * dkfont_get_gs_alias_name(size_t number); char * dkfont_get_gs_file_name(size_t number);were added to retrieve the components.
char *dkapp_get_source_filename(dk_app_t *a); unsigned long dkapp_get_source_lineno(dk_app_t *a);to retrieve file name and line number currently used for error reporting.
2^32 * dkmem_alloc_get_track(1) + dkmem_alloc_get_track(0);The values must be converted to double as the product might exceed the range of unsigned long numbers.