1 /* $NetBSD: realloc.c,v 1.1.1.1 2016/01/10 21:36:18 christos Exp $ */ 2 3 /* rpl_realloc.c -- a replacement for broken realloc implementations 4 Copyright (C) 2001 Free Software Foundation, Inc. 5 6 This program is free software; you can redistribute it and/or modify 7 it under the terms of the GNU General Public License as published by 8 the Free Software Foundation; either version 2, or (at your option) 9 any later version. 10 11 This program is distributed in the hope that it will be useful, 12 but WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 GNU General Public License for more details. 15 16 You should have received a copy of the GNU General Public License 17 along with this program; if not, write to the Free Software Foundation, 18 Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ 19 20 #include <stdlib.h> 21 22 void * 23 rpl_realloc(void *ptr, size_t size) 24 { 25 if (!ptr) 26 return malloc(size); 27 if (!size) 28 { 29 if (ptr) 30 free(ptr); 31 return malloc(size); 32 } 33 return realloc(ptr, size); 34 } 35