summaryrefslogtreecommitdiffstats
path: root/dbus/dbus-sysdeps.c
diff options
context:
space:
mode:
authorJohn (J5) Palmieri <johnp@redhat.com>2007-10-03 17:02:23 -0400
committerJohn (J5) Palmieri <johnp@redhat.com>2007-10-03 17:02:23 -0400
commitadb0270edf6ffae2f2d9d319aed7737f85fa6ec2 (patch)
tree879da0dae988328427550e24be1d6b97f962fe22 /dbus/dbus-sysdeps.c
parent7d9d3fc031244bee29b5ac25e07f3e8e5b5dd97b (diff)
fd.o bug #11872 fix clearenv for systems that do not have it
* patch from Brian Cameron <brian.cameron at sun.com>
Diffstat (limited to 'dbus/dbus-sysdeps.c')
-rw-r--r--dbus/dbus-sysdeps.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/dbus/dbus-sysdeps.c b/dbus/dbus-sysdeps.c
index c76603a8..1a736e42 100644
--- a/dbus/dbus-sysdeps.c
+++ b/dbus/dbus-sysdeps.c
@@ -185,7 +185,19 @@ _dbus_getenv (const char *varname)
dbus_bool_t
_dbus_clearenv (void)
{
- return (clearenv () == 0);
+ dbus_bool_t rc = TRUE;
+
+#ifdef HAVE_CLEARENV
+ if (clearenv () != 0)
+ rc = FALSE;
+#else
+ extern char **environ;
+
+ if (environ != NULL)
+ environ[0] = NULL;
+#endif
+
+ return rc;
}
/*