]> git.meshlink.io Git - catta/blobdiff - avahi-compat-libdns_sd/warn.c
* implement avahi_exe_name for BSD/Darwin
[catta] / avahi-compat-libdns_sd / warn.c
index 8d766c3f9e880727fb9105808eae0ca4585db8ba..13586ef31fa60d317ce4b5395e47627d96ff0889 100644 (file)
 static pthread_mutex_t linkage_mutex = PTHREAD_MUTEX_INITIALIZER;
 static int linkage_warning = 0;
 
-#ifdef __linux__
-
 const char *avahi_exe_name(void) {
+#ifdef HAVE_GETPROGNAME
+    return getprogname();
+#elif defined(__linux__)
     static char exe_name[1024] = "";
     static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
 
@@ -76,19 +77,13 @@ const char *avahi_exe_name(void) {
     pthread_mutex_unlock(&mutex);
 
     return exe_name;
-}
-
 #else
-
 #ifdef __GNUC__
 #warning "avahi_exe_name() needs to be implemented for your operating system"
 #endif
-
-const char *avahi_exe_name(void) {
     return "(unknown)";
-}
-
 #endif
+}
 
 void avahi_warn(const char *fmt, ...) {
     char msg[512]  = "*** WARNING *** ";