/tmp is a symbolic link to /private/tmp on macOS. That causes failures
in commandtest, because getcwd returns /private/tmp and the expected
output doesn't match to "CWD: /tmp".
Rathern than making a copy of commanddata solely for macOS, the /private
prefix is stripped.
Signed-off-by: Roman Bolshakov <r.bolshakov@yadro.com>
if (strlen(cwd) > strlen(".../commanddata") &&
STREQ(cwd + strlen(cwd) - strlen("/commanddata"), "/commanddata"))
strcpy(cwd, ".../commanddata");
+# ifdef __APPLE__
+ char *noprivateprefix = NULL;
+ if (strstr(cwd, "/private"))
+ noprivateprefix = cwd + strlen("/private");
+ else
+ noprivateprefix = cwd;
+ fprintf(log, "CWD:%s\n", noprivateprefix);
+# else
fprintf(log, "CWD:%s\n", cwd);
+# endif
free(cwd);
fprintf(log, "UMASK:%04o\n", umask(0));