base_memory.c.svn-base

来自「SumatraPDF是一款小型开源的pdf阅读工具。虽然玲珑小巧(只有800多K」· SVN-BASE 代码 · 共 80 行

SVN-BASE
80
字号
#include "fitz-base.h"/* Make this thread local storage if you wish.  */static void *stdmalloc(fz_memorycontext *mem, int n){	return malloc(n);}static void *stdrealloc(fz_memorycontext *mem, void *p, int n){	return realloc(p, n);}static void stdfree(fz_memorycontext *mem, void *p){	free(p);}static fz_memorycontext defmem = { stdmalloc, stdrealloc, stdfree };static fz_memorycontext *curmem = &defmem;fz_error fz_koutofmem = {	{"out of memory"},	{"<internal>"},	{"<internal>"},	0,	nil};fz_memorycontext *fz_currentmemorycontext(){	return curmem;}voidfz_setmemorycontext(fz_memorycontext *mem){	curmem = mem;}void *fz_malloc(int n){    fz_memorycontext *mem = fz_currentmemorycontext();    void *p = mem->malloc(mem, n);    if (!p)	fz_warn("cannot malloc %d bytes", n);    return p;}void *fz_realloc(void *p, int n){    fz_memorycontext *mem = fz_currentmemorycontext();    void *np = mem->realloc(mem, p, n);    if (np == nil)	fz_warn("cannot realloc %d bytes", n);    return np;}voidfz_free(void *p){	fz_memorycontext *mem = fz_currentmemorycontext();	mem->free(mem, p);}char *fz_strdup(char *s){	int len = strlen(s);	char *ns = fz_malloc(len + 1);	if (ns)		strcpy(ns, s);	return ns;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?