Orphan.
authorjbj <devnull@localhost>
Wed, 22 Sep 1999 16:34:08 +0000 (16:34 +0000)
committerjbj <devnull@localhost>
Wed, 22 Sep 1999 16:34:08 +0000 (16:34 +0000)
CVS patchset: 3316
CVS date: 1999/09/22 16:34:08

lib/rpmmalloc.c [new file with mode: 0644]
rpmio/rpmmalloc.c [new file with mode: 0644]

diff --git a/lib/rpmmalloc.c b/lib/rpmmalloc.c
new file mode 100644 (file)
index 0000000..7ba9d67
--- /dev/null
@@ -0,0 +1,44 @@
+#include "system.h"
+
+void *vmefail(void)
+{
+    err(EXIT_FAILURE, "virtual memory exhausted");
+    return NULL;
+}
+
+#if !(HAVE_MCHECK_H && defined(__GNUC__))
+
+void * xmalloc (size_t size)
+{
+    register void *value = malloc (size);
+    if (value == 0)
+       value = vmefail();
+    return value;
+}
+
+void * xcalloc (size_t nmemb, size_t size)
+{
+    register void *value = calloc (nmemb, size);
+    if (value == 0)
+       value = vmefail();
+    return value;
+}
+
+void * xrealloc (void *ptr, size_t size)
+{
+    register void *value = realloc (ptr, size);
+    if (value == 0)
+       value = vmefail();
+    return value;
+}
+
+char * xstrdup (const char *str)
+{
+    char *newstr = (char *) malloc (strlen(str) + 1);
+    if (newstr == 0)
+       newstr = (char *) vmefail();
+    strcpy (newstr, str);
+    return newstr;
+}
+
+#endif /* !(HAVE_MCHECK_H && defined(__GNUC__)) */
diff --git a/rpmio/rpmmalloc.c b/rpmio/rpmmalloc.c
new file mode 100644 (file)
index 0000000..7ba9d67
--- /dev/null
@@ -0,0 +1,44 @@
+#include "system.h"
+
+void *vmefail(void)
+{
+    err(EXIT_FAILURE, "virtual memory exhausted");
+    return NULL;
+}
+
+#if !(HAVE_MCHECK_H && defined(__GNUC__))
+
+void * xmalloc (size_t size)
+{
+    register void *value = malloc (size);
+    if (value == 0)
+       value = vmefail();
+    return value;
+}
+
+void * xcalloc (size_t nmemb, size_t size)
+{
+    register void *value = calloc (nmemb, size);
+    if (value == 0)
+       value = vmefail();
+    return value;
+}
+
+void * xrealloc (void *ptr, size_t size)
+{
+    register void *value = realloc (ptr, size);
+    if (value == 0)
+       value = vmefail();
+    return value;
+}
+
+char * xstrdup (const char *str)
+{
+    char *newstr = (char *) malloc (strlen(str) + 1);
+    if (newstr == 0)
+       newstr = (char *) vmefail();
+    strcpy (newstr, str);
+    return newstr;
+}
+
+#endif /* !(HAVE_MCHECK_H && defined(__GNUC__)) */