/* The string pointer is incremented if it does not point to '\0'.  */
static u8 read_string(void *data)
/* The string pointer is incremented if it does not point to '\0'.  */
static u8 read_string(void *data)
{
	const char **src = (const char **)data;
	u8 c;
	if (!src || !*src || !**src)
		return 0;
	c = **src;
	++*src;
	return c;
}