diff --git a/src/polkit-gnome-auth-dialog.c b/src/polkit-gnome-auth-dialog.c
index db0ea81..005f08d 100644
--- a/src/polkit-gnome-auth-dialog.c
+++ b/src/polkit-gnome-auth-dialog.c
@@ -542,7 +542,10 @@ static void
 vendor_url_activated (SexyUrlLabel *url_label, char *url, gpointer user_data)
 {
         if (url != NULL) {
-                gtk_show_uri (NULL, url, GDK_CURRENT_TIME, NULL);
+		/* don't spawn anything when running under gdm */
+		if (g_getenv ("RUNNING_UNDER_GDM") == NULL) {
+			gtk_show_uri (NULL, url, GDK_CURRENT_TIME, NULL);
+		}
         }
 }
 
@@ -553,6 +556,10 @@ action_id_activated (SexyUrlLabel *url_label, char *url, gpointer user_data)
         DBusGConnection *bus;
         DBusGProxy *manager_proxy;
 
+	/* don't spawn anything when running under gdm */
+	if (g_getenv ("RUNNING_UNDER_GDM") != NULL)
+		goto out;
+
         error = NULL;
         bus = dbus_g_bus_get (DBUS_BUS_SESSION, &error);
         if (bus == NULL) {
