summaryrefslogtreecommitdiffstats
path: root/src/info.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/info.rs')
-rw-r--r--src/info.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/info.rs b/src/info.rs
index dc62125..6a5ad4f 100644
--- a/src/info.rs
+++ b/src/info.rs
@@ -35,6 +35,17 @@ pub fn pid() -> String {
nix::unistd::getpid().to_string()
}
+#[cfg(target_os = "linux")]
+#[allow(clippy::unnecessary_wraps)]
+pub fn current_exe() -> Result<std::path::PathBuf> {
+ Ok("/proc/self/exe".into())
+}
+
+#[cfg(not(target_os = "linux"))]
+pub fn current_exe() -> Result<std::path::PathBuf> {
+ Ok(std::env::current_exe()?)
+}
+
// the time crate is currently unable to get the local offset on unix due to
// soundness concerns, so we have to do it manually/:
//