void beginProgram (int argumentCount, char **argumentVector) { #if defined(GRUB_RUNTIME) #else /* at exit */ atexit(endProgram); #endif /* at exit */ #ifdef WINDOWS sysInit(); #endif /* WINDOWS */ prepareLocale(); if (!(programPath = getProgramPath())) programPath = argumentVector[0]; if (!isExplicitPath(programPath)) { char *path = findProgram(programPath); if (!path) path = testProgram(".", programPath); if (path) programPath = path; } if (isExplicitPath(programPath)) { #if defined(HAVE_REALPATH) && defined(PATH_MAX) if (!isAbsolutePath(programPath)) { char buffer[PATH_MAX]; char *path = realpath(programPath, buffer); if (path) { char *realPath = strdup(path); if (realPath) { programPath = realPath; } else { logMallocError(); } } else { logSystemError("realpath"); } } #endif /* defined(HAVE_REALPATH) && defined(PATH_MAX) */ if (!isAbsolutePath(programPath)) { char *directory; if ((directory = getWorkingDirectory())) { char *path; if ((path = makePath(directory, programPath))) programPath = path; free(directory); } } } programName = locatePathName(programPath); setLogPrefix(programName); }
QLClient::QLClient(int notificationID, const HostConfig *config, size_t backLog) : IO::QuakeLink::Connection(), _notificationID(notificationID), _config(config), _backLog(backLog), _thread(NULL) { setLogPrefix("[QL " + _config->host + "] "); }