-// -*- C++ -*-
-/* Copyright (C) 1989-2018 Free Software Foundation, Inc.
+/* Copyright (C) 1989-2020 Free Software Foundation, Inc.
Written by James Clark (jjc@jclark.com)
This file is part of groff.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
#include <stdlib.h>
#include "lib.h"
static void sfree(char *ptr, int)
{
- a_delete ptr;
+ delete[] ptr;
}
static char *sfree_alloc(char *ptr, int oldsz, int len, int *sizep)
*sizep = oldsz;
return ptr;
}
- a_delete ptr;
+ delete[] ptr;
if (len == 0) {
*sizep = 0;
return 0;
return ptr;
}
if (newlen == 0) {
- a_delete ptr;
+ delete[] ptr;
*sizep = 0;
return 0;
}
char *p = new char[*sizep = newlen*2];
if (oldlen < newlen && oldlen != 0)
memcpy(p, ptr, oldlen);
- a_delete ptr;
+ delete[] ptr;
return p;
}
}
int string::search(char c) const
{
- char *p = ptr ? (char *)memchr(ptr, c, len) : NULL;
+ char *p = ptr ? (char *)memchr(ptr, c, len) : 0;
return p ? p - ptr : -1;
}
if (p[i] == '\0')
nnuls++;
char *q =(char*)malloc(n + 1 - nnuls);
- char *r = q;
- for (i = 0; i < n; i++)
- if (p[i] != '\0')
- *r++ = p[i];
- *r = '\0';
+ if (q != 0 /* nullptr */) {
+ char *r = q;
+ for (i = 0; i < n; i++)
+ if (p[i] != '\0')
+ *r++ = p[i];
+ *r = '\0';
+ }
return q;
}
len = l + 1;
char *tmp = new char[sz];
memcpy(tmp, p, len);
- a_delete ptr;
+ delete[] ptr;
ptr = tmp;
}
else {
len = 0;
if (ptr) {
- a_delete ptr;
+ delete[] ptr;
ptr = 0;
sz = 0;
}
return string(buf);
}
+// Local Variables:
+// fill-column: 72
+// mode: C++
+// End:
+// vim: set cindent noexpandtab shiftwidth=2 textwidth=72: