diff options
author | unknown <vva@eagle.mysql.r18.ru> | 2003-01-18 20:53:46 +0400 |
---|---|---|
committer | unknown <vva@eagle.mysql.r18.ru> | 2003-01-18 20:53:46 +0400 |
commit | ced07d7f6551d28df5c82c39bda63c711b78d815 (patch) | |
tree | b7bd5d680489b53e3078fbc3f102260170be04e5 /cmd-line-utils/readline/xmalloc.c | |
parent | 316029ab011dd51d2a652a76a4a72a633b9eb938 (diff) | |
download | mariadb-git-ced07d7f6551d28df5c82c39bda63c711b78d815.tar.gz |
move readline to cmd-line-utils
cmd-line-utils/readline/.cvsignore:
mvdir
cmd-line-utils/readline/COPYING:
mvdir
cmd-line-utils/readline/INSTALL:
mvdir
cmd-line-utils/readline/Makefile.am:
mvdir
cmd-line-utils/readline/README:
mvdir
cmd-line-utils/readline/ansi_stdlib.h:
mvdir
cmd-line-utils/readline/bind.c:
mvdir
cmd-line-utils/readline/callback.c:
mvdir
cmd-line-utils/readline/chardefs.h:
mvdir
cmd-line-utils/readline/complete.c:
mvdir
cmd-line-utils/readline/configure.in:
mvdir
cmd-line-utils/readline/display.c:
mvdir
cmd-line-utils/readline/emacs_keymap.c:
mvdir
cmd-line-utils/readline/funmap.c:
mvdir
cmd-line-utils/readline/histexpand.c:
mvdir
cmd-line-utils/readline/histfile.c:
mvdir
cmd-line-utils/readline/histlib.h:
mvdir
cmd-line-utils/readline/history.c:
mvdir
cmd-line-utils/readline/history.h:
mvdir
cmd-line-utils/readline/histsearch.c:
mvdir
cmd-line-utils/readline/input.c:
mvdir
cmd-line-utils/readline/isearch.c:
mvdir
cmd-line-utils/readline/keymaps.c:
mvdir
cmd-line-utils/readline/keymaps.h:
mvdir
cmd-line-utils/readline/kill.c:
mvdir
cmd-line-utils/readline/macro.c:
mvdir
cmd-line-utils/readline/mbutil.c:
mvdir
cmd-line-utils/readline/misc.c:
mvdir
cmd-line-utils/readline/nls.c:
mvdir
cmd-line-utils/readline/parens.c:
mvdir
cmd-line-utils/readline/posixdir.h:
mvdir
cmd-line-utils/readline/posixjmp.h:
mvdir
cmd-line-utils/readline/posixstat.h:
mvdir
cmd-line-utils/readline/readline.c:
mvdir
cmd-line-utils/readline/readline.h:
mvdir
cmd-line-utils/readline/rlconf.h:
mvdir
cmd-line-utils/readline/rldefs.h:
mvdir
cmd-line-utils/readline/rlmbutil.h:
mvdir
cmd-line-utils/readline/rlprivate.h:
mvdir
cmd-line-utils/readline/rlshell.h:
mvdir
cmd-line-utils/readline/rlstdc.h:
mvdir
cmd-line-utils/readline/rltty.c:
mvdir
cmd-line-utils/readline/rltty.h:
mvdir
cmd-line-utils/readline/rltypedefs.h:
mvdir
cmd-line-utils/readline/rlwinsize.h:
mvdir
cmd-line-utils/readline/search.c:
mvdir
cmd-line-utils/readline/shell.c:
mvdir
cmd-line-utils/readline/signals.c:
mvdir
cmd-line-utils/readline/tcap.h:
mvdir
cmd-line-utils/readline/terminal.c:
mvdir
cmd-line-utils/readline/text.c:
mvdir
cmd-line-utils/readline/tilde.c:
mvdir
cmd-line-utils/readline/tilde.h:
mvdir
cmd-line-utils/readline/undo.c:
mvdir
cmd-line-utils/readline/util.c:
mvdir
cmd-line-utils/readline/vi_keymap.c:
mvdir
cmd-line-utils/readline/vi_mode.c:
mvdir
cmd-line-utils/readline/xmalloc.c:
mvdir
cmd-line-utils/readline/xmalloc.h:
mvdir
Diffstat (limited to 'cmd-line-utils/readline/xmalloc.c')
-rw-r--r-- | cmd-line-utils/readline/xmalloc.c | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/cmd-line-utils/readline/xmalloc.c b/cmd-line-utils/readline/xmalloc.c new file mode 100644 index 00000000000..8985d340d39 --- /dev/null +++ b/cmd-line-utils/readline/xmalloc.c @@ -0,0 +1,88 @@ +/* xmalloc.c -- safe versions of malloc and realloc */ + +/* Copyright (C) 1991 Free Software Foundation, Inc. + + This file is part of GNU Readline, a library for reading lines + of text with interactive input and history editing. + + Readline is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the + Free Software Foundation; either version 2, or (at your option) any + later version. + + Readline is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with Readline; see the file COPYING. If not, write to the Free + Software Foundation, 59 Temple Place, Suite 330, Boston, MA 02111 USA. */ +#define READLINE_LIBRARY + +#if defined (HAVE_CONFIG_H) +#include <config.h> +#endif + +#include <stdio.h> + +#if defined (HAVE_STDLIB_H) +# include <stdlib.h> +#else +# include "ansi_stdlib.h" +#endif /* HAVE_STDLIB_H */ + +#include "xmalloc.h" + +/* **************************************************************** */ +/* */ +/* Memory Allocation and Deallocation. */ +/* */ +/* **************************************************************** */ + +static void +memory_error_and_abort (fname) + char *fname; +{ + fprintf (stderr, "%s: out of virtual memory\n", fname); + exit (2); +} + +/* Return a pointer to free()able block of memory large enough + to hold BYTES number of bytes. If the memory cannot be allocated, + print an error message and abort. */ +PTR_T +xmalloc (bytes) + size_t bytes; +{ + PTR_T temp; + + temp = malloc (bytes); + if (temp == 0) + memory_error_and_abort ("xmalloc"); + return (temp); +} + +PTR_T +xrealloc (pointer, bytes) + PTR_T pointer; + size_t bytes; +{ + PTR_T temp; + + temp = pointer ? realloc (pointer, bytes) : malloc (bytes); + + if (temp == 0) + memory_error_and_abort ("xrealloc"); + return (temp); +} + +/* Use this as the function to call when adding unwind protects so we + don't need to know what free() returns. */ +void +xfree (string) + PTR_T string; +{ + if (string) + free (string); +} |