summaryrefslogtreecommitdiff
blob: 870acdc0accf970724c6ded7a216bc2f9309d095 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
From 213aab5d984d05d09d0fbba3a76f85ed8e19a900 Mon Sep 17 00:00:00 2001
From: "Jasper St. Pierre" <jstpierre@mecheye.net>
Date: Tue, 21 Aug 2012 18:54:10 -0300
Subject: [PATCH] user-manager: Guard against NULL users

If you call act_user_manager_delete_user (manager, NULL, TRUE, &error);
you'll accidentally delete the root user. Oops.
---
 src/libaccountsservice/act-user-manager.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/libaccountsservice/act-user-manager.c b/src/libaccountsservice/act-user-manager.c
index bb09a34..1e2bf8a 100644
--- a/src/libaccountsservice/act-user-manager.c
+++ b/src/libaccountsservice/act-user-manager.c
@@ -2721,7 +2721,9 @@ act_user_manager_delete_user (ActUserManager  *manager,
 
         g_debug ("ActUserManager: Deleting user '%s' (uid %ld)", act_user_get_user_name (user), (long) act_user_get_uid (user));
 
-        g_assert (manager->priv->accounts_proxy != NULL);
+        g_return_val_if_fail (ACT_IS_USER_MANAGER (manager), FALSE);
+        g_return_val_if_fail (ACT_IS_USER (user), FALSE);
+        g_return_val_if_fail (manager->priv->accounts_proxy != NULL, FALSE);
 
         local_error = NULL;
         if (!accounts_accounts_call_delete_user_sync (manager->priv->accounts_proxy,
-- 
1.7.12