112 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			112 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			C
		
	
	
	
 | 
						|
#ifdef HAVE_XORG_CONFIG_H
 | 
						|
#include <xorg-config.h>
 | 
						|
#endif
 | 
						|
 | 
						|
#include <X11/X.h>
 | 
						|
#include "os.h"
 | 
						|
#include "xf86.h"
 | 
						|
#include "xf86Priv.h"
 | 
						|
 | 
						|
/*
 | 
						|
 * Utility functions required by libxf86_os. 
 | 
						|
 */
 | 
						|
 | 
						|
_X_EXPORT pointer
 | 
						|
Xalloc(unsigned long n)
 | 
						|
{
 | 
						|
    if (!n)
 | 
						|
	n = 1;
 | 
						|
    return malloc(n);
 | 
						|
}
 | 
						|
 | 
						|
_X_EXPORT pointer
 | 
						|
Xrealloc(pointer p, unsigned long n)
 | 
						|
{
 | 
						|
    if (!n)
 | 
						|
	n = 1;
 | 
						|
    return realloc(p, n);
 | 
						|
}
 | 
						|
 | 
						|
_X_EXPORT pointer
 | 
						|
Xcalloc(unsigned long n)
 | 
						|
{
 | 
						|
    pointer r;
 | 
						|
 | 
						|
    r = Xalloc(n);
 | 
						|
    memset(r, 0, n);
 | 
						|
    return r;
 | 
						|
}
 | 
						|
 | 
						|
_X_EXPORT pointer
 | 
						|
XNFalloc(unsigned long n)
 | 
						|
{
 | 
						|
    pointer r;
 | 
						|
 | 
						|
    r = Xalloc(n);
 | 
						|
    if (!r)
 | 
						|
	FatalError("XNFalloc failed\n");
 | 
						|
    return r;
 | 
						|
   
 | 
						|
}
 | 
						|
 | 
						|
_X_EXPORT pointer
 | 
						|
XNFrealloc(pointer p, unsigned long n)
 | 
						|
{
 | 
						|
    pointer r;
 | 
						|
 | 
						|
    r = Xrealloc(p, n);
 | 
						|
    if (!r)
 | 
						|
	FatalError("XNFrealloc failed\n");
 | 
						|
    return r;
 | 
						|
   
 | 
						|
}
 | 
						|
 | 
						|
_X_EXPORT pointer
 | 
						|
XNFcalloc(unsigned long n)
 | 
						|
{
 | 
						|
    pointer r;
 | 
						|
 | 
						|
    r = Xcalloc(n);
 | 
						|
    if (!r)
 | 
						|
	FatalError("XNFcalloc failed\n");
 | 
						|
    return r;
 | 
						|
   
 | 
						|
}
 | 
						|
 | 
						|
_X_EXPORT void
 | 
						|
Xfree(pointer p)
 | 
						|
{
 | 
						|
    free(p);
 | 
						|
}
 | 
						|
 | 
						|
_X_EXPORT char *
 | 
						|
Xstrdup(const char *s)
 | 
						|
{
 | 
						|
    char *sd;
 | 
						|
 | 
						|
    if (s == NULL)
 | 
						|
	return NULL;
 | 
						|
 | 
						|
    sd = (char *)Xalloc(strlen(s) + 1);
 | 
						|
    if (sd != NULL)
 | 
						|
	strcpy(sd, s);
 | 
						|
    return sd;
 | 
						|
}
 | 
						|
 | 
						|
char *
 | 
						|
XNFstrdup(const char *s)
 | 
						|
{
 | 
						|
    char *sd;
 | 
						|
    size_t len;
 | 
						|
 | 
						|
    if (s == NULL)
 | 
						|
	return NULL;
 | 
						|
    
 | 
						|
    len = strlen(s) + 1;
 | 
						|
    sd = (char *)XNFalloc(len);
 | 
						|
    strlcpy(sd, s, len);
 | 
						|
    return sd;
 | 
						|
}
 | 
						|
 |