summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMichael Terry <michael.terry@canonical.com>2014-02-18 16:00:57 -0500
committerMichael Terry <michael.terry@canonical.com>2014-02-18 16:00:57 -0500
commit6b90c538990ac8d8d0d3634dba9c58874f2f3491 (patch)
tree3d209e5a5be68690fc57148d973419aebc6fabdf /src
parent02c262c40c904a57e2981e90543321dba7094c3c (diff)
downloadlightdm-6b90c538990ac8d8d0d3634dba9c58874f2f3491.tar.gz
Add liblightdm function to ensure a shared data directory
Diffstat (limited to 'src')
-rw-r--r--src/greeter.c9
-rw-r--r--src/shared-data-manager.c2
2 files changed, 9 insertions, 2 deletions
diff --git a/src/greeter.c b/src/greeter.c
index 4ed18c2f..554b90f4 100644
--- a/src/greeter.c
+++ b/src/greeter.c
@@ -19,6 +19,7 @@
#include "greeter.h"
#include "configuration.h"
+#include "shared-data-manager.h"
enum {
PROP_0,
@@ -89,7 +90,8 @@ typedef enum
GREETER_MESSAGE_START_SESSION,
GREETER_MESSAGE_CANCEL_AUTHENTICATION,
GREETER_MESSAGE_SET_LANGUAGE,
- GREETER_MESSAGE_AUTHENTICATE_REMOTE
+ GREETER_MESSAGE_AUTHENTICATE_REMOTE,
+ GREETER_MESSAGE_ENSURE_SHARED_DIR,
} GreeterMessage;
/* Messages from the server to the greeter */
@@ -811,6 +813,11 @@ read_cb (GIOChannel *source, GIOCondition condition, gpointer data)
handle_set_language (greeter, language);
g_free (language);
break;
+ case GREETER_MESSAGE_ENSURE_SHARED_DIR:
+ username = read_string (greeter, &offset);
+ shared_data_manager_ensure_user_dir (shared_data_manager_get_instance (), username);
+ g_free (username);
+ break;
default:
l_warning (greeter, "Unknown message from greeter: %d", id);
break;
diff --git a/src/shared-data-manager.c b/src/shared-data-manager.c
index d4b4c188..9f0e44f9 100644
--- a/src/shared-data-manager.c
+++ b/src/shared-data-manager.c
@@ -250,7 +250,7 @@ static void
user_removed_cb (CommonUserList *list, CommonUser *user,
SharedDataManager *manager)
{
- delete_unused_user (common_user_get_name (user), NULL, manager);
+ delete_unused_user ((gpointer)common_user_get_name (user), NULL, manager);
}
void