add: if (timestamp[page] > -1000) timestamp[page] = -1000; timestamp[page] += -1000;
context: SplitSubPages (UNICODE *text, sint32 *timestamp, int *num_pages){	UNICODE **split_text = NULL;	int pos = 0, ellips = 0;	COUNT page = 0;	while (text[pos])	{		if (text[pos] == '\n' || text[pos] == '\r')		{			if (! split_text)				split_text = (UNICODE **) HMalloc (sizeof (UNICODE *) * (page + 1));			else				split_text = (UNICODE **) HRealloc (split_text, 						sizeof (UNICODE *) * (page + 1));			if (!ispunct (text[pos - 1]) && !isspace (text[pos - 1]))			{				split_text[page] = HMalloc (sizeof (UNICODE) * (pos + ellips + 4));				if (ellips)					wstrcpy (split_text[page], "..");				wstrncpy (split_text[page] + ellips, text, pos);				wstrcpy (split_text[page] + ellips + pos, "...");				timestamp[page] = - pos * TEXT_SPEED;				ellips = 2;				text = text + pos;				pos = 0;				page ++;			}			else			{				split_text[page] = HMalloc (sizeof (UNICODE) * (pos + ellips + 1));				if (ellips)					wstrcpy (split_text[page], "..");				wstrncpy (split_text[page] + ellips, text, pos);				*(split_text[page] + ellips + pos) = 0;				timestamp[page] = - pos * TEXT_SPEED;				ellips = 0;				text = text + pos;				pos = 0;				page ++;			}			while (text[pos] == '\n' || text[pos] == '\r')				text++;		}		else			pos++;	}	if (pos)	{		if (! split_text)			split_text = (UNICODE **) HMalloc (sizeof (UNICODE *) * (page + 1));		else			split_text = (UNICODE **) HRealloc (split_text, 					sizeof (UNICODE *) * (page + 1));		split_text[page] = HMalloc (sizeof (UNICODE) * (pos + ellips + 1));		if (ellips)			wstrcpy (split_text[page], "..");		wstrncpy (split_text[page] + ellips, text, pos);		*(split_text[page] + ellips + pos) = 0;		timestamp[page] = - pos * TEXT_SPEED;		page ++;	}	*num_pages = page;	return (split_text);}