Mercurial > irccd
comparison common/path.cpp @ 23:03068f5ed79d
Misc: various style issues, #419
author | David Demelier <markand@malikania.fr> |
---|---|
date | Sun, 14 Feb 2016 16:15:48 +0100 |
parents | 1158cffe5a5e |
children |
comparison
equal
deleted
inserted
replaced
22:23d59afec277 | 23:03068f5ed79d |
---|---|
89 std::size_t size = PATH_MAX; | 89 std::size_t size = PATH_MAX; |
90 | 90 |
91 result.resize(size); | 91 result.resize(size); |
92 | 92 |
93 if (!(size = GetModuleFileNameA(nullptr, &result[0], size))) | 93 if (!(size = GetModuleFileNameA(nullptr, &result[0], size))) |
94 throw std::runtime_error{"GetModuleFileName error"}; | 94 throw std::runtime_error("GetModuleFileName error"); |
95 | 95 |
96 result.resize(size); | 96 result.resize(size); |
97 | 97 |
98 return result; | 98 return result; |
99 } | 99 } |
107 result.resize(2048); | 107 result.resize(2048); |
108 | 108 |
109 auto size = readlink("/proc/self/exe", &result[0], 2048); | 109 auto size = readlink("/proc/self/exe", &result[0], 2048); |
110 | 110 |
111 if (size < 0) | 111 if (size < 0) |
112 throw std::invalid_argument{std::strerror(errno)}; | 112 throw std::invalid_argument(std::strerror(errno)); |
113 | 113 |
114 result.resize(size); | 114 result.resize(size); |
115 | 115 |
116 return result; | 116 return result; |
117 } | 117 } |
125 std::size_t size = PATH_MAX + 1; | 125 std::size_t size = PATH_MAX + 1; |
126 | 126 |
127 result.resize(size); | 127 result.resize(size); |
128 | 128 |
129 if (sysctl(mib.data(), 4, &result[0], &size, nullptr, 0) < 0) | 129 if (sysctl(mib.data(), 4, &result[0], &size, nullptr, 0) < 0) |
130 throw std::runtime_error{std::strerror(errno)}; | 130 throw std::runtime_error(std::strerror(errno)); |
131 | 131 |
132 result.resize(size); | 132 result.resize(size); |
133 | 133 |
134 return result; | 134 return result; |
135 } | 135 } |
142 std::size_t size = PROC_PIDPATHINFO_MAXSIZE; | 142 std::size_t size = PROC_PIDPATHINFO_MAXSIZE; |
143 | 143 |
144 result.resize(size); | 144 result.resize(size); |
145 | 145 |
146 if ((size = proc_pidpath(getpid(), &result[0], size)) == 0) | 146 if ((size = proc_pidpath(getpid(), &result[0], size)) == 0) |
147 throw std::runtime_error{std::strerror(errno)}; | 147 throw std::runtime_error(std::strerror(errno)); |
148 | 148 |
149 result.resize(size); | 149 result.resize(size); |
150 | 150 |
151 return result; | 151 return result; |
152 } | 152 } |
379 } | 379 } |
380 | 380 |
381 } // !namespace | 381 } // !namespace |
382 | 382 |
383 #if defined(IRCCD_SYSTEM_WINDOWS) | 383 #if defined(IRCCD_SYSTEM_WINDOWS) |
384 const char Separator{';'}; | 384 const char Separator(';'); |
385 #else | 385 #else |
386 const char Separator{':'}; | 386 const char Separator(':'); |
387 #endif | 387 #endif |
388 | 388 |
389 void setApplicationPath(const std::string &argv0) | 389 void setApplicationPath(const std::string &argv0) |
390 { | 390 { |
391 #if defined(IRCCD_RELOCATABLE) | 391 #if defined(IRCCD_RELOCATABLE) |
422 break; | 422 break; |
423 } | 423 } |
424 } | 424 } |
425 | 425 |
426 /* Not found in PATH? add dummy value */ | 426 /* Not found in PATH? add dummy value */ |
427 if (base.empty()) { | 427 if (base.empty()) |
428 base = std::string(".") + fs::Separator + WITH_BINDIR + fs::Separator + "dummy"; | 428 base = std::string(".") + fs::Separator + WITH_BINDIR + fs::Separator + "dummy"; |
429 } | |
430 } | 429 } |
431 } | 430 } |
432 | 431 |
433 /* Find bin/<progname> */ | 432 /* Find bin/<progname> */ |
434 auto pos = base.rfind(std::string(WITH_BINDIR) + fs::Separator + fs::baseName(base)); | 433 auto pos = base.rfind(std::string(WITH_BINDIR) + fs::Separator + fs::baseName(base)); |