case ALT_N: /* new dir */
string = getwindow ("New directory", winscreen, MAXFNAME / 2, MAXFNAME, NULL);
if (string) {
-#ifdef WIN32
- if (mkdir (string) != 0) {
-#else
- if (mkdir (string, 0750) != 0) {
-#endif
+ if (MKDIR (string) != 0) {
msgwindow ("Can't create directory", winscreen, 0);
getch ();
}
char *name = newfilename (dirname, filename);
struct stat sb;
-#ifdef WIN32
- if (stat (name, &sb) == -1) {
-#else /* Linux*/
- if (lstat (name, &sb) == -1) {
-#endif
+ if (STAT (name, &sb) == -1) {
VERBOSE (ERROR, fprintf (stderr, "can't stat file '%s'\n", name));
exit (1);
}
char *name = newfilename (dirname, elem->name);
struct stat sb;
-#ifdef WIN32
- if (stat (name, &sb) == -1) {
-#else /* Linux*/
- if (lstat (name, &sb) == -1) {
-#endif
+ if (STAT (name, &sb) == -1) {
VERBOSE (ERROR, fprintf (stderr, "can't stat file '%s%s%s'\n", dirname, SEPARATOR, elem->name));
exit (1);
}
char *msg = NULL;
struct stat sb;
-#ifdef WIN32
- if (stat (src, &sb) == 0) {
-#else /* Linux*/
- if (lstat (src, &sb) == 0) {
-#endif
+ if (STAT (src, &sb) == 0) {
if ((sb.st_mode & S_IFMT) == S_IFDIR) {
char *basename = strrchr (src, *SEPARATOR);
basename = (basename) ? basename + 1 : src;
VERBOSE (DEBUG, fprintf (stderr, "basename '%s'\n", basename));
char *nextdest = strdupcat (dest, SEPARATOR, basename, NULL);
VERBOSE (DEBUG, fprintf (stderr, "mkdir '%s'\n", nextdest));
-#ifdef WIN32
- if (mkdir (nextdest) != 0) {
-#else
- if (mkdir (nextdest, 0750) != 0) {
-#endif
+ if (MKDIR (nextdest) != 0) {
msg = strdupcat ("Can't create directory '", nextdest, "'", NULL);
} else {
DIR *dir = opendir (src);
int rc = 0;
struct stat sb;
-#ifdef WIN32
- if (stat (name, &sb) == 0) {
-#else /* Linux*/
- if (lstat (name, &sb) == 0) {
-#endif
+ if (STAT (name, &sb) == 0) {
if ((sb.st_mode & S_IFMT) == S_IFDIR) {
DIR *dir = opendir (name);
#define min(a,b) ({ __typeof__ (a) _a = (a); __typeof__ (b) _b = (b); _a < _b ? _a : _b; })
+#ifdef WIN32
+#define STAT(file, psb) stat (file, psb)
+#define MKDIR(dir) mkdir (dir)
+#else /* Linux */
+#define STAT(file, psb) lstat (file, psb)
+#define MKDIR(dir) mkdir (dir, 0755)
+#endif
+
int strmaxlen (char *str, char ch);
char *strdupcat (char *init, ...);