(svn r2868) Change the way NewGRFs are loaded: The loading process i no longer bolted onto the normal graphics loading.
This has two major advantages:
- Removal of a maze of global variables and distinction of cases from the sprite loading routines, which weren't directly related to the loading process in the first place
- NewGRF actions no longer occupy sprite slots - for example when using DBSetXL this saves about 2000 slots! (you could regard this as a bug fix)
If i didn't make a major mistake this change should have no negative effect on NewGRF support, please test!
/* $Id$ */
#ifndef STRING_H
#define STRING_H
/*
* dst: destination buffer
* src: string to copy/concatenate
* size: size of the destination buffer
* usage: ttd_strlcpy(dst, src, lengthof(dst));
*/
void ttd_strlcat(char *dst, const char *src, size_t size);
void ttd_strlcpy(char *dst, const char *src, size_t size);
/*
* dst: destination buffer
* src: string to copy
* last: pointer to the last element in the dst array
* if NULL no boundary check is performed
* returns a pointer to the terminating \0 in the destination buffer
* usage: strecpy(dst, src, lastof(dst));
*/
char* strecat(char* dst, const char* src, const char* last);
char* strecpy(char* dst, const char* src, const char* last);
char* CDECL str_fmt(const char* str, ...);
#endif