Index: branches/preferences/src/lib/BuildLibs.am
===================================================================
--- branches/preferences/src/lib/BuildLibs.am	(revision 7235)
+++ branches/preferences/src/lib/BuildLibs.am	(revision 7236)
@@ -16,4 +16,5 @@
                 $(LIB_PREFIX)/parser/tinyxml/libtinyxml.a \
                 $(LIB_PREFIX)/parser/ini_parser/libIniParser.a \
+                $(LIB_PREFIX)/parser/preferences/libPrefsParser.a \
                 $(LIB_PREFIX)/shell/libORXshell.a \
                 $(LIB_PREFIX)/math/libORXmath.a
Index: branches/preferences/src/lib/parser/preferences/ini_file_prefs_reader.cc
===================================================================
--- branches/preferences/src/lib/parser/preferences/ini_file_prefs_reader.cc	(revision 7235)
+++ branches/preferences/src/lib/parser/preferences/ini_file_prefs_reader.cc	(revision 7236)
@@ -24,5 +24,5 @@
  * standard constructor
 */
-IniFilePrefsReader::IniFilePrefsReader ( const char * fileName )
+IniFilePrefsReader::IniFilePrefsReader ( const std::string& fileName )
 {
   IniParser iniParser;
@@ -41,5 +41,5 @@
       prefs->setString( iniParser.getCurrentSection(), iniParser.getCurrentName(), iniParser.getCurrentValue(), true );
     } while (iniParser.nextVar());
-  } while (iniParser.nextSection()!=NULL);
+  } while ( iniParser.nextSection() != "" );
 
   /*iniParser.firstVar();
Index: branches/preferences/src/lib/parser/preferences/ini_file_prefs_reader.h
===================================================================
--- branches/preferences/src/lib/parser/preferences/ini_file_prefs_reader.h	(revision 7235)
+++ branches/preferences/src/lib/parser/preferences/ini_file_prefs_reader.h	(revision 7236)
@@ -15,5 +15,5 @@
 
  public:
-   IniFilePrefsReader(const char* fileName);
+   IniFilePrefsReader(const std::string& fileName);
    virtual ~IniFilePrefsReader();
 
Index: branches/preferences/src/lib/util/preferences.h
===================================================================
--- branches/preferences/src/lib/util/preferences.h	(revision 7235)
+++ branches/preferences/src/lib/util/preferences.h	(revision 7236)
@@ -16,5 +16,5 @@
 
 typedef struct {
-  char* name;
+  std::string name;
   MultiType value;
   bool modified;
@@ -22,5 +22,5 @@
 
 typedef struct {
-  char* sectionName;
+  std::string sectionName;
   std::list<prefItem> items;
 } prefSection ;
@@ -36,17 +36,17 @@
 
    //check if this entry exists
-   bool exists(const char* section, const char* name);
+   bool exists(const std::string& section, const std::string& name);
 
-   void setString(const char* section, const char* name, const char* value, bool dontSetModified = false);
-   void setInt(const char* section, const char* name, int value, bool dontSetModified = false);
-   void setFloat(const char* section, const char* name, float value, bool dontSetModified = false);
-   void setMultiType(const char* section, const char* name, MultiType& value, bool dontSetModified = false);
+   void setString(const std::string& section, const std::string& name, const std::string& value, bool dontSetModified = false);
+   void setInt(const std::string& section, const std::string& name, int value, bool dontSetModified = false);
+   void setFloat(const std::string& section, const std::string& name, float value, bool dontSetModified = false);
+   void setMultiType(const std::string& section, const std::string& name, MultiType& value, bool dontSetModified = false);
 
-   const char* getString(const char* section, const char* name, const char* defaultValue);
-   int getInt(const char* section, const char* name, int defaultValue);
-   float getFloat(const char* section, const char* name, float defaultValue);
-   MultiType getMultiType(const char* section, const char* name, const MultiType& defaultValue);
+   const std::string getString(const std::string& section, const std::string& name, const std::string& defaultValue);
+   int getInt(const std::string& section, const std::string& name, int defaultValue);
+   float getFloat(const std::string& section, const std::string& name, float defaultValue);
+   MultiType getMultiType(const std::string& section, const std::string& name, const MultiType& defaultValue);
 
-   void setUserIni(const char* fileName);
+   void setUserIni(const std::string& fileName);
 
    bool save();
@@ -64,5 +64,5 @@
    std::list<IniFilePrefsReader*> iniFilePrefsReaders;
 
-   char* fileName;
+   std::string& fileName;
 
 };
Index: branches/preferences/src/orxonox.cc
===================================================================
--- branches/preferences/src/orxonox.cc	(revision 7235)
+++ branches/preferences/src/orxonox.cc	(revision 7236)
@@ -405,5 +405,5 @@
   CmdLinePrefsReader prefs(argc, argv);
 
-  /*int i;
+  int i;
   for(i = 1; i < argc; ++i)
   {
@@ -418,7 +418,7 @@
     else if(!strcmp( "--license", argv[i])  || !strcmp("-l", argv[i]))
       return PRINT(0)(ORXONOX_LICENSE_SHORT);
-}
-
-  return startOrxonox(argc, argv, NULL, -1);*/
+  }
+
+  return startOrxonox(argc, argv, NULL, -1);
   return 0;
 }
