summaryrefslogtreecommitdiff
path: root/src/main.cpp
diff options
context:
space:
mode:
authorBjørn Lindeijer <bjorn@lindeijer.nl>2007-06-04 21:48:47 +0000
committerBjørn Lindeijer <bjorn@lindeijer.nl>2007-06-04 21:48:47 +0000
commita353543dd4da3c489a84f6f17125fdd0e1be2349 (patch)
tree5e447a0f9a3fd50f58a48f39bbb77d392d78af36 /src/main.cpp
parentab072dddb231895ba7b6762eda9fa70af961b0fb (diff)
downloadmana-a353543dd4da3c489a84f6f17125fdd0e1be2349.tar.gz
mana-a353543dd4da3c489a84f6f17125fdd0e1be2349.tar.bz2
mana-a353543dd4da3c489a84f6f17125fdd0e1be2349.tar.xz
mana-a353543dd4da3c489a84f6f17125fdd0e1be2349.zip
Merged 0.0 changes from revision 3234 to 3317 to trunk.
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp26
1 files changed, 16 insertions, 10 deletions
diff --git a/src/main.cpp b/src/main.cpp
index bbbf0fd1..58c563ab 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -40,7 +40,7 @@
#include <libxml/parser.h>
-#if (defined __USE_UNIX98 || defined __FreeBSD__ || defined __APPLE__)
+#ifndef WIN32
#include <cerrno>
#include <sys/stat.h>
#endif
@@ -148,21 +148,21 @@ struct Options
*/
void initHomeDir()
{
-#if !(defined __USE_UNIX98 || defined __FreeBSD__ || defined __APPLE__)
- homeDir = ".";
-#else
homeDir = std::string(PHYSFS_getUserDir()) + "/.tmw";
-
+#if defined WIN32
+ if (!CreateDirectory(homeDir.c_str(), 0) &&
+ GetLastError() != ERROR_ALREADY_EXISTS)
+#else
// Checking if /home/user/.tmw folder exists.
if ((mkdir(homeDir.c_str(), S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH) != 0) &&
(errno != EEXIST))
+#endif
{
std::cout << homeDir
- << " can't be made, but it doesn't exist! Exiting."
+ << " can't be created, but it doesn't exist! Exiting."
<< std::endl;
exit(1);
}
-#endif
}
/**
@@ -236,11 +236,17 @@ void initEngine()
static SDL_SysWMinfo pInfo;
SDL_GetWMInfo(&pInfo);
HICON icon = LoadIcon(GetModuleHandle(NULL), "A");
- SetClassLong(pInfo.window, GCL_HICON, (LONG) icon);
+ if (icon)
+ {
+ SetClassLong(pInfo.window, GCL_HICON, (LONG) icon);
+ }
#else
SDL_Surface *icon = IMG_Load(TMW_DATADIR "data/icons/tmw.png");
- SDL_SetAlpha(icon, SDL_SRCALPHA, SDL_ALPHA_OPAQUE);
- SDL_WM_SetIcon(icon, NULL);
+ if (icon)
+ {
+ SDL_SetAlpha(icon, SDL_SRCALPHA, SDL_ALPHA_OPAQUE);
+ SDL_WM_SetIcon(icon, NULL);
+ }
#endif
ResourceManager *resman = ResourceManager::getInstance();