]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - src/configreader.cpp
Change for reverse output of lists, most recent first, for bug #307. Also fix(Oms...
[user/henk/code/inspircd.git] / src / configreader.cpp
index 6407a98e0eaf593acc13c6c77f1ae3f941642786..5ec60d1c31beb187cfe0474b0a9bba5226259e8a 100644 (file)
@@ -1602,21 +1602,22 @@ bool ServerConfig::DirValid(const char* dirandfile)
 
 std::string ServerConfig::GetFullProgDir()
 {
-       char buffer[1024];
+       char buffer[PATH_MAX+1];
 
        // Get the current working directory
-       if (getcwd(buffer, 1024))
+       if (getcwd(buffer, PATH_MAX))
        {
                std::string remainder = this->argv[0];
 
                /* Does argv[0] start with /? its a full path, use it */
                if (remainder[0] == '/')
-                       return remainder;
+               {
+                       std::string::size_type n = remainder.rfind("/inspircd");
+                       return std::string(remainder, 0, n);
+               }
 
                std::string fullpath = std::string(buffer) + "/" + remainder;
-
                std::string::size_type n = fullpath.rfind("/inspircd");
-
                return std::string(fullpath, 0, n);
        }