> > --- common/screen.c 12 Nov 2014 04:28:41 -0000 1.11
> > +++ common/screen.c 12 Nov 2014 07:20:51 -0000
> > @@ -84,16 +84,16 @@
> > goto mem;
> > sp->subre_len = orig->subre_len;
> > if (orig->repl != NULL && (sp->repl =
> > - v_strdup(sp, orig->repl, orig->repl_len)) == NULL)
> > - goto mem;
> > + v_strdup(sp, orig->repl, orig->repl_len)) == NULL) {
> > +mem: msgq(orig, M_SYSERR, NULL);
> > + goto err;
> > + }
> > sp->repl_len = orig->repl_len;
> > if (orig->newl_len) {
> > len = orig->newl_len * sizeof(size_t);
> > - MALLOC(sp, sp->newl, size_t *, len);
> > - if (sp->newl == NULL) {
> > -mem: msgq(orig, M_SYSERR, NULL);
> > + MALLOC(sp, sp->newl, len);
> > + if (sp->newl == NULL)
> > goto err;
> > - }
>
> I think this is better left as-is with the MALLOC converted to
> malloc(). Otherwise, msgq() is called with sp instead of orig.
Thank you for finding this issue! Updated diff below (including the removal
of the unused variables you've found).
cheers,
natano
Index: cl/cl_main.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/cl/cl_main.c,v
retrieving revision 1.23
diff -u -r1.23 cl_main.c
--- cl/cl_main.c 12 Nov 2014 16:29:04 -0000 1.23
+++ cl/cl_main.c 12 Nov 2014 18:39:27 -0000
@@ -151,11 +151,10 @@
name = p + 1;
/* Allocate the global structure. */
- CALLOC_NOMSG(NULL, gp, GS *, 1, sizeof(GS));
+ gp = calloc(1, sizeof(GS));
if (gp == NULL)
perr(name, NULL);
-
gp->progname = name;
return (gp);
}
@@ -171,7 +170,7 @@
int fd;
/* Allocate the CL private structure. */
- CALLOC_NOMSG(NULL, clp, CL_PRIVATE *, 1, sizeof(CL_PRIVATE));
+ clp = calloc(1, sizeof(CL_PRIVATE));
if (clp == NULL)
perr(gp->progname, NULL);
gp->cl_private = clp;
Index: cl/cl_screen.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/cl/cl_screen.c,v
retrieving revision 1.22
diff -u -r1.22 cl_screen.c
--- cl/cl_screen.c 12 Nov 2014 16:29:04 -0000 1.22
+++ cl/cl_screen.c 12 Nov 2014 18:39:27 -0000
@@ -501,7 +501,7 @@
if ((t = tigetstr(name)) != NULL &&
t != (char *)-1 && (len = strlen(t)) != 0) {
- MALLOC_RET(sp, *elementp, char *, len + 1);
+ MALLOC_RET(sp, *elementp, len + 1);
memmove(*elementp, t, len + 1);
}
return (0);
Index: common/api.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/common/api.c,v
retrieving revision 1.16
diff -u -r1.16 api.c
--- common/api.c 12 Nov 2014 04:28:41 -0000 1.16
+++ common/api.c 12 Nov 2014 18:39:27 -0000
@@ -380,7 +380,7 @@
case OPT_0BOOL:
case OPT_1BOOL:
len = strlen(op->name) + 2 + 1;
- MALLOC_RET(sp, *value, char *, len);
+ MALLOC_RET(sp, *value, len);
(void)snprintf(*value, len,
"%s%s", O_ISSET(sp, offset) ? "" : "no", op->name);
if (boolvalue != NULL)
@@ -388,17 +388,16 @@
break;
case OPT_NUM:
len = 20;
- MALLOC_RET(sp, *value, char *, len);
+ MALLOC_RET(sp, *value, len);
(void)snprintf(*value, len, "%lu", (u_long)O_VAL(sp, offset));
break;
case OPT_STR:
if (O_STR(sp, offset) == NULL) {
- MALLOC_RET(sp, *value, char *, 2);
+ MALLOC_RET(sp, *value, 1);
value[0] = '\0';
} else {
len = strlen(O_STR(sp, offset)) + 1;
- MALLOC_RET(sp,
- *value, char *, len);
+ MALLOC_RET(sp, *value, len);
(void)snprintf(*value, len, "%s", O_STR(sp, offset));
}
break;
Index: common/cut.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/common/cut.c,v
retrieving revision 1.13
diff -u -r1.13 cut.c
--- common/cut.c 12 Nov 2014 04:28:41 -0000 1.13
+++ common/cut.c 12 Nov 2014 18:39:27 -0000
@@ -119,7 +119,7 @@
* Otherwise, if it's not an append, free its current contents.
*/
if (cbp == NULL) {
- CALLOC_RET(sp, cbp, CB *, 1, sizeof(CB));
+ CALLOC_RET(sp, cbp, 1, sizeof(CB));
cbp->name = name;
TAILQ_INIT(&cbp->textq);
LIST_INSERT_HEAD(&sp->gp->cutq, cbp, q);
@@ -300,12 +300,12 @@
{
TEXT *tp;
- CALLOC(sp, tp, TEXT *, 1, sizeof(TEXT));
+ CALLOC(sp, tp, 1, sizeof(TEXT));
if (tp == NULL)
return (NULL);
/* ANSI C doesn't define a call to malloc(3) for 0 bytes. */
if ((tp->lb_len = total_len) != 0) {
- MALLOC(sp, tp->lb, CHAR_T *, tp->lb_len);
+ MALLOC(sp, tp->lb, tp->lb_len);
if (tp->lb == NULL) {
free(tp);
return (NULL);
Index: common/exf.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/common/exf.c,v
retrieving revision 1.31
diff -u -r1.31 exf.c
--- common/exf.c 12 Nov 2014 16:29:04 -0000 1.31
+++ common/exf.c 12 Nov 2014 18:39:27 -0000
@@ -85,7 +85,7 @@
}
/* Allocate and initialize the FREF structure. */
- CALLOC(sp, frp, FREF *, 1, sizeof(FREF));
+ CALLOC(sp, frp, 1, sizeof(FREF));
if (frp == NULL)
return (NULL);
@@ -152,7 +152,7 @@
* Default recover mail file fd to -1.
* Set initial EXF flag bits.
*/
- CALLOC_RET(sp, ep, EXF *, 1, sizeof(EXF));
+ CALLOC_RET(sp, ep, 1, sizeof(EXF));
ep->c_lno = ep->c_nlines = OOBLNO;
ep->rcv_fd = ep->fcntl_fd = -1;
F_SET(ep, F_FIRSTMODIFY);
@@ -496,7 +496,7 @@
/* If we found it, build a new pathname and discard the old one. */
if (found) {
- MALLOC_RET(sp, p, char *, len + 1);
+ MALLOC_RET(sp, p, len + 1);
memcpy(p, path, len + 1);
free(frp->name);
frp->name = p;
Index: common/key.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/common/key.c,v
retrieving revision 1.13
diff -u -r1.13 key.c
--- common/key.c 12 Nov 2014 04:28:41 -0000 1.13
+++ common/key.c 12 Nov 2014 18:39:27 -0000
@@ -347,8 +347,8 @@
if (total >= gp->i_nelem && v_event_grow(sp, MAX(total, 64)))
return (1);
if (gp->i_cnt)
- MEMMOVE(gp->i_event + TERM_PUSH_SHIFT + nitems,
- gp->i_event + gp->i_next, gp->i_cnt);
+ memmove(gp->i_event + TERM_PUSH_SHIFT + nitems,
+ gp->i_event + gp->i_next, gp->i_cnt * sizeof(EVENT));
gp->i_next = TERM_PUSH_SHIFT;
/* Put the new items into the queue. */
Index: common/main.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/common/main.c,v
retrieving revision 1.23
diff -u -r1.23 main.c
--- common/main.c 12 Nov 2014 04:28:41 -0000 1.23
+++ common/main.c 12 Nov 2014 18:44:01 -0000
@@ -346,15 +346,12 @@
*/
if (*argv != NULL) {
if (sp->frp != NULL) {
- size_t l;
/* Cheat -- we know we have an extra argv slot. */
- l = strlen(sp->frp->name) + 1;
- MALLOC_NOMSG(sp, *--argv, char *, l);
+ *--argv = strdup(sp->frp->name);
if (*argv == NULL) {
v_estr(gp->progname, errno, NULL);
goto err;
}
- (void)strlcpy(*argv, sp->frp->name, l);
}
sp->argv = sp->cargv = argv;
F_SET(sp, SC_ARGNOFREE);
@@ -531,9 +528,6 @@
static int
v_obsolete(char *name, char *argv[])
{
- size_t len;
- char *p;
-
/*
* Translate old style arguments into something getopt will like.
* Make sure it's not text space memory, because ex modifies the
@@ -554,14 +548,8 @@
if (argv[0] == NULL)
goto nomem;
} else {
- p = argv[0];
- len = strlen(argv[0]);
- MALLOC_NOMSG(NULL, argv[0], char *, len + 2);
- if (argv[0] == NULL)
+ if (asprintf(&argv[0], "-c%s", argv[0] + 1) ==
-1)
goto nomem;
- argv[0][0] = '-';
- argv[0][1] = 'c';
- (void)strlcpy(argv[0] + 2, p + 1, len);
}
} else if (argv[0][0] == '-') {
if (argv[0][1] == '\0') {
Index: common/mark.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/common/mark.c,v
retrieving revision 1.9
diff -u -r1.9 mark.c
--- common/mark.c 12 Nov 2014 04:28:41 -0000 1.9
+++ common/mark.c 12 Nov 2014 18:39:27 -0000
@@ -160,7 +160,7 @@
*/
lmp = mark_find(sp, key);
if (lmp == NULL || lmp->name != key) {
- MALLOC_RET(sp, lmt, LMARK *, sizeof(LMARK));
+ MALLOC_RET(sp, lmt, sizeof(LMARK));
if (lmp == NULL) {
LIST_INSERT_HEAD(&sp->ep->marks, lmt, q);
} else
Index: common/mem.h
===================================================================
RCS file: /cvs/src/usr.bin/vi/common/mem.h,v
retrieving revision 1.6
diff -u -r1.6 mem.h
--- common/mem.h 14 Oct 2014 22:23:12 -0000 1.6
+++ common/mem.h 12 Nov 2014 18:39:27 -0000
@@ -14,7 +14,7 @@
/* Increase the size of a malloc'd buffer. Two versions, one that
* returns, one that jumps to an error label.
*/
-#define BINC_GOTO(sp, lp, llen, nlen) {
\
+#define BINC_GOTO(sp, lp, llen, nlen) do {
\
void *L__bincp; \
if ((nlen) > (llen)) { \
if ((L__bincp = binc((sp), (lp), &(llen), (nlen))) \
@@ -26,8 +26,8 @@
*/ \
(lp) = L__bincp; \
} \
-}
-#define BINC_RET(sp, lp, llen, nlen) {
\
+} while (0)
+#define BINC_RET(sp, lp, llen, nlen) do {
\
void *L__bincp; \
if ((nlen) > (llen)) { \
if ((L__bincp = binc((sp), (lp), &(llen), (nlen))) \
@@ -39,14 +39,14 @@
*/ \
(lp) = L__bincp; \
} \
-}
+} while (0)
/*
* Get some temporary space, preferably from the global temporary buffer,
* from a malloc'd buffer otherwise. Two versions, one that returns, one
* that jumps to an error label.
*/
-#define GET_SPACE_GOTO(sp, bp, blen, nlen) {
\
+#define GET_SPACE_GOTO(sp, bp, blen, nlen) do {
\
GS *L__gp = (sp) == NULL ? NULL : (sp)->gp; \
if (L__gp == NULL || F_ISSET(L__gp, G_TMP_INUSE)) { \
(bp) = NULL; \
@@ -58,8 +58,8 @@
(blen) = L__gp->tmp_blen; \
F_SET(L__gp, G_TMP_INUSE); \
} \
-}
-#define GET_SPACE_RET(sp, bp, blen, nlen) {
\
+} while (0)
+#define GET_SPACE_RET(sp, bp, blen, nlen) do {
\
GS *L__gp = (sp) == NULL ? NULL : (sp)->gp; \
if (L__gp == NULL || F_ISSET(L__gp, G_TMP_INUSE)) { \
(bp) = NULL; \
@@ -71,13 +71,13 @@
(blen) = L__gp->tmp_blen; \
F_SET(L__gp, G_TMP_INUSE); \
} \
-}
+} while (0)
/*
* Add space to a GET_SPACE returned buffer. Two versions, one that
* returns, one that jumps to an error label.
*/
-#define ADD_SPACE_GOTO(sp, bp, blen, nlen) {
\
+#define ADD_SPACE_GOTO(sp, bp, blen, nlen) do {
\
GS *L__gp = (sp) == NULL ? NULL : (sp)->gp; \
if (L__gp == NULL || (bp) == L__gp->tmp_bp) { \
F_CLR(L__gp, G_TMP_INUSE); \
@@ -87,8 +87,8 @@
F_SET(L__gp, G_TMP_INUSE); \
} else \
BINC_GOTO((sp), (bp), (blen), (nlen)); \
-}
-#define ADD_SPACE_RET(sp, bp, blen, nlen) {
\
+} while (0)
+#define ADD_SPACE_RET(sp, bp, blen, nlen) do {
\
GS *L__gp = (sp) == NULL ? NULL : (sp)->gp; \
if (L__gp == NULL || (bp) == L__gp->tmp_bp) { \
F_CLR(L__gp, G_TMP_INUSE); \
@@ -98,76 +98,56 @@
F_SET(L__gp, G_TMP_INUSE); \
} else \
BINC_RET((sp), (bp), (blen), (nlen)); \
-}
+} while (0)
/* Free a GET_SPACE returned buffer. */
-#define FREE_SPACE(sp, bp, blen) {
\
+#define FREE_SPACE(sp, bp, blen) do {
\
GS *L__gp = (sp) == NULL ? NULL : (sp)->gp; \
if (L__gp != NULL && (bp) == L__gp->tmp_bp) \
F_CLR(L__gp, G_TMP_INUSE); \
else \
free(bp); \
-}
+} while (0)
/*
- * Malloc a buffer, casting the return pointer. Various versions.
- *
- * !!!
- * The cast should be unnecessary, malloc(3) and friends return void *'s,
- * which is all we need. However, some systems that nvi needs to run on
- * don't do it right yet, resulting in the compiler printing out roughly
- * a million warnings. After awhile, it seemed easier to put the casts
- * in instead of explaining it all the time.
+ * Malloc a buffer. Various versions.
*/
-#define CALLOC(sp, p, cast, nmemb, size) {
\
- if (((p) = (cast)calloc((nmemb), (size))) == NULL) \
+#define CALLOC(sp, p, nmemb, size) do {
\
+ if (((p) = calloc((nmemb), (size))) == NULL) \
msgq((sp), M_SYSERR, NULL); \
-}
-#define CALLOC_GOTO(sp, p, cast, nmemb, size) {
\
- if (((p) = (cast)calloc((nmemb), (size))) == NULL) \
+} while (0)
+#define CALLOC_GOTO(sp, p, nmemb, size) do {
\
+ if (((p) = calloc((nmemb), (size))) == NULL) \
goto alloc_err; \
-}
-#define CALLOC_NOMSG(sp, p, cast, nmemb, size) {
\
- (p) = (cast)calloc((nmemb), (size)); \
-}
-#define CALLOC_RET(sp, p, cast, nmemb, size) {
\
- if (((p) = (cast)calloc((nmemb), (size))) == NULL) { \
+} while (0)
+#define CALLOC_RET(sp, p, nmemb, size) do {
\
+ if (((p) = calloc((nmemb), (size))) == NULL) { \
msgq((sp), M_SYSERR, NULL); \
return (1); \
} \
-}
+} while (0)
-#define MALLOC(sp, p, cast, size) {
\
- if (((p) = (cast)malloc(size)) == NULL) \
+#define MALLOC(sp, p, size) do {
\
+ if (((p) = malloc(size)) == NULL) \
msgq((sp), M_SYSERR, NULL); \
-}
-#define MALLOC_GOTO(sp, p, cast, size) {
\
- if (((p) = (cast)malloc(size)) == NULL) \
+} while (0)
+#define MALLOC_GOTO(sp, p, size) do {
\
+ if (((p) = malloc(size)) == NULL) \
goto alloc_err; \
-}
-#define MALLOC_NOMSG(sp, p, cast, size) {
\
- (p) = (cast)malloc(size); \
-}
-#define MALLOC_RET(sp, p, cast, size) {
\
- if (((p) = (cast)malloc(size)) == NULL) { \
+} while (0)
+#define MALLOC_RET(sp, p, size) do {
\
+ if (((p) = malloc(size)) == NULL) { \
msgq((sp), M_SYSERR, NULL); \
return (1); \
} \
-}
+} while (0)
-#define REALLOC(sp, p, cast, size) {
\
- if (((p) = (cast)(realloc((p), (size)))) == NULL) \
+#define REALLOC(sp, p, size) do {
\
+ if (((p) = (realloc((p), (size)))) == NULL) \
msgq((sp), M_SYSERR, NULL); \
-}
+} while (0)
-#define REALLOCARRAY(sp, p, cast, nelem, size) {
\
- if (((p) = (cast)(reallocarray((p), (nelem), (size)))) == NULL) \
+#define REALLOCARRAY(sp, p, nelem, size) do {
\
+ if (((p) = (reallocarray((p), (nelem), (size)))) == NULL) \
msgq((sp), M_SYSERR, NULL); \
-}
-
-/*
- * Versions of memmove(3) and memset(3) that use the size of the
- * initial pointer to figure out how much memory to manipulate.
- */
-#define MEMMOVE(p, t, len) memmove((p), (t), (len) * sizeof(*(p)))
-#define MEMSET(p, value, len) memset((p), (value), (len) *
sizeof(*(p)))
+} while (0)
Index: common/screen.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/common/screen.c,v
retrieving revision 1.11
diff -u -r1.11 screen.c
--- common/screen.c 12 Nov 2014 04:28:41 -0000 1.11
+++ common/screen.c 12 Nov 2014 18:54:32 -0000
@@ -39,7 +39,7 @@
size_t len;
*spp = NULL;
- CALLOC_RET(orig, sp, SCR *, 1, sizeof(SCR));
+ CALLOC_RET(orig, sp, 1, sizeof(SCR));
*spp = sp;
/* INITIALIZED AT SCREEN CREATE. */
@@ -89,7 +89,7 @@
sp->repl_len = orig->repl_len;
if (orig->newl_len) {
len = orig->newl_len * sizeof(size_t);
- MALLOC(sp, sp->newl, size_t *, len);
+ sp->newl = malloc(len);
if (sp->newl == NULL) {
mem: msgq(orig, M_SYSERR, NULL);
goto err;
Index: common/seq.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/common/seq.c,v
retrieving revision 1.9
diff -u -r1.9 seq.c
--- common/seq.c 12 Nov 2014 04:28:41 -0000 1.9
+++ common/seq.c 12 Nov 2014 18:39:27 -0000
@@ -65,7 +65,7 @@
}
/* Allocate and initialize SEQ structure. */
- CALLOC(sp, qp, SEQ *, 1, sizeof(SEQ));
+ CALLOC(sp, qp, 1, sizeof(SEQ));
if (qp == NULL) {
sv_errno = errno;
goto mem1;
Index: common/util.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/common/util.c,v
retrieving revision 1.9
diff -u -r1.9 util.c
--- common/util.c 12 Nov 2014 04:28:41 -0000 1.9
+++ common/util.c 12 Nov 2014 18:39:27 -0000
@@ -40,7 +40,7 @@
return (bp);
csize = *bsizep + MAX(min, 256);
- REALLOC(sp, bp, void *, csize);
+ REALLOC(sp, bp, csize);
if (bp == NULL) {
/*
@@ -121,7 +121,7 @@
{
CHAR_T *copy;
- MALLOC(sp, copy, CHAR_T *, len + 1);
+ MALLOC(sp, copy, len + 1);
if (copy == NULL)
return (NULL);
memcpy(copy, str, len * sizeof(CHAR_T));
Index: ex/ex_args.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/ex/ex_args.c,v
retrieving revision 1.10
diff -u -r1.10 ex_args.c
--- ex/ex_args.c 12 Nov 2014 04:28:41 -0000 1.10
+++ ex/ex_args.c 12 Nov 2014 18:39:27 -0000
@@ -81,8 +81,7 @@
sp->cargv = NULL;
/* Create a new list. */
- CALLOC_RET(sp,
- sp->argv, char **, cmdp->argc + 1, sizeof(char *));
+ CALLOC_RET(sp, sp->argv, cmdp->argc + 1, sizeof(char *));
for (ap = sp->argv,
argv = cmdp->argv; argv[0]->len != 0; ++ap, ++argv)
if ((*ap =
@@ -292,7 +291,7 @@
char **ap, **s_argv;
argc = cmdp == NULL ? 1 : cmdp->argc;
- CALLOC(sp, s_argv, char **, argc + 1, sizeof(char *));
+ CALLOC(sp, s_argv, argc + 1, sizeof(char *));
if ((ap = s_argv) == NULL)
return (NULL);
Index: ex/ex_argv.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/ex/ex_argv.c,v
retrieving revision 1.16
diff -u -r1.16 ex_argv.c
--- ex/ex_argv.c 12 Nov 2014 16:29:04 -0000 1.16
+++ ex/ex_argv.c 12 Nov 2014 18:39:27 -0000
@@ -404,7 +404,7 @@
off = exp->argsoff;
if (exp->argscnt == 0 || off + 2 >= exp->argscnt - 1) {
cnt = exp->argscnt + INCREMENT;
- REALLOCARRAY(sp, exp->args, ARGS **, cnt, sizeof(ARGS *));
+ REALLOCARRAY(sp, exp->args, cnt, sizeof(ARGS *));
if (exp->args == NULL) {
(void)argv_free(sp);
goto mem;
@@ -415,7 +415,7 @@
/* First argument. */
if (exp->args[off] == NULL) {
- CALLOC(sp, exp->args[off], ARGS *, 1, sizeof(ARGS));
+ CALLOC(sp, exp->args[off], 1, sizeof(ARGS));
if (exp->args[off] == NULL)
goto mem;
}
@@ -425,7 +425,7 @@
ap->len = 0;
if (ap->blen < len + 1) {
ap->blen = len + 1;
- REALLOCARRAY(sp, ap->bp, CHAR_T *, ap->blen, sizeof(CHAR_T));
+ REALLOCARRAY(sp, ap->bp, ap->blen, sizeof(CHAR_T));
if (ap->bp == NULL) {
ap->bp = NULL;
ap->blen = 0;
@@ -438,7 +438,7 @@
/* Second argument. */
if (exp->args[++off] == NULL) {
- CALLOC(sp, exp->args[off], ARGS *, 1, sizeof(ARGS));
+ CALLOC(sp, exp->args[off], 1, sizeof(ARGS));
if (exp->args[off] == NULL)
goto mem;
}
Index: ex/ex_at.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/ex/ex_at.c,v
retrieving revision 1.11
diff -u -r1.11 ex_at.c
--- ex/ex_at.c 12 Nov 2014 04:28:41 -0000 1.11
+++ ex/ex_at.c 12 Nov 2014 18:39:27 -0000
@@ -79,9 +79,9 @@
* the range, continue to execute after a file/screen switch, which
* means @ buffers are still useful in a multi-screen environment.
*/
- CALLOC_RET(sp, ecp, EXCMD *, 1, sizeof(EXCMD));
+ CALLOC_RET(sp, ecp, 1, sizeof(EXCMD));
TAILQ_INIT(&ecp->rq);
- CALLOC_RET(sp, rp, RANGE *, 1, sizeof(RANGE));
+ CALLOC_RET(sp, rp, 1, sizeof(RANGE));
rp->start = cmdp->addr1.lno;
if (F_ISSET(cmdp, E_ADDR_DEF)) {
rp->stop = rp->start;
@@ -105,7 +105,7 @@
len += tp->len + 1;
}
- MALLOC_RET(sp, ecp->cp, char *, len * 2);
+ MALLOC_RET(sp, ecp->cp, len * 2);
ecp->o_cp = ecp->cp;
ecp->o_clen = len;
ecp->cp[len] = '\0';
Index: ex/ex_cscope.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/ex/ex_cscope.c,v
retrieving revision 1.22
diff -u -r1.22 ex_cscope.c
--- ex/ex_cscope.c 12 Nov 2014 16:29:04 -0000 1.22
+++ ex/ex_cscope.c 12 Nov 2014 18:39:27 -0000
@@ -241,7 +241,7 @@
/* Allocate a cscope connection structure and initialize its fields. */
len = strlen(dname);
- CALLOC_RET(sp, csc, CSC *, 1, sizeof(CSC) + len);
+ CALLOC_RET(sp, csc, 1, sizeof(CSC) + len);
csc->dname = csc->buf;
csc->dlen = len;
memcpy(csc->dname, dname, len);
@@ -301,7 +301,7 @@
if (stat(buf, &sb) == 0) {
/* Read in the CSCOPE_PATHS file. */
len = sb.st_size;
- MALLOC_RET(sp, csc->pbuf, char *, len + 1);
+ MALLOC_RET(sp, csc->pbuf, len + 1);
if ((fd = open(buf, O_RDONLY, 0)) < 0 ||
read(fd, csc->pbuf, len) != len) {
msgq_str(sp, M_SYSERR, buf, "%s");
@@ -318,8 +318,7 @@
++nentries;
/* Build an array of pointers to the paths. */
- CALLOC_GOTO(sp,
- csc->paths, char **, nentries + 1, sizeof(char **));
+ CALLOC_GOTO(sp, csc->paths, nentries + 1, sizeof(char **));
for (pathp = csc->paths, p = strtok(csc->pbuf, ":");
p != NULL; p = strtok(NULL, ":"))
*pathp++ = p;
@@ -334,7 +333,7 @@
msgq(sp, M_SYSERR, NULL);
return (1);
}
- CALLOC_GOTO(sp, csc->paths, char **, 2, sizeof(char *));
+ CALLOC_GOTO(sp, csc->paths, 2, sizeof(char *));
csc->paths[0] = csc->pbuf;
return (0);
@@ -445,11 +444,11 @@
rtqp = NULL;
if (TAILQ_EMPTY(&exp->tq)) {
/* Initialize the `local context' tag queue structure. */
- CALLOC_GOTO(sp, rtqp, TAGQ *, 1, sizeof(TAGQ));
+ CALLOC_GOTO(sp, rtqp, 1, sizeof(TAGQ));
TAILQ_INIT(&rtqp->tagq);
/* Initialize and link in its tag structure. */
- CALLOC_GOTO(sp, rtp, TAG *, 1, sizeof(TAG));
+ CALLOC_GOTO(sp, rtp, 1, sizeof(TAG));
TAILQ_INSERT_HEAD(&rtqp->tagq, rtp, q);
rtqp->current = rtp;
}
@@ -612,7 +611,7 @@
tlen = strlen(p);
/* Allocate and initialize the TAGQ structure. */
- CALLOC(sp, tqp, TAGQ *, 1, sizeof(TAGQ) + tlen + 3);
+ CALLOC(sp, tqp, 1, sizeof(TAGQ) + tlen + 3);
if (tqp == NULL)
return (NULL);
TAILQ_INIT(&tqp->tagq);
@@ -714,7 +713,7 @@
* length cscope information that follows it.
*/
CALLOC_RET(sp, tp,
- TAG *, 1, sizeof(TAG) + dlen + 2 + nlen + 1 + slen + 1);
+ 1, sizeof(TAG) + dlen + 2 + nlen + 1 + slen + 1);
tp->fname = tp->buf;
if (dlen != 0) {
memcpy(tp->fname, dname, dlen);
Index: ex/ex_global.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/ex/ex_global.c,v
retrieving revision 1.13
diff -u -r1.13 ex_global.c
--- ex/ex_global.c 12 Nov 2014 04:28:41 -0000 1.13
+++ ex/ex_global.c 12 Nov 2014 18:39:27 -0000
@@ -155,7 +155,7 @@
return (1);
/* Get an EXCMD structure. */
- CALLOC_RET(sp, ecp, EXCMD *, 1, sizeof(EXCMD));
+ CALLOC_RET(sp, ecp, 1, sizeof(EXCMD));
TAILQ_INIT(&ecp->rq);
/*
@@ -170,7 +170,7 @@
len = 1;
}
- MALLOC_RET(sp, ecp->cp, char *, len * 2);
+ CALLOC_RET(sp, ecp->cp, 2, len);
ecp->o_cp = ecp->cp;
ecp->o_clen = len;
memcpy(ecp->cp + len, p, len);
@@ -231,7 +231,7 @@
}
/* Allocate a new range, and append it to the list. */
- CALLOC(sp, rp, RANGE *, 1, sizeof(RANGE));
+ CALLOC(sp, rp, 1, sizeof(RANGE));
if (rp == NULL)
return (1);
rp->start = rp->stop = start;
@@ -297,7 +297,7 @@
free(rp);
}
} else {
- CALLOC_RET(sp, nrp, RANGE *, 1, sizeof(RANGE));
+ CALLOC_RET(sp, nrp, 1, sizeof(RANGE));
nrp->start = lno + 1;
nrp->stop = rp->stop + 1;
rp->stop = lno - 1;
Index: ex/ex_init.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/ex/ex_init.c,v
retrieving revision 1.13
diff -u -r1.13 ex_init.c
--- ex/ex_init.c 12 Nov 2014 16:29:04 -0000 1.13
+++ ex/ex_init.c 12 Nov 2014 18:39:27 -0000
@@ -45,7 +45,7 @@
EX_PRIVATE *oexp, *nexp;
/* Create the private ex structure. */
- CALLOC_RET(orig, nexp, EX_PRIVATE *, 1, sizeof(EX_PRIVATE));
+ CALLOC_RET(orig, nexp, 1, sizeof(EX_PRIVATE));
sp->ex_private = nexp;
/* Initialize queues. */
@@ -274,7 +274,7 @@
gp = sp->gp;
if (EXCMD_RUNNING(gp)) {
- CALLOC_RET(sp, ecp, EXCMD *, 1, sizeof(EXCMD));
+ CALLOC_RET(sp, ecp, 1, sizeof(EXCMD));
LIST_INSERT_HEAD(&gp->ecq, ecp, q);
} else
ecp = &gp->excmd;
Index: ex/ex_script.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/ex/ex_script.c,v
retrieving revision 1.21
diff -u -r1.21 ex_script.c
--- ex/ex_script.c 12 Nov 2014 16:29:04 -0000 1.21
+++ ex/ex_script.c 12 Nov 2014 18:39:27 -0000
@@ -88,7 +88,7 @@
if (opts_empty(sp, O_SHELL, 0))
return (1);
- MALLOC_RET(sp, sc, SCRIPT *, sizeof(SCRIPT));
+ MALLOC_RET(sp, sc, sizeof(SCRIPT));
sp->script = sc;
sc->sh_prompt = NULL;
sc->sh_prompt_len = 0;
@@ -360,11 +360,7 @@
TAILQ_FOREACH(tsp, &gp->dq, q)
if (F_ISSET(sp, SC_SCRIPT))
nfds++;
- pfd = calloc(nfds, sizeof(struct pollfd));
- if (pfd == NULL) {
- msgq(sp, M_SYSERR, "malloc");
- return (1);
- }
+ CALLOC_RET(sp, pfd, nfds, sizeof(struct pollfd));
/* Setup events bitmasks. */
pfd[0].fd = STDIN_FILENO;
@@ -431,11 +427,7 @@
nfds++;
if (nfds == 0)
return (0);
- pfd = calloc(nfds, sizeof(struct pollfd));
- if (pfd == NULL) {
- msgq(sp, M_SYSERR, "malloc");
- return (1);
- }
+ CALLOC_RET(sp, pfd, nfds, sizeof(struct pollfd));
/* Setup events bitmasks. */
nfds = 0;
@@ -572,7 +564,7 @@
sc = sp->script;
if (sc->sh_prompt)
free(sc->sh_prompt);
- MALLOC(sp, sc->sh_prompt, char *, len + 1);
+ MALLOC(sp, sc->sh_prompt, len + 1);
if (sc->sh_prompt == NULL) {
sscr_end(sp);
return (1);
Index: ex/ex_source.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/ex/ex_source.c,v
retrieving revision 1.9
diff -u -r1.9 ex_source.c
--- ex/ex_source.c 12 Nov 2014 04:28:41 -0000 1.9
+++ ex/ex_source.c 12 Nov 2014 18:39:27 -0000
@@ -58,7 +58,7 @@
goto err;
}
- MALLOC(sp, bp, char *, (size_t)sb.st_size + 1);
+ MALLOC(sp, bp, (size_t)sb.st_size + 1);
if (bp == NULL) {
(void)close(fd);
return (1);
Index: ex/ex_subst.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/ex/ex_subst.c,v
retrieving revision 1.21
diff -u -r1.21 ex_subst.c
--- ex/ex_subst.c 12 Nov 2014 04:28:41 -0000 1.21
+++ ex/ex_subst.c 12 Nov 2014 18:39:27 -0000
@@ -301,7 +301,7 @@
#define NEEDNEWLINE(sp) {
\
if ((sp)->newl_len == (sp)->newl_cnt) { \
(sp)->newl_len += 25; \
- REALLOCARRAY((sp), (sp)->newl, size_t *, \
+ REALLOCARRAY((sp), (sp)->newl, \
(sp)->newl_len, sizeof(size_t)); \
if ((sp)->newl == NULL) { \
(sp)->newl_len = 0; \
@@ -313,7 +313,7 @@
#define BUILD(sp, l, len) {
\
if (lbclen + (len) > lblen) { \
lblen += MAX(lbclen + (len), 256); \
- REALLOC((sp), lb, char *, lblen); \
+ REALLOC((sp), lb, lblen); \
if (lb == NULL) { \
lbclen = 0; \
return (1); \
@@ -326,7 +326,7 @@
#define NEEDSP(sp, len, pnt) {
\
if (lbclen + (len) > lblen) { \
lblen += MAX(lbclen + (len), 256); \
- REALLOC((sp), lb, char *, lblen); \
+ REALLOC((sp), lb, lblen); \
if (lb == NULL) { \
lbclen = 0; \
return (1); \
@@ -737,7 +737,7 @@
goto err;
if (db_get(sp, lno, DBG_FATAL, &s, &llen))
goto err;
- ADD_SPACE_RET(sp, bp, blen, llen)
+ ADD_SPACE_RET(sp, bp, blen, llen);
memcpy(bp, s, llen);
s = bp;
len = llen - offset;
@@ -949,7 +949,7 @@
* Regcomp isn't 8-bit clean, so the pattern is nul-terminated
* for now. There's just no other solution.
*/
- MALLOC(sp, *ptrnp, char *, plen + 1);
+ MALLOC(sp, *ptrnp, plen + 1);
if (*ptrnp != NULL) {
memcpy(*ptrnp, ptrn, plen);
(*ptrnp)[plen] = '\0';
Index: ex/ex_tag.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/ex/ex_tag.c,v
retrieving revision 1.20
diff -u -r1.20 ex_tag.c
--- ex/ex_tag.c 12 Nov 2014 16:29:04 -0000 1.20
+++ ex/ex_tag.c 12 Nov 2014 18:39:27 -0000
@@ -138,11 +138,11 @@
rtqp = NULL;
if (TAILQ_EMPTY(&exp->tq)) {
/* Initialize the `local context' tag queue structure. */
- CALLOC_GOTO(sp, rtqp, TAGQ *, 1, sizeof(TAGQ));
+ CALLOC_GOTO(sp, rtqp, 1, sizeof(TAGQ));
TAILQ_INIT(&rtqp->tagq);
/* Initialize and link in its tag structure. */
- CALLOC_GOTO(sp, rtp, TAG *, 1, sizeof(TAG));
+ CALLOC_GOTO(sp, rtp, 1, sizeof(TAG));
TAILQ_INSERT_HEAD(&rtqp->tagq, rtp, q);
rtqp->current = rtp;
}
@@ -666,7 +666,7 @@
{
TAGF *tfp;
- MALLOC_RET(sp, tfp, TAGF *, sizeof(TAGF));
+ MALLOC_RET(sp, tfp, sizeof(TAGF));
*tfp = *otfp;
/* XXX: Allocate as part of the TAGF structure!!! */
@@ -692,7 +692,7 @@
len = sizeof(TAGQ);
if (otqp->tag != NULL)
len += otqp->tlen + 1;
- MALLOC_RET(sp, tqp, TAGQ *, len);
+ MALLOC_RET(sp, tqp, len);
memcpy(tqp, otqp, len);
TAILQ_INIT(&tqp->tagq);
@@ -719,7 +719,7 @@
len += otp->fnlen + 1;
if (otp->search != NULL)
len += otp->slen + 1;
- MALLOC_RET(sp, tp, TAG *, len);
+ MALLOC_RET(sp, tp, len);
memcpy(tp, otp, len);
if (otp->fname != NULL)
@@ -828,8 +828,8 @@
for (p = t = str;; ++p) {
if (*p == '\0' || isblank(*p)) {
if ((len = p - t) > 1) {
- MALLOC_RET(sp, tfp, TAGF *, sizeof(TAGF));
- MALLOC(sp, tfp->name, char *, len + 1);
+ MALLOC_RET(sp, tfp, sizeof(TAGF));
+ MALLOC(sp, tfp->name, len + 1);
if (tfp->name == NULL) {
free(tfp);
return (1);
@@ -948,7 +948,7 @@
/* Allocate and initialize the tag queue structure. */
len = strlen(tag);
- CALLOC_GOTO(sp, tqp, TAGQ *, 1, sizeof(TAGQ) + len + 1);
+ CALLOC_GOTO(sp, tqp, 1, sizeof(TAGQ) + len + 1);
TAILQ_INIT(&tqp->tagq);
tqp->tag = tqp->buf;
memcpy(tqp->tag, tag, (tqp->tlen = len) + 1);
@@ -1094,7 +1094,7 @@
ctag_file(sp, tfp, name, &dname, &dlen);
CALLOC_GOTO(sp, tp,
- TAG *, 1, sizeof(TAG) + dlen + 2 + nlen + 1 + slen + 1);
+ 1, sizeof(TAG) + dlen + 2 + nlen + 1 + slen + 1);
tp->fname = tp->buf;
if (dlen != 0) {
memcpy(tp->fname, dname, dlen);
Index: perl_api/perlsfio.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/perl_api/perlsfio.c,v
retrieving revision 1.5
diff -u -r1.5 perlsfio.c
--- perl_api/perlsfio.c 12 Nov 2014 04:28:41 -0000 1.5
+++ perl_api/perlsfio.c 12 Nov 2014 18:39:27 -0000
@@ -62,7 +62,7 @@
{
Sfdisc_t* disc;
- MALLOC(scrp, disc, Sfdisc_t*, sizeof(Sfdisc_t));
+ MALLOC(scrp, disc, sizeof(Sfdisc_t));
if (!disc) return disc;
disc->readf = (Sfread_f)NULL;
Index: vi/v_init.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/vi/v_init.c,v
retrieving revision 1.6
diff -u -r1.6 v_init.c
--- vi/v_init.c 12 Nov 2014 04:28:41 -0000 1.6
+++ vi/v_init.c 12 Nov 2014 18:39:27 -0000
@@ -37,7 +37,7 @@
VI_PRIVATE *ovip, *nvip;
/* Create the private vi structure. */
- CALLOC_RET(orig, nvip, VI_PRIVATE *, 1, sizeof(VI_PRIVATE));
+ CALLOC_RET(orig, nvip, 1, sizeof(VI_PRIVATE));
sp->vi_private = nvip;
/* Invalidate the line size cache. */
@@ -50,7 +50,7 @@
/* User can replay the last input, but nothing else. */
if (ovip->rep_len != 0) {
- MALLOC_RET(orig, nvip->rep, EVENT *, ovip->rep_len);
+ MALLOC_RET(orig, nvip->rep, ovip->rep_len);
memmove(nvip->rep, ovip->rep, ovip->rep_len);
nvip->rep_len = ovip->rep_len;
}
Index: vi/v_paragraph.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/vi/v_paragraph.c,v
retrieving revision 1.7
diff -u -r1.7 v_paragraph.c
--- vi/v_paragraph.c 12 Nov 2014 04:28:41 -0000 1.7
+++ vi/v_paragraph.c 12 Nov 2014 18:39:27 -0000
@@ -323,7 +323,7 @@
if (p_len == 0 && s_len == 0)
return (0);
- MALLOC_RET(sp, p, char *, p_len + s_len + 1);
+ MALLOC_RET(sp, p, p_len + s_len + 1);
vip = VIP(sp);
if (vip->ps != NULL)
Index: vi/vi.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/vi/vi.c,v
retrieving revision 1.15
diff -u -r1.15 vi.c
--- vi/vi.c 12 Nov 2014 04:28:41 -0000 1.15
+++ vi/vi.c 12 Nov 2014 18:39:27 -0000
@@ -962,7 +962,7 @@
sp->woff = 0;
/* Create a screen map. */
- CALLOC_RET(sp, HMAP, SMAP *, SIZE_HMAP(sp), sizeof(SMAP));
+ CALLOC_RET(sp, HMAP, SIZE_HMAP(sp), sizeof(SMAP));
TMAP = HMAP + (sp->t_rows - 1);
HMAP->lno = sp->lno;
HMAP->coff = 0;
Index: vi/vs_msg.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/vi/vs_msg.c,v
retrieving revision 1.13
diff -u -r1.13 vs_msg.c
--- vi/vs_msg.c 12 Nov 2014 04:28:41 -0000 1.13
+++ vi/vs_msg.c 12 Nov 2014 18:39:27 -0000
@@ -876,8 +876,8 @@
* allocate memory here, we're genuinely screwed, dump the message
* to stderr in the (probably) vain hope that someone will see it.
*/
- CALLOC_GOTO(sp, mp_n, MSGS *, 1, sizeof(MSGS));
- MALLOC_GOTO(sp, mp_n->buf, char *, len);
+ CALLOC_GOTO(sp, mp_n, 1, sizeof(MSGS));
+ MALLOC_GOTO(sp, mp_n->buf, len);
memmove(mp_n->buf, p, len);
mp_n->len = len;
Index: vi/vs_split.c
===================================================================
RCS file: /cvs/src/usr.bin/vi/vi/vs_split.c,v
retrieving revision 1.12
diff -u -r1.12 vs_split.c
--- vi/vs_split.c 12 Nov 2014 04:28:41 -0000 1.12
+++ vi/vs_split.c 12 Nov 2014 18:39:27 -0000
@@ -59,7 +59,7 @@
half = 6;
/* Get a new screen map. */
- CALLOC(sp, _HMAP(new), SMAP *, SIZE_HMAP(sp), sizeof(SMAP));
+ CALLOC(sp, _HMAP(new), SIZE_HMAP(sp), sizeof(SMAP));
if (_HMAP(new) == NULL)
return (1);
_HMAP(new)->lno = sp->lno;
@@ -422,7 +422,7 @@
nsp->defscroll = nsp->t_maxrows / 2;
/* Allocate a new screen map. */
- CALLOC_RET(nsp, _HMAP(nsp), SMAP *, SIZE_HMAP(nsp), sizeof(SMAP));
+ CALLOC_RET(nsp, _HMAP(nsp), SIZE_HMAP(nsp), sizeof(SMAP));
_TMAP(nsp) = _HMAP(nsp) + (nsp->t_rows - 1);
/* Fill the map. */