summaryrefslogtreecommitdiffstats
path: root/xalloc.c
diff options
context:
space:
mode:
Diffstat (limited to 'xalloc.c')
-rw-r--r--xalloc.c205
1 files changed, 0 insertions, 205 deletions
diff --git a/xalloc.c b/xalloc.c
deleted file mode 100644
index 23ff234..0000000
--- a/xalloc.c
+++ /dev/null
@@ -1,205 +0,0 @@
-/* XALLOC -- X's internal memory allocator. Why does it return unsigned
- * long * instead of the more common char *? Well, if you read K&R you'll
- * see they say that alloc must return a pointer "suitable for conversion"
- * to whatever type you really want. In a full-blown generic allocator
- * there's no way to solve the alignment problems without potentially
- * wasting lots of space. But we have a more limited problem. We know
- * we're only ever returning pointers to structures which will have to
- * be long word aligned. So we are making a stronger guarantee. It might
- * have made sense to make Xalloc return char * to conform with people's
- * expectations of malloc, but this makes lint happier.
- */
-
-#ifdef WIN32
-#include <X11/Xwinsock.h>
-#endif
-#include "X11/Xos.h"
-#include <stdio.h>
-#include "Xserver/misc.h"
-#include "X11/X.h"
-#include "Xserver/input.h"
-#include "Xserver/opaque.h"
-#ifdef X_POSIX_C_SOURCE
-#define _POSIX_C_SOURCE X_POSIX_C_SOURCE
-#include <signal.h>
-#undef _POSIX_C_SOURCE
-#else
-#if defined(X_NOT_POSIX) || defined(_POSIX_SOURCE)
-#include <signal.h>
-#else
-#define _POSIX_SOURCE
-#include <signal.h>
-#undef _POSIX_SOURCE
-#endif
-#endif
-#if !defined(SYSV) && !defined(AMOEBA) && !defined(_MINIX) && !defined(WIN32) && !defined(Lynx)
-#include <sys/resource.h>
-#endif
-#include <time.h>
-#include <sys/stat.h>
-#include <ctype.h> /* for isspace */
-#if NeedVarargsPrototypes
-#include <stdarg.h>
-#endif
-#ifdef __sgi__
-#undef abs
-#endif
-#include <stdlib.h>
-
-#ifndef INTERNAL_MALLOC
-
-Bool Must_have_memory = FALSE;
-
-unsigned long *
-Xalloc (amount)
- unsigned long amount;
-{
-#if !defined(__STDC__) && !defined(AMOEBA)
- char *malloc();
-#endif
- register pointer ptr;
-
- if ((long)amount <= 0) {
- return (unsigned long *)NULL;
- }
- /* aligned extra on long word boundary */
- amount = (amount + (sizeof(long) - 1)) & ~(sizeof(long) - 1);
-#ifdef MEMBUG
- if (!Must_have_memory && Memory_fail &&
- ((random() % MEM_FAIL_SCALE) < Memory_fail))
- return (unsigned long *)NULL;
-#endif
- if ((ptr = (pointer)malloc(amount))) {
- return (unsigned long *)ptr;
- }
- if (Must_have_memory)
- FatalError("Out of memory");
- return (unsigned long *)NULL;
-}
-
-/*****************
- * XNFalloc
- * "no failure" realloc, alternate interface to Xalloc w/o Must_have_memory
- *****************/
-
-unsigned long *
-XNFalloc (amount)
- unsigned long amount;
-{
-#if !defined(__STDC__) && !defined(AMOEBA)
- char *malloc();
-#endif
- register pointer ptr;
-
- if ((long)amount <= 0)
- {
- return (unsigned long *)NULL;
- }
- /* aligned extra on long word boundary */
- amount = (amount + (sizeof(long) - 1)) & ~(sizeof(long) - 1);
- ptr = (pointer)malloc(amount);
- if (!ptr)
- {
- FatalError("Out of memory");
- }
- return ((unsigned long *)ptr);
-}
-
-/*****************
- * Xcalloc
- *****************/
-
-unsigned long *
-Xcalloc (amount)
- unsigned long amount;
-{
- unsigned long *ret;
-
- ret = Xalloc (amount);
- if (ret)
- bzero ((char *) ret, (int) amount);
- return ret;
-}
-
-/*****************
- * Xrealloc
- *****************/
-
-unsigned long *
-Xrealloc (ptr, amount)
- register pointer ptr;
- unsigned long amount;
-{
-#if !defined(__STDC__) && !defined(AMOEBA)
- char *malloc();
- char *realloc();
-#endif
-
-#ifdef MEMBUG
- if (!Must_have_memory && Memory_fail &&
- ((random() % MEM_FAIL_SCALE) < Memory_fail))
- return (unsigned long *)NULL;
-#endif
- if ((long)amount <= 0)
- {
- if (ptr && !amount)
- free(ptr);
- return (unsigned long *)NULL;
- }
- amount = (amount + (sizeof(long) - 1)) & ~(sizeof(long) - 1);
- if (ptr)
- ptr = (pointer)realloc((char *)ptr, amount);
- else
- ptr = (pointer)malloc(amount);
- if (ptr)
- return (unsigned long *)ptr;
- if (Must_have_memory)
- FatalError("Out of memory");
- return (unsigned long *)NULL;
-}
-
-/*****************
- * XNFrealloc
- * "no failure" realloc, alternate interface to Xrealloc w/o Must_have_memory
- *****************/
-
-unsigned long *
-XNFrealloc (ptr, amount)
- register pointer ptr;
- unsigned long amount;
-{
- if (( ptr = (pointer)Xrealloc( ptr, amount ) ) == NULL)
- {
- FatalError( "Out of memory" );
- }
- return ((unsigned long *)ptr);
-}
-
-/*****************
- * Xfree
- * calls free
- *****************/
-
-void
-Xfree(ptr)
- register pointer ptr;
-{
- if (ptr)
- free((char *)ptr);
-}
-
-void
-FatalError(char *f, ...)
-{
- va_list args;
-
- fprintf(stderr, "\nFatal server error:\n");
- va_start(args, f);
- vfprintf(stderr, f, args);
- va_end(args);
- fprintf(stderr, "\n");
-
- exit(1);
-}
-
-#endif