Ali Çehreli wrote:
On 08/03/2017 06:02 PM, Andrew Edwards wrote:char *s;That's an uninitialized C string.
OK, I was is indeed the problem. I was thinking for some reason that s gets initialized inside nk_color_hex_rgb() but it's expecting to an array to work with. I actually noticed that couldn't, for the life of me, associate it to the cause of the resulting issue.
nk_color_hex_rgb(s, str);That function is expecting it to have at least 7 chars when doing things like output[1] = (char)NK_TO_HEX((col.r & 0x0F)); So you have to have a proper pointer to the first element of an array to pass to nk_color_hex_rgb. The following may work but you shouldn't be needing to use magic constants like 7: char[7] s; nk_color_hex_rgb(s.ptr, str); // ... printf("%s\n", s.ptr);
got you... this makes sense, but I'm doing it differently in D. See my response to Steven. I was only experiencing this issue in C.
There's probably the proper C macro that defines it so that you can do char[BLAH_LENGTH] s: Ali
Much appreciated.
