mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-07 02:19:54 +00:00
kbuild: split x*alloc() functions in kconfig to scripts/include/xalloc.h
These functions will be useful for other host programs. Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
This commit is contained in:
53
scripts/include/xalloc.h
Normal file
53
scripts/include/xalloc.h
Normal file
@@ -0,0 +1,53 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
|
||||
#ifndef XALLOC_H
|
||||
#define XALLOC_H
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
static inline void *xmalloc(size_t size)
|
||||
{
|
||||
void *p = malloc(size);
|
||||
|
||||
if (!p)
|
||||
exit(1);
|
||||
return p;
|
||||
}
|
||||
|
||||
static inline void *xcalloc(size_t nmemb, size_t size)
|
||||
{
|
||||
void *p = calloc(nmemb, size);
|
||||
|
||||
if (!p)
|
||||
exit(1);
|
||||
return p;
|
||||
}
|
||||
|
||||
static inline void *xrealloc(void *p, size_t size)
|
||||
{
|
||||
p = realloc(p, size);
|
||||
if (!p)
|
||||
exit(1);
|
||||
return p;
|
||||
}
|
||||
|
||||
static inline char *xstrdup(const char *s)
|
||||
{
|
||||
char *p = strdup(s);
|
||||
|
||||
if (!p)
|
||||
exit(1);
|
||||
return p;
|
||||
}
|
||||
|
||||
static inline char *xstrndup(const char *s, size_t n)
|
||||
{
|
||||
char *p = strndup(s, n);
|
||||
|
||||
if (!p)
|
||||
exit(1);
|
||||
return p;
|
||||
}
|
||||
|
||||
#endif /* XALLOC_H */
|
||||
Reference in New Issue
Block a user