summaryrefslogtreecommitdiffstats
path: root/src/ck-manager.c
diff options
context:
space:
mode:
authorWilliam Jon McCann <mccann@jhu.edu>2007-03-06 02:31:45 -0500
committerWilliam Jon McCann <mccann@jhu.edu>2007-03-06 02:31:45 -0500
commit699923e665a4606a1b3f6822e4e4917f86a2a713 (patch)
tree9ee4f968727be0e7d6f8186a6d052fc9f1db44c0 /src/ck-manager.c
parentd9ca86ae5acb8a4a56e875c9ad0ed617f50abf65 (diff)
check for empty strings as well as null
Diffstat (limited to 'src/ck-manager.c')
-rw-r--r--src/ck-manager.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/ck-manager.c b/src/ck-manager.c
index 6a4c75b..53b90b9 100644
--- a/src/ck-manager.c
+++ b/src/ck-manager.c
@@ -314,6 +314,8 @@ remove_seat (CkManager *manager,
g_free (sid);
}
+#define IS_STR_SET(x) (x != NULL && x[0] != '\0')
+
static CkSeat *
find_seat_for_session (CkManager *manager,
CkSession *session)
@@ -345,15 +347,15 @@ find_seat_for_session (CkManager *manager,
ck_session_get_remote_host_name (session, &remote_host_name, NULL);
ck_session_is_local (session, &is_local, NULL);
- if (x11_display != NULL
- && x11_display_device != NULL
- && remote_host_name == NULL
+ if (IS_STR_SET (x11_display)
+ && IS_STR_SET (x11_display_device)
+ && ! IS_STR_SET (remote_host_name)
&& is_local == TRUE) {
is_static_x11 = TRUE;
- } else if (x11_display == NULL
- && x11_display_device == NULL
- && display_device != NULL
- && remote_host_name == NULL
+ } else if (! IS_STR_SET (x11_display)
+ && ! IS_STR_SET (x11_display_device)
+ && IS_STR_SET (display_device)
+ && ! IS_STR_SET (remote_host_name)
&& is_local == TRUE) {
is_static_text = TRUE;
}