patches/gnome-session-14-bad-clients.diff
author yippi
Mon, 27 Sep 2010 21:07:51 +0000
changeset 20108 51df67ca9307
parent 15635 0556629619ed
permissions -rw-r--r--
I had these modules listed as being owned by me, but they are really owned by wangke, correcting.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
15635
0556629619ed 2009-04-16 Wang Xin <[email protected]>
jedy
parents: 15388
diff changeset
     1
diff -urN gnome-session-2.26.1/gnome-session/gsm-session-save.c ../SUNWgnome-session-2.25.91.hacked/gnome-session-2.25.92/gnome-session/gsm-session-save.c
0556629619ed 2009-04-16 Wang Xin <[email protected]>
jedy
parents: 15388
diff changeset
     2
--- gnome-session-2.26.1/gnome-session/gsm-session-save.c	2009-03-03 16:58:00.000000000 +0000
0556629619ed 2009-04-16 Wang Xin <[email protected]>
jedy
parents: 15388
diff changeset
     3
+++ ../SUNWgnome-session-2.26.1.hacked/gnome-session-2.25.92/gnome-session/gsm-session-save.c	2009-03-13 13:45:06.315378000 +0000
0556629619ed 2009-04-16 Wang Xin <[email protected]>
jedy
parents: 15388
diff changeset
     4
@@ -37,6 +37,31 @@ typedef struct {
0556629619ed 2009-04-16 Wang Xin <[email protected]>
jedy
parents: 15388
diff changeset
     5
         GError     **error;
0556629619ed 2009-04-16 Wang Xin <[email protected]>
jedy
parents: 15388
diff changeset
     6
 } SessionSaveData;
15388
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
     7
 
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
     8
+char *blacklisted_app[] = {
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
     9
+	"ospm-applet",
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    10
+	"nwam-manager",
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    11
+	NULL
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    12
+};
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    13
+
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    14
+static gboolean
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    15
+is_client_blacklisted (GsmClient *client)
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    16
+{
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    17
+	char *name=NULL;
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    18
+	int i;
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    19
+
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    20
+	name = gsm_client_get_app_name (client);
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    21
+	if (name)
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    22
+		g_debug ("is_client_blacklisted: %s", name);	
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    23
+	else
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    24
+		return FALSE;
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    25
+
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    26
+	for (i=0; blacklisted_app[i] != NULL; i++) {
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    27
+		if (strcmp (name, blacklisted_app[i]) == 0)
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    28
+			return TRUE;
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    29
+	}
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    30
+	return FALSE;
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    31
+}
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    32
+
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    33
 static gboolean
15635
0556629619ed 2009-04-16 Wang Xin <[email protected]>
jedy
parents: 15388
diff changeset
    34
 save_one_client (char            *id,
0556629619ed 2009-04-16 Wang Xin <[email protected]>
jedy
parents: 15388
diff changeset
    35
                  GObject         *object,
0556629619ed 2009-04-16 Wang Xin <[email protected]>
jedy
parents: 15388
diff changeset
    36
@@ -53,6 +78,9 @@ save_one_client (char            *id,
15388
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    37
 
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    38
         client = GSM_CLIENT (object);
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    39
 
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    40
+	if (is_client_blacklisted (client))
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    41
+		return FALSE;
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    42
+
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    43
         local_error = NULL;
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    44
 
9e0d1107facf 2009-03-13 ghee teo <[email protected]>
gheet
parents:
diff changeset
    45
         keyfile = gsm_client_save (client, &local_error);