#include <stdio.h>
#include <stdlib.h>
+#include <string.h>
#include "enums.h"
+#include "tmpalloc.h"
typedef struct sEnumInfo
{
const char *name;
} EnumInfo;
-#include "enums.table"
-
-char *buffer = 0;
-unsigned buf_pos = 0;
-
-static char *buf_reserve(unsigned size)
-{
- char *ptr;
- if(!buffer)
- buffer = (char *)malloc(2048);
- if(buf_pos+size>2048)
- buf_pos = 0;
- ptr = buffer+buf_pos;
- buf_pos += size;
- return ptr;
-}
+#include "gensrc/enums.table"
const char *describe_enum(GLenum value, const char *categ)
{
if(enums[high].value==value)
return enums[high].name;
- ptr = buf_reserve(20);
+ ptr = (char *)tmpalloc(20);
snprintf(ptr, 20, "GLenum(0x%X)", value);
return ptr;
}
const char *describe_bitfield(int mask, const char *categ)
{
int bit;
- char *buf = buf_reserve(200);
+ char *buf = (char *)tmpalloc(200);
char *ptr = buf;
for(bit=1; bit; bit<<=1)