summaryrefslogtreecommitdiff
path: root/src/base
diff options
context:
space:
mode:
Diffstat (limited to 'src/base')
-rw-r--r--src/base/archive.c10
-rw-r--r--src/base/arenaFile.c4
-rw-r--r--src/base/director.c2
-rw-r--r--src/base/homeDirector.c2
-rw-r--r--src/base/main.h6
-rw-r--r--src/base/textFile.c2
6 files changed, 19 insertions, 7 deletions
diff --git a/src/base/archive.c b/src/base/archive.c
index 5e2c25a..735a9ee 100644
--- a/src/base/archive.c
+++ b/src/base/archive.c
@@ -21,8 +21,14 @@ char *archive_extract_file(char *archive, char *filename)
FILE *file;
int len;
int err;
-
- sprintf(name, "/tmp/tuxanci.%d-%s", getpid(), filename);
+ char *tmp;
+
+#ifndef __WIN32__
+ tmp = getenv("TMPDIR");
+#else
+ tmp = getenv("TEMP");
+#endif
+ sprintf(name, "%s%stuxanci.%d-%s", tmp, PATH_SEPARATOR ,getpid(), filename);
/*printf("ARCHIVE %s %s %s\n", archive, filename, name);*/
diff --git a/src/base/arenaFile.c b/src/base/arenaFile.c
index e5a17ae..c494e1f 100644
--- a/src/base/arenaFile.c
+++ b/src/base/arenaFile.c
@@ -370,10 +370,10 @@ static void load_arenaFromDirector(char *director)
if (strstr(line, ".zip") != NULL && strstr(line, "~") == NULL) {
char path[STR_PATH_SIZE];
- if (director[strlen(director)-1] == '/') {
+ if (director[strlen(director)-1] == PATH_SEPARATOR) {
sprintf(path, "%s%s", director, line);
} else {
- sprintf(path, "%s/%s", director, line);
+ sprintf(path, "%s%s%s", director, PATH_SEPARATOR, line);
}
debug("Loading arena [%s]", line);
diff --git a/src/base/director.c b/src/base/director.c
index 66cef0c..5c005cb 100644
--- a/src/base/director.c
+++ b/src/base/director.c
@@ -37,7 +37,7 @@ director_t *director_load(char *s)
} else {
/* this is really correct aproach */
getcwd(path, STR_PATH_SIZE);
- strcat(path, "/");
+ strcat(path, PATH_SEPARATOR);
strcat(path, s);
}
diff --git a/src/base/homeDirector.c b/src/base/homeDirector.c
index c9daf3d..5ff14b7 100644
--- a/src/base/homeDirector.c
+++ b/src/base/homeDirector.c
@@ -22,7 +22,7 @@ void home_director_create()
exit(0);
}
- sprintf(homeDirector, "%s/%s", envHome, HOMEDIRECTOR_NAME);
+ sprintf(homeDirector, "%s%s%s", envHome, PATH_SEPARATOR, HOMEDIRECTOR_NAME);
if (access(homeDirector, F_OK) != 0) {
debug("Creating home directory [%s]", homeDirector);
diff --git a/src/base/main.h b/src/base/main.h
index 98919e3..3466c3d 100644
--- a/src/base/main.h
+++ b/src/base/main.h
@@ -21,6 +21,12 @@
#include "msg.h"
+#ifndef __WIN32__
+#define PATH_SEPARATOR "/"
+#else
+#define PATH_SEPARATOR "\\"
+#endif
+
#define UNUSED(var) if (0 && var) {}
extern char *getParam(char *s);
diff --git a/src/base/textFile.c b/src/base/textFile.c
index d04d8e6..b1c2ad9 100644
--- a/src/base/textFile.c
+++ b/src/base/textFile.c
@@ -19,7 +19,7 @@ textFile_t *text_file_new(char *s)
strcpy(path, s);
} else {
getcwd(path, STR_PATH_SIZE);
- strcat(path, "/");
+ strcat(path, PATH_SEPARATOR);
strcat(path, s);
}