Path exe;
if(argv0.find('/')==string::npos)
{
- const char *path=getenv("PATH");
- vector<string> dirs=split(path, ':');
+ const char *path = getenv("PATH");
+ vector<string> dirs = split(path, ':');
for(vector<string>::const_iterator i=dirs.begin(); i!=dirs.end(); ++i)
if(exists(Path(*i)/argv0))
{
- exe=realpath(Path(*i)/argv0);
+ exe = realpath(Path(*i)/argv0);
break;
}
}
else
- exe=realpath(argv0);
+ exe = realpath(argv0);
- last_argv0=argv0;
- bin_dir=dirname(exe);
+ last_argv0 = argv0;
+ bin_dir = dirname(exe);
}
return bin_dir;
#ifdef WIN32
// The win32 version of this function doesn't take the mode argument. Go figure.
(void)mode;
- err=::mkdir(path.str().c_str());
+ err = ::mkdir(path.str().c_str());
#else
- err=::mkdir(path.str().c_str(), mode);
+ err = ::mkdir(path.str().c_str(), mode);
#endif
if(err==-1)
Path p;
for(Path::Iterator i=path.begin(); i!=path.end(); ++i)
{
- p/=*i;
+ p /= *i;
#ifdef WIN32
if(p.size()==1 && p.is_absolute())
continue;
#endif
struct stat st;
- int err=stat(p, st);
+ int err = stat(p, st);
if(err==0)
{
if(!S_ISDIR(st.st_mode))
void rmdirs(const Path &path)
{
- list<string> files=list_files(path);
+ list<string> files = list_files(path);
for(list<string>::iterator i=files.begin(); i!=files.end(); ++i)
{
- Path p=path / *i;
- struct stat st=stat(p.str().c_str());
+ Path p = path / *i;
+ struct stat st = stat(p.str().c_str());
if(S_ISDIR(st.st_mode))
rmdirs(p);
else
Regex r_filter(filter);
list<string> result;
- DIR *dir=opendir(path.str().c_str());
+ DIR *dir = opendir(path.str().c_str());
if(dir)
{
- while(dirent *de=readdir(dir))
+ while(dirent *de = readdir(dir))
{
- const char *fn=de->d_name;
+ const char *fn = de->d_name;
if(fn[0]=='.' && (fn[1]==0 || (fn[1]=='.' && fn[2]==0)))
continue;
if(r_filter.match(fn))
if(SHGetFolderPath(0, CSIDL_PERSONAL, 0, 0, home)==S_OK)
return home;
#else
- const char *home=getenv("HOME");
+ const char *home = getenv("HOME");
if(home)
return home;
#endif
Path get_sys_conf_dir(const string &argv0)
{
- Path dir=get_bin_dir(argv0);
+ Path dir = get_bin_dir(argv0);
if(dir[-1]=="bin" || dir[-1]=="sbin")
{
- dir/="..";
+ dir /= "..";
if(dir[-1]=="usr")
- dir/="..";
+ dir /= "..";
return dir/"etc";
}
else
Path get_sys_data_dir(const string &argv0, const string &appname)
{
- Path dir=get_bin_dir(argv0);
+ Path dir = get_bin_dir(argv0);
if(dir[-1]=="bin" || dir[-1]=="sbin")
return dir/".."/"share"/appname;
Path get_sys_lib_dir(const string &argv0, const string &appname)
{
- Path dir=get_bin_dir(argv0);
+ Path dir = get_bin_dir(argv0);
if(dir[-1]=="bin" || dir[-1]=="sbin")
return dir/".."/"lib"/appname;