patch 8.1.1414: alloc() returning "char_u *" causes a lot of type casts
Problem: Alloc() returning "char_u *" causes a lot of type casts.
Solution: Have it return "void *". (Mike Williams) Define ALLOC_ONE() to
check the simple allocations.
diff --git a/src/if_xcmdsrv.c b/src/if_xcmdsrv.c
index 4b44126..5904914 100644
--- a/src/if_xcmdsrv.c
+++ b/src/if_xcmdsrv.c
@@ -441,7 +441,7 @@
* Length must be computed exactly!
*/
length = STRLEN(name) + STRLEN(p_enc) + STRLEN(cmd) + 14;
- property = (char_u *)alloc(length + 30);
+ property = alloc(length + 30);
sprintf((char *)property, "%c%c%c-n %s%c-E %s%c-s %s",
0, asExpr ? 'c' : 'k', 0, name, 0, p_enc, 0, cmd);
@@ -750,7 +750,7 @@
return -1;
length = STRLEN(p_enc) + STRLEN(str) + 14;
- if ((property = (char_u *)alloc(length + 30)) != NULL)
+ if ((property = alloc(length + 30)) != NULL)
{
sprintf((char *)property, "%cn%c-E %s%c-n %s%c-w %x",
0, 0, p_enc, 0, str, 0, (unsigned int)commWindow);
@@ -1157,7 +1157,7 @@
{
x_queue_T *node;
- node = (x_queue_T *)alloc(sizeof(x_queue_T));
+ node = ALLOC_ONE(x_queue_T);
if (node == NULL)
return; /* out of memory */
node->propInfo = propInfo;