added more cvsignores because scons is placing .sconsign files all over the place :-/
[supertux.git] / lib / app / setup.cpp
index ca667bb..6245e49 100644 (file)
@@ -17,6 +17,8 @@
 //  along with this program; if not, write to the Free Software
 //  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 
+#include <config.h>
+
 #include <cassert>
 #include <cstdio>
 #include <iostream>
@@ -90,6 +92,7 @@ int FileSystem::fwriteable(const std::string& filename)
     {
       return false;
     }
+  fclose(fi);
   return true;
 }
 
@@ -284,6 +287,12 @@ void Setup::directories(void)
 
   mkdir((st_dir + "/levels").c_str(), 0755);
 
+  // try current directory as datadir
+  if(datadir.empty()) {
+      if(FileSystem::faccessible("./data/intro.txt"))
+          datadir = "./data";
+  }
+
   // User has not that a datadir, so we try some magic
   if (datadir.empty())
     {