/* allocate extra space for 2x'"', ' ' and '\0' */
char *cmd_line = (char *)Safe_alloc(strlen(command) + strlen(params) + 4);
sprintf(cmd_line, "\"%s\" %s", command, params);
-
return cmd_line;
}
/*!
- * check if the path is absolute
+ * check if the path is relative or absolute (if contains the dir separator)
*/
static int
has_path(const char *path)
{
- if (strrchr(path, DIR_SEPARATOR_CHAR) == NULL)
-#ifdef _WIN32
- /* try *nix dir separator on WIN32 */
- if (strrchr(path, UNIX_DIR_SEPARATOR_CHAR) == NULL)
-#endif
- return 0;
-
- return 1;
+ return dbuf_splitPath(path, NULL, NULL);
}
}
e = system(cmdLine);
+
+ if (options.verboseExec && e) {
+ printf("+ %s returned errorcode %d\n", cmdLine, e);
+ }
+
Safe_free(cmdLine);
return e;