Date: Sunday, November 23, 2014 @ 18:04:56
  Author: bgyorgy
Revision: 123003

archrelease: copy trunk to community-i686, community-x86_64

Added:
  lxdm/repos/community-i686/PKGBUILD
    (from rev 123002, lxdm/trunk/PKGBUILD)
  lxdm/repos/community-i686/Xsession
    (from rev 123002, lxdm/trunk/Xsession)
  lxdm/repos/community-i686/default-config.patch
    (from rev 123002, lxdm/trunk/default-config.patch)
  lxdm/repos/community-i686/git-fixes.patch
    (from rev 123002, lxdm/trunk/git-fixes.patch)
  lxdm/repos/community-i686/lxdm.install
    (from rev 123002, lxdm/trunk/lxdm.install)
  lxdm/repos/community-i686/lxdm.pam
    (from rev 123002, lxdm/trunk/lxdm.pam)
  lxdm/repos/community-x86_64/PKGBUILD
    (from rev 123002, lxdm/trunk/PKGBUILD)
  lxdm/repos/community-x86_64/Xsession
    (from rev 123002, lxdm/trunk/Xsession)
  lxdm/repos/community-x86_64/default-config.patch
    (from rev 123002, lxdm/trunk/default-config.patch)
  lxdm/repos/community-x86_64/git-fixes.patch
    (from rev 123002, lxdm/trunk/git-fixes.patch)
  lxdm/repos/community-x86_64/lxdm.install
    (from rev 123002, lxdm/trunk/lxdm.install)
  lxdm/repos/community-x86_64/lxdm.pam
    (from rev 123002, lxdm/trunk/lxdm.pam)
Deleted:
  lxdm/repos/community-i686/PKGBUILD
  lxdm/repos/community-i686/Xsession
  lxdm/repos/community-i686/default-config.patch
  lxdm/repos/community-i686/lxdm.install
  lxdm/repos/community-i686/lxdm.pam
  lxdm/repos/community-x86_64/PKGBUILD
  lxdm/repos/community-x86_64/Xsession
  lxdm/repos/community-x86_64/default-config.patch
  lxdm/repos/community-x86_64/lxdm.install
  lxdm/repos/community-x86_64/lxdm.pam

---------------------------------------+
 /PKGBUILD                             |  136 +++++++++++++++++++++++
 /Xsession                             |  128 ++++++++++++++++++++++
 /default-config.patch                 |   42 +++++++
 /lxdm.install                         |   34 +++++
 /lxdm.pam                             |   14 ++
 community-i686/PKGBUILD               |   63 -----------
 community-i686/Xsession               |   64 -----------
 community-i686/default-config.patch   |   21 ---
 community-i686/git-fixes.patch        |  183 ++++++++++++++++++++++++++++++++
 community-i686/lxdm.install           |   17 --
 community-i686/lxdm.pam               |    7 -
 community-x86_64/PKGBUILD             |   63 -----------
 community-x86_64/Xsession             |   64 -----------
 community-x86_64/default-config.patch |   21 ---
 community-x86_64/git-fixes.patch      |  183 ++++++++++++++++++++++++++++++++
 community-x86_64/lxdm.install         |   17 --
 community-x86_64/lxdm.pam             |    7 -
 17 files changed, 720 insertions(+), 344 deletions(-)

Deleted: community-i686/PKGBUILD
===================================================================
--- community-i686/PKGBUILD     2014-11-23 17:04:39 UTC (rev 123002)
+++ community-i686/PKGBUILD     2014-11-23 17:04:56 UTC (rev 123003)
@@ -1,63 +0,0 @@
-# $Id$
-# Maintainer: Balló György <ballogyor+arch at gmail dot com>
-# Contributor: Bartłomiej Piotrowski <bpiotrow...@archlinux.org>
-# Contributor: AndyRTR <andy...@archlinux.org>
-# Contributor: kiefer <jorgelmad...@gmail.com>
-
-pkgname=lxdm
-pkgver=0.5.0
-pkgrel=2
-pkgdesc='Lightweight X11 Display Manager'
-arch=('i686' 'x86_64')
-url="https://sourceforge.net/projects/lxdm/";
-license=('GPL')
-groups=('lxde')
-depends=('gtk2' 'xorg-server')
-makedepends=('intltool' 'iso-codes')
-optdepends=('gtk-engines: default GTK+ theme'
-            'iso-codes: show language names in language chooser'
-            'librsvg: display the default background')
-install=$pkgname.install
-backup=('etc/lxdm/lxdm.conf' 'etc/pam.d/lxdm' 'etc/lxdm/Xsession'
-        'etc/lxdm/PreLogin' 'etc/lxdm/LoginReady' 'etc/lxdm/PostLogin'
-        'etc/lxdm/PostLogout' 'etc/lxdm/PreReboot' 'etc/lxdm/PreShutdown')
-source=(http://downloads.sourceforge.net/lxdm/$pkgname-$pkgver.tar.xz
-        default-config.patch
-        lxdm.pam
-        Xsession)
-md5sums=('a51686720e606ca456d7f56ae4159d1f'
-         'f0ae6c072f151104c53a030fd7757821'
-         'c941ef896248bc7c03901b513490425c'
-         'd9c8f8c9e6de52dbc389696454c8f572')
-
-prepare(){
-  cd "$srcdir/$pkgname-$pkgver"
-
-  # Adjust Arch-specific settings
-  patch -Np1 -i ../default-config.patch
-
-  # Use our custom pam and Xsession files
-  cp ../lxdm.pam pam/lxdm
-  cp ../Xsession data/Xsession
-
-  # Support for pulseaudio
-  echo 'test -x /usr/bin/pax11publish && /usr/bin/pax11publish -r' 
>>data/PostLogout.in
-}
-
-build() {
-  cd "$srcdir/$pkgname-$pkgver"
-  ./configure --prefix=/usr --sbindir=/usr/bin --libexecdir=/usr/lib/lxdm \
-              --sysconfdir=/etc --localstatedir=/var
-  make
-}
-
-package() {
-  cd "$srcdir/$pkgname-$pkgver"
-  make DESTDIR="$pkgdir" install
-  chmod 644 "$pkgdir/etc/lxdm/lxdm.conf"
-
-  # Home directory
-  install -dm 755 "$pkgdir/var/lib/lxdm"
-  echo 'GDK_CORE_DEVICE_EVENTS=true' > "$pkgdir"/var/lib/lxdm/.pam_environment
-  chown -R 121:121 "$pkgdir/var/lib/lxdm"
-}

Copied: lxdm/repos/community-i686/PKGBUILD (from rev 123002, 
lxdm/trunk/PKGBUILD)
===================================================================
--- community-i686/PKGBUILD                             (rev 0)
+++ community-i686/PKGBUILD     2014-11-23 17:04:56 UTC (rev 123003)
@@ -0,0 +1,68 @@
+# $Id$
+# Maintainer: Balló György <ballogyor+arch at gmail dot com>
+# Contributor: Bartłomiej Piotrowski <bpiotrow...@archlinux.org>
+# Contributor: AndyRTR <andy...@archlinux.org>
+# Contributor: kiefer <jorgelmad...@gmail.com>
+
+pkgname=lxdm
+pkgver=0.5.0
+pkgrel=3
+pkgdesc='Lightweight X11 Display Manager'
+arch=('i686' 'x86_64')
+url="https://sourceforge.net/projects/lxdm/";
+license=('GPL')
+groups=('lxde')
+depends=('gtk2' 'xorg-server')
+makedepends=('intltool' 'iso-codes')
+optdepends=('gtk-engines: default GTK+ theme'
+            'iso-codes: show language names in language chooser'
+            'librsvg: display the default background')
+install=$pkgname.install
+backup=('etc/lxdm/lxdm.conf' 'etc/pam.d/lxdm' 'etc/lxdm/Xsession'
+        'etc/lxdm/PreLogin' 'etc/lxdm/LoginReady' 'etc/lxdm/PostLogin'
+        'etc/lxdm/PostLogout' 'etc/lxdm/PreReboot' 'etc/lxdm/PreShutdown')
+source=(http://downloads.sourceforge.net/lxdm/$pkgname-$pkgver.tar.xz
+        git-fixes.patch
+        default-config.patch
+        lxdm.pam
+        Xsession)
+md5sums=('a51686720e606ca456d7f56ae4159d1f'
+         '3463d9b886d9ee847cbbb23bc586a3d3'
+         'f0ae6c072f151104c53a030fd7757821'
+         'c941ef896248bc7c03901b513490425c'
+         'd9c8f8c9e6de52dbc389696454c8f572')
+
+prepare(){
+  cd "$srcdir/$pkgname-$pkgver"
+
+  # Apply some fixes from git
+  patch -Np1 -i ../git-fixes.patch
+
+  # Adjust Arch-specific settings
+  patch -Np1 -i ../default-config.patch
+
+  # Use our custom pam and Xsession files
+  cp ../lxdm.pam pam/lxdm
+  cp ../Xsession data/Xsession
+
+  # Support for pulseaudio
+  echo 'test -x /usr/bin/pax11publish && /usr/bin/pax11publish -r' 
>>data/PostLogout.in
+}
+
+build() {
+  cd "$srcdir/$pkgname-$pkgver"
+  ./configure --prefix=/usr --sbindir=/usr/bin --libexecdir=/usr/lib/lxdm \
+              --sysconfdir=/etc --localstatedir=/var
+  make
+}
+
+package() {
+  cd "$srcdir/$pkgname-$pkgver"
+  make DESTDIR="$pkgdir" install
+  chmod 644 "$pkgdir/etc/lxdm/lxdm.conf"
+
+  # Home directory
+  install -dm 755 "$pkgdir/var/lib/lxdm"
+  echo 'GDK_CORE_DEVICE_EVENTS=true' > "$pkgdir"/var/lib/lxdm/.pam_environment
+  chown -R 121:121 "$pkgdir/var/lib/lxdm"
+}

Deleted: community-i686/Xsession
===================================================================
--- community-i686/Xsession     2014-11-23 17:04:39 UTC (rev 123002)
+++ community-i686/Xsession     2014-11-23 17:04:56 UTC (rev 123003)
@@ -1,64 +0,0 @@
-#!/bin/sh
-#
-# LXDM wrapper to run around X sessions.
-
-echo "Running X session wrapper"
-
-if [ $# -eq 1 -a -n "$1" ]; then
-       LXSESSION=$1
-else
-# default session
-       LXSESSION=/usr/bin/startlxde
-fi
-
-# Load profile
-for file in "/etc/profile" "$HOME/.profile" "/etc/xprofile" "$HOME/.xprofile"; 
do
-    if [ -f "$file" ]; then
-        echo "Loading profile from $file";
-        . "$file"
-    fi
-done
-
-# Load resources
-for file in "/etc/X11/Xresources" "$HOME/.Xresources"; do
-    if [ -f "$file" ]; then
-        echo "Loading resource: $file"
-        xrdb -nocpp -merge "$file"
-    fi
-done
-
-# Load keymaps
-for file in "/etc/X11/Xkbmap" "$HOME/.Xkbmap"; do
-    if [ -f "$file" ]; then
-        echo "Loading keymap: $file"
-        setxkbmap `cat "$file"`
-        XKB_IN_USE=yes
-    fi
-done
-
-# Load xmodmap if not using XKB
-if [ -z "$XKB_IN_USE" ]; then
-    for file in "/etc/X11/Xmodmap" "$HOME/.Xmodmap"; do
-        if [ -f "$file" ]; then
-           echo "Loading modmap: $file"
-           xmodmap "$file"
-        fi
-    done
-fi
-
-unset XKB_IN_USE
-
-# Run all system xinitrc shell scripts.
-xinitdir="/etc/X11/xinit/xinitrc.d"
-if [ -d "$xinitdir" ]; then
-    for script in $xinitdir/*; do
-        echo "Loading xinit script $script"
-        if [ -x "$script" -a ! -d "$script" ]; then
-            . "$script"
-        fi
-    done
-fi
-
-echo "X session wrapper complete, running session $LXSESSION"
-
-exec $LXSESSION

Copied: lxdm/repos/community-i686/Xsession (from rev 123002, 
lxdm/trunk/Xsession)
===================================================================
--- community-i686/Xsession                             (rev 0)
+++ community-i686/Xsession     2014-11-23 17:04:56 UTC (rev 123003)
@@ -0,0 +1,64 @@
+#!/bin/sh
+#
+# LXDM wrapper to run around X sessions.
+
+echo "Running X session wrapper"
+
+if [ $# -eq 1 -a -n "$1" ]; then
+       LXSESSION=$1
+else
+# default session
+       LXSESSION=/usr/bin/startlxde
+fi
+
+# Load profile
+for file in "/etc/profile" "$HOME/.profile" "/etc/xprofile" "$HOME/.xprofile"; 
do
+    if [ -f "$file" ]; then
+        echo "Loading profile from $file";
+        . "$file"
+    fi
+done
+
+# Load resources
+for file in "/etc/X11/Xresources" "$HOME/.Xresources"; do
+    if [ -f "$file" ]; then
+        echo "Loading resource: $file"
+        xrdb -nocpp -merge "$file"
+    fi
+done
+
+# Load keymaps
+for file in "/etc/X11/Xkbmap" "$HOME/.Xkbmap"; do
+    if [ -f "$file" ]; then
+        echo "Loading keymap: $file"
+        setxkbmap `cat "$file"`
+        XKB_IN_USE=yes
+    fi
+done
+
+# Load xmodmap if not using XKB
+if [ -z "$XKB_IN_USE" ]; then
+    for file in "/etc/X11/Xmodmap" "$HOME/.Xmodmap"; do
+        if [ -f "$file" ]; then
+           echo "Loading modmap: $file"
+           xmodmap "$file"
+        fi
+    done
+fi
+
+unset XKB_IN_USE
+
+# Run all system xinitrc shell scripts.
+xinitdir="/etc/X11/xinit/xinitrc.d"
+if [ -d "$xinitdir" ]; then
+    for script in $xinitdir/*; do
+        echo "Loading xinit script $script"
+        if [ -x "$script" -a ! -d "$script" ]; then
+            . "$script"
+        fi
+    done
+fi
+
+echo "X session wrapper complete, running session $LXSESSION"
+
+exec $LXSESSION

Deleted: community-i686/default-config.patch
===================================================================
--- community-i686/default-config.patch 2014-11-23 17:04:39 UTC (rev 123002)
+++ community-i686/default-config.patch 2014-11-23 17:04:56 UTC (rev 123003)
@@ -1,21 +0,0 @@
-diff -Naur lxdm.orig/data/lxdm.conf.in lxdm/data/lxdm.conf.in
---- lxdm.orig/data/lxdm.conf.in        2013-08-30 17:56:16.097006000 +0200
-+++ lxdm/data/lxdm.conf.in     2013-09-04 01:54:12.942117085 +0200
-@@ -23,7 +23,7 @@
- 
- [server]
- ## arg used to start xserver, not fully function
--# arg=/usr/bin/X -background vt1
-+arg=/usr/bin/X -background vt1
- # uncomment this if you really want xserver listen to tcp
- # tcp_listen=1
- # uncoment this if you want reset the xserver after logou
-@@ -34,7 +34,7 @@
- gtk_theme=Clearlooks
- 
- ## background of the greeter
--bg=/usr/share/backgrounds/default.png
-+# bg=/usr/share/backgrounds/default.png
- 
- ## if show bottom pane
- bottom_pane=1

Copied: lxdm/repos/community-i686/default-config.patch (from rev 123002, 
lxdm/trunk/default-config.patch)
===================================================================
--- community-i686/default-config.patch                         (rev 0)
+++ community-i686/default-config.patch 2014-11-23 17:04:56 UTC (rev 123003)
@@ -0,0 +1,21 @@
+diff -Naur lxdm.orig/data/lxdm.conf.in lxdm/data/lxdm.conf.in
+--- lxdm.orig/data/lxdm.conf.in        2013-08-30 17:56:16.097006000 +0200
++++ lxdm/data/lxdm.conf.in     2013-09-04 01:54:12.942117085 +0200
+@@ -23,7 +23,7 @@
+ 
+ [server]
+ ## arg used to start xserver, not fully function
+-# arg=/usr/bin/X -background vt1
++arg=/usr/bin/X -background vt1
+ # uncomment this if you really want xserver listen to tcp
+ # tcp_listen=1
+ # uncoment this if you want reset the xserver after logou
+@@ -34,7 +34,7 @@
+ gtk_theme=Clearlooks
+ 
+ ## background of the greeter
+-bg=/usr/share/backgrounds/default.png
++# bg=/usr/share/backgrounds/default.png
+ 
+ ## if show bottom pane
+ bottom_pane=1

Copied: lxdm/repos/community-i686/git-fixes.patch (from rev 123002, 
lxdm/trunk/git-fixes.patch)
===================================================================
--- community-i686/git-fixes.patch                              (rev 0)
+++ community-i686/git-fixes.patch      2014-11-23 17:04:56 UTC (rev 123003)
@@ -0,0 +1,183 @@
+diff --git a/src/lxcom.c b/src/lxcom.c
+index 9491cb2..397d1b5 100644
+--- a/src/lxcom.c
++++ b/src/lxcom.c
+@@ -183,7 +183,6 @@ static GString *lxcom_func(gpointer data,int uid,int 
pid,int argc,char **argv)
+       GSList *p,*n;
+       GString *res=NULL;
+       assert(argc>0 && argv!=NULL);
+-
+       do{
+       if(!strcmp(argv[0],"SIGNAL"))
+       {
+@@ -193,16 +192,18 @@ static GString *lxcom_func(gpointer data,int uid,int 
pid,int argc,char **argv)
+                       int sig=atoi(argv[1]);
+                       if(sig==SIGCHLD)
+                       {
+-                              for(p=child_watch_list;p!=NULL;p=n)
++                              CHECK_SIGCHLD:
++                              for(p=child_watch_list;p!=NULL;p=p->next)
+                               {
+                                       ChildWatch *item=p->data;
+                                       int status;
+-                                      n=p->next;
+                                       if(waitpid(item->pid,&status,WNOHANG)>0)
+                                       {
+                                               
child_watch_list=g_slist_delete_link(child_watch_list,p);
++                                              // item->func may change the 
child_watch_list
+                                               
item->func(item->data,item->pid,status);
+                                               g_free(item);
++                                              goto CHECK_SIGCHLD;
+                                       }
+                               }
+                       }
+@@ -438,7 +439,7 @@ gboolean lxcom_send(const char *sock,const char *buf,char 
**res)
+ int lxcom_add_child_watch(int pid,void (*func)(void*,int,int),void *data)
+ {
+       ChildWatch *item;
+-      if(pid<0 || !func)
++      if(pid<=0 || !func)
+               return -1;
+       item=g_new(ChildWatch,1);
+       item->func=func;
+diff --git a/src/lxdm.c b/src/lxdm.c
+index 638c30f..62ac31d 100644
+--- a/src/lxdm.c
++++ b/src/lxdm.c
+@@ -669,7 +669,7 @@ static void xauth_write_file(const char *file,int dpy,char 
data[16])
+       gethostname(addr,sizeof(addr));
+       
+       fd=open(file,O_CREAT|O_TRUNC|O_WRONLY,0600);
+-      if(!fd==-1) return;
++      if(fd==-1) return;
+       xauth_write_uint16(fd,256);             //FamilyLocalHost
+       xauth_write_string(fd,addr);
+       xauth_write_string(fd,buf);
+@@ -1022,7 +1022,18 @@ static void on_session_stop(void *data,int pid, int 
status)
+       int level;
+       LXSession *s=data;
+ 
+-      lxsession_stop(s);
++      gchar *argv[] = { "/etc/lxdm/PostLogout", NULL };
++      g_spawn_async(NULL, argv, s->env, G_SPAWN_SEARCH_PATH, NULL, NULL, 
NULL, NULL);
++
++      if(g_key_file_get_integer(config,"server","reset",NULL)!=1)
++      {
++              lxsession_stop(s);
++      }
++      else
++      {
++              lxsession_free(s);
++              s=NULL;
++      }
+ 
+       level=get_run_level();
+       if(level=='0' || level=='6')
+@@ -1034,22 +1045,19 @@ static void on_session_stop(void *data,int pid, int 
status)
+               g_message("run level %c\n",level);
+               lxdm_quit_self(0);
+       }
+-      if(s!=lxsession_greeter())
++      if(s && s!=lxsession_greeter())
+       {
+               lxsession_free(s);
+       }
+-      else if(g_key_file_get_integer(config,"server","reset",NULL)==1)
++      else if(!s)
+       {
+-              lxsession_free(s);
+               lxsession_greeter();
+       }
+-      gchar *argv[] = { "/etc/lxdm/PostLogout", NULL };
+-      g_spawn_async(NULL, argv, s->env, G_SPAWN_SEARCH_PATH, NULL, NULL, 
NULL, NULL);
+ }
+ 
+-gboolean lxdm_get_session_info(char *session,char **pname,char **pexec)
++gboolean lxdm_get_session_info(const char *session,char **pname,char 
**pexec,char **pdesktop_names)
+ {
+-      char *name=NULL,*exec=NULL;
++      char *name=NULL,*exec=NULL,**names=NULL,*desktop_names=NULL;
+       if(!session || !session[0])
+       {
+               name=g_key_file_get_string(config, "base", "session", 0);
+@@ -1072,6 +1080,11 @@ gboolean lxdm_get_session_info(char *session,char 
**pname,char **pexec)
+                       }
+                       name=g_key_file_get_string(cfg,"Desktop 
Entry","Name",NULL);
+                       exec=g_key_file_get_string(cfg,"Desktop 
Entry","Exec",NULL);
++                      names = g_key_file_get_string_list (cfg, "Desktop 
Entry", "DesktopNames", NULL, NULL);
++                      if (names != NULL) {
++                              desktop_names = g_strjoinv (":", names);
++                              g_strfreev (names);
++                      }
+                       g_key_file_free(cfg);
+                       if(!name || !exec)
+                       {
+@@ -1097,6 +1110,11 @@ gboolean lxdm_get_session_info(char *session,char 
**pname,char **pexec)
+                       {
+                               name = g_key_file_get_locale_string(f, "Desktop 
Entry", "Name", NULL, NULL);
+                               exec = g_key_file_get_string(f, "Desktop 
Entry", "Exec", NULL);
++                              names = g_key_file_get_string_list (f, "Desktop 
Entry", "DesktopNames", NULL, NULL);
++                              if (names != NULL) {
++                                      desktop_names = g_strjoinv (":", names);
++                                      g_strfreev (names);
++                              }
+                       }
+                       else
+                       {
+@@ -1120,6 +1138,7 @@ gboolean lxdm_get_session_info(char *session,char 
**pname,char **pexec)
+       }
+       if(pname) *pname=name;
+       if(pexec) *pexec=exec;
++      if(pdesktop_names) *pdesktop_names=desktop_names;
+       return TRUE;
+ }
+ 
+@@ -1194,7 +1213,7 @@ static void lxdm_save_login(char *session,char *lang)
+ 
+ void lxdm_do_login(struct passwd *pw, char *session, char *lang, char *option)
+ {
+-      char *session_name=0,*session_exec=0;
++      char *session_name=0,*session_exec=0,*session_desktop_names=0;
+       gboolean alloc_session=FALSE,alloc_lang=FALSE;
+       int pid;
+       LXSession *s,*prev;
+@@ -1222,7 +1241,7 @@ void lxdm_do_login(struct passwd *pw, char *session, 
char *lang, char *option)
+               g_key_file_free(dmrc);
+       }
+ 
+-      if(!lxdm_get_session_info(session,&session_name,&session_exec))
++      
if(!lxdm_get_session_info(session,&session_name,&session_exec,&session_desktop_names))
+       {
+               if(alloc_session)
+                       g_free(session);
+@@ -1329,6 +1348,9 @@ void lxdm_do_login(struct passwd *pw, char *session, 
char *lang, char *option)
+               env=g_environ_setenv(env, "LC_MESSAGES", lang, TRUE);
+               env=g_environ_setenv(env, "LANGUAGE", lang, TRUE);
+       }
++
++      if( session_desktop_names && session_desktop_names[0] )
++              env=g_environ_setenv(env, "XDG_CURRENT_DESKTOP", 
session_desktop_names, TRUE);
+       
+ #ifndef DISABLE_XAUTH
+       env=create_client_auth(pw,env);
+@@ -1348,6 +1370,7 @@ void lxdm_do_login(struct passwd *pw, char *session, 
char *lang, char *option)
+       
+       g_free(session_name);
+       g_free(session_exec);
++      g_free(session_desktop_names);
+       if(alloc_session)
+               g_free(session);
+       if(alloc_lang)
+diff --git a/src/ui.c b/src/ui.c
+index f233589..efe02a1 100644
+--- a/src/ui.c
++++ b/src/ui.c
+@@ -145,7 +145,7 @@ static gboolean on_greeter_input(GIOChannel *source, 
GIOCondition condition, gpo
+       else if( !strncmp(str, "shutdown", 6) )
+               lxdm_do_shutdown();
+       else if( !strncmp(str, "log ", 4) )
+-              g_message(str + 4);
++              g_message("%s",str + 4);
+       else if( !strncmp(str, "login ", 6) )
+       {
+               char *user = greeter_param(str, "user");

Deleted: community-i686/lxdm.install
===================================================================
--- community-i686/lxdm.install 2014-11-23 17:04:39 UTC (rev 123002)
+++ community-i686/lxdm.install 2014-11-23 17:04:56 UTC (rev 123003)
@@ -1,17 +0,0 @@
-post_install() {
-  getent group lxdm > /dev/null 2>&1 && \
-    groupmod -g 121 lxdm > /dev/null 2>&1 || \
-    groupadd -g 121 lxdm
-  getent passwd lxdm > /dev/null 2>&1 && \
-    usermod -c 'Lightweight X11 Display Manager' -u 121 -g 121 -d 
/var/lib/lxdm -s /sbin/nologin lxdm > /dev/null 2>&1 || \
-    useradd -c 'Lightweight X11 Display Manager' -u 121 -g 121 -d 
/var/lib/lxdm -s /sbin/nologin lxdm
-  passwd -l lxdm > /dev/null
-}
-
-post_upgrade() {
-  post_install
-}
-
-post_remove() {
-  getent passwd lxdm > /dev/null 2>&1 && userdel lxdm
-}

Copied: lxdm/repos/community-i686/lxdm.install (from rev 123002, 
lxdm/trunk/lxdm.install)
===================================================================
--- community-i686/lxdm.install                         (rev 0)
+++ community-i686/lxdm.install 2014-11-23 17:04:56 UTC (rev 123003)
@@ -0,0 +1,17 @@
+post_install() {
+  getent group lxdm > /dev/null 2>&1 && \
+    groupmod -g 121 lxdm > /dev/null 2>&1 || \
+    groupadd -g 121 lxdm
+  getent passwd lxdm > /dev/null 2>&1 && \
+    usermod -c 'Lightweight X11 Display Manager' -u 121 -g 121 -d 
/var/lib/lxdm -s /sbin/nologin lxdm > /dev/null 2>&1 || \
+    useradd -c 'Lightweight X11 Display Manager' -u 121 -g 121 -d 
/var/lib/lxdm -s /sbin/nologin lxdm
+  passwd -l lxdm > /dev/null
+}
+
+post_upgrade() {
+  post_install
+}
+
+post_remove() {
+  getent passwd lxdm > /dev/null 2>&1 && userdel lxdm
+}

Deleted: community-i686/lxdm.pam
===================================================================
--- community-i686/lxdm.pam     2014-11-23 17:04:39 UTC (rev 123002)
+++ community-i686/lxdm.pam     2014-11-23 17:04:56 UTC (rev 123003)
@@ -1,7 +0,0 @@
-#%PAM-1.0
-auth        include     system-login
--auth       optional    pam_gnome_keyring.so
-account     include     system-login
-password    include     system-login
-session     include     system-login
--session    optional    pam_gnome_keyring.so auto_start

Copied: lxdm/repos/community-i686/lxdm.pam (from rev 123002, 
lxdm/trunk/lxdm.pam)
===================================================================
--- community-i686/lxdm.pam                             (rev 0)
+++ community-i686/lxdm.pam     2014-11-23 17:04:56 UTC (rev 123003)
@@ -0,0 +1,7 @@
+#%PAM-1.0
+auth        include     system-login
+-auth       optional    pam_gnome_keyring.so
+account     include     system-login
+password    include     system-login
+session     include     system-login
+-session    optional    pam_gnome_keyring.so auto_start

Deleted: community-x86_64/PKGBUILD
===================================================================
--- community-x86_64/PKGBUILD   2014-11-23 17:04:39 UTC (rev 123002)
+++ community-x86_64/PKGBUILD   2014-11-23 17:04:56 UTC (rev 123003)
@@ -1,63 +0,0 @@
-# $Id$
-# Maintainer: Balló György <ballogyor+arch at gmail dot com>
-# Contributor: Bartłomiej Piotrowski <bpiotrow...@archlinux.org>
-# Contributor: AndyRTR <andy...@archlinux.org>
-# Contributor: kiefer <jorgelmad...@gmail.com>
-
-pkgname=lxdm
-pkgver=0.5.0
-pkgrel=2
-pkgdesc='Lightweight X11 Display Manager'
-arch=('i686' 'x86_64')
-url="https://sourceforge.net/projects/lxdm/";
-license=('GPL')
-groups=('lxde')
-depends=('gtk2' 'xorg-server')
-makedepends=('intltool' 'iso-codes')
-optdepends=('gtk-engines: default GTK+ theme'
-            'iso-codes: show language names in language chooser'
-            'librsvg: display the default background')
-install=$pkgname.install
-backup=('etc/lxdm/lxdm.conf' 'etc/pam.d/lxdm' 'etc/lxdm/Xsession'
-        'etc/lxdm/PreLogin' 'etc/lxdm/LoginReady' 'etc/lxdm/PostLogin'
-        'etc/lxdm/PostLogout' 'etc/lxdm/PreReboot' 'etc/lxdm/PreShutdown')
-source=(http://downloads.sourceforge.net/lxdm/$pkgname-$pkgver.tar.xz
-        default-config.patch
-        lxdm.pam
-        Xsession)
-md5sums=('a51686720e606ca456d7f56ae4159d1f'
-         'f0ae6c072f151104c53a030fd7757821'
-         'c941ef896248bc7c03901b513490425c'
-         'd9c8f8c9e6de52dbc389696454c8f572')
-
-prepare(){
-  cd "$srcdir/$pkgname-$pkgver"
-
-  # Adjust Arch-specific settings
-  patch -Np1 -i ../default-config.patch
-
-  # Use our custom pam and Xsession files
-  cp ../lxdm.pam pam/lxdm
-  cp ../Xsession data/Xsession
-
-  # Support for pulseaudio
-  echo 'test -x /usr/bin/pax11publish && /usr/bin/pax11publish -r' 
>>data/PostLogout.in
-}
-
-build() {
-  cd "$srcdir/$pkgname-$pkgver"
-  ./configure --prefix=/usr --sbindir=/usr/bin --libexecdir=/usr/lib/lxdm \
-              --sysconfdir=/etc --localstatedir=/var
-  make
-}
-
-package() {
-  cd "$srcdir/$pkgname-$pkgver"
-  make DESTDIR="$pkgdir" install
-  chmod 644 "$pkgdir/etc/lxdm/lxdm.conf"
-
-  # Home directory
-  install -dm 755 "$pkgdir/var/lib/lxdm"
-  echo 'GDK_CORE_DEVICE_EVENTS=true' > "$pkgdir"/var/lib/lxdm/.pam_environment
-  chown -R 121:121 "$pkgdir/var/lib/lxdm"
-}

Copied: lxdm/repos/community-x86_64/PKGBUILD (from rev 123002, 
lxdm/trunk/PKGBUILD)
===================================================================
--- community-x86_64/PKGBUILD                           (rev 0)
+++ community-x86_64/PKGBUILD   2014-11-23 17:04:56 UTC (rev 123003)
@@ -0,0 +1,68 @@
+# $Id$
+# Maintainer: Balló György <ballogyor+arch at gmail dot com>
+# Contributor: Bartłomiej Piotrowski <bpiotrow...@archlinux.org>
+# Contributor: AndyRTR <andy...@archlinux.org>
+# Contributor: kiefer <jorgelmad...@gmail.com>
+
+pkgname=lxdm
+pkgver=0.5.0
+pkgrel=3
+pkgdesc='Lightweight X11 Display Manager'
+arch=('i686' 'x86_64')
+url="https://sourceforge.net/projects/lxdm/";
+license=('GPL')
+groups=('lxde')
+depends=('gtk2' 'xorg-server')
+makedepends=('intltool' 'iso-codes')
+optdepends=('gtk-engines: default GTK+ theme'
+            'iso-codes: show language names in language chooser'
+            'librsvg: display the default background')
+install=$pkgname.install
+backup=('etc/lxdm/lxdm.conf' 'etc/pam.d/lxdm' 'etc/lxdm/Xsession'
+        'etc/lxdm/PreLogin' 'etc/lxdm/LoginReady' 'etc/lxdm/PostLogin'
+        'etc/lxdm/PostLogout' 'etc/lxdm/PreReboot' 'etc/lxdm/PreShutdown')
+source=(http://downloads.sourceforge.net/lxdm/$pkgname-$pkgver.tar.xz
+        git-fixes.patch
+        default-config.patch
+        lxdm.pam
+        Xsession)
+md5sums=('a51686720e606ca456d7f56ae4159d1f'
+         '3463d9b886d9ee847cbbb23bc586a3d3'
+         'f0ae6c072f151104c53a030fd7757821'
+         'c941ef896248bc7c03901b513490425c'
+         'd9c8f8c9e6de52dbc389696454c8f572')
+
+prepare(){
+  cd "$srcdir/$pkgname-$pkgver"
+
+  # Apply some fixes from git
+  patch -Np1 -i ../git-fixes.patch
+
+  # Adjust Arch-specific settings
+  patch -Np1 -i ../default-config.patch
+
+  # Use our custom pam and Xsession files
+  cp ../lxdm.pam pam/lxdm
+  cp ../Xsession data/Xsession
+
+  # Support for pulseaudio
+  echo 'test -x /usr/bin/pax11publish && /usr/bin/pax11publish -r' 
>>data/PostLogout.in
+}
+
+build() {
+  cd "$srcdir/$pkgname-$pkgver"
+  ./configure --prefix=/usr --sbindir=/usr/bin --libexecdir=/usr/lib/lxdm \
+              --sysconfdir=/etc --localstatedir=/var
+  make
+}
+
+package() {
+  cd "$srcdir/$pkgname-$pkgver"
+  make DESTDIR="$pkgdir" install
+  chmod 644 "$pkgdir/etc/lxdm/lxdm.conf"
+
+  # Home directory
+  install -dm 755 "$pkgdir/var/lib/lxdm"
+  echo 'GDK_CORE_DEVICE_EVENTS=true' > "$pkgdir"/var/lib/lxdm/.pam_environment
+  chown -R 121:121 "$pkgdir/var/lib/lxdm"
+}

Deleted: community-x86_64/Xsession
===================================================================
--- community-x86_64/Xsession   2014-11-23 17:04:39 UTC (rev 123002)
+++ community-x86_64/Xsession   2014-11-23 17:04:56 UTC (rev 123003)
@@ -1,64 +0,0 @@
-#!/bin/sh
-#
-# LXDM wrapper to run around X sessions.
-
-echo "Running X session wrapper"
-
-if [ $# -eq 1 -a -n "$1" ]; then
-       LXSESSION=$1
-else
-# default session
-       LXSESSION=/usr/bin/startlxde
-fi
-
-# Load profile
-for file in "/etc/profile" "$HOME/.profile" "/etc/xprofile" "$HOME/.xprofile"; 
do
-    if [ -f "$file" ]; then
-        echo "Loading profile from $file";
-        . "$file"
-    fi
-done
-
-# Load resources
-for file in "/etc/X11/Xresources" "$HOME/.Xresources"; do
-    if [ -f "$file" ]; then
-        echo "Loading resource: $file"
-        xrdb -nocpp -merge "$file"
-    fi
-done
-
-# Load keymaps
-for file in "/etc/X11/Xkbmap" "$HOME/.Xkbmap"; do
-    if [ -f "$file" ]; then
-        echo "Loading keymap: $file"
-        setxkbmap `cat "$file"`
-        XKB_IN_USE=yes
-    fi
-done
-
-# Load xmodmap if not using XKB
-if [ -z "$XKB_IN_USE" ]; then
-    for file in "/etc/X11/Xmodmap" "$HOME/.Xmodmap"; do
-        if [ -f "$file" ]; then
-           echo "Loading modmap: $file"
-           xmodmap "$file"
-        fi
-    done
-fi
-
-unset XKB_IN_USE
-
-# Run all system xinitrc shell scripts.
-xinitdir="/etc/X11/xinit/xinitrc.d"
-if [ -d "$xinitdir" ]; then
-    for script in $xinitdir/*; do
-        echo "Loading xinit script $script"
-        if [ -x "$script" -a ! -d "$script" ]; then
-            . "$script"
-        fi
-    done
-fi
-
-echo "X session wrapper complete, running session $LXSESSION"
-
-exec $LXSESSION

Copied: lxdm/repos/community-x86_64/Xsession (from rev 123002, 
lxdm/trunk/Xsession)
===================================================================
--- community-x86_64/Xsession                           (rev 0)
+++ community-x86_64/Xsession   2014-11-23 17:04:56 UTC (rev 123003)
@@ -0,0 +1,64 @@
+#!/bin/sh
+#
+# LXDM wrapper to run around X sessions.
+
+echo "Running X session wrapper"
+
+if [ $# -eq 1 -a -n "$1" ]; then
+       LXSESSION=$1
+else
+# default session
+       LXSESSION=/usr/bin/startlxde
+fi
+
+# Load profile
+for file in "/etc/profile" "$HOME/.profile" "/etc/xprofile" "$HOME/.xprofile"; 
do
+    if [ -f "$file" ]; then
+        echo "Loading profile from $file";
+        . "$file"
+    fi
+done
+
+# Load resources
+for file in "/etc/X11/Xresources" "$HOME/.Xresources"; do
+    if [ -f "$file" ]; then
+        echo "Loading resource: $file"
+        xrdb -nocpp -merge "$file"
+    fi
+done
+
+# Load keymaps
+for file in "/etc/X11/Xkbmap" "$HOME/.Xkbmap"; do
+    if [ -f "$file" ]; then
+        echo "Loading keymap: $file"
+        setxkbmap `cat "$file"`
+        XKB_IN_USE=yes
+    fi
+done
+
+# Load xmodmap if not using XKB
+if [ -z "$XKB_IN_USE" ]; then
+    for file in "/etc/X11/Xmodmap" "$HOME/.Xmodmap"; do
+        if [ -f "$file" ]; then
+           echo "Loading modmap: $file"
+           xmodmap "$file"
+        fi
+    done
+fi
+
+unset XKB_IN_USE
+
+# Run all system xinitrc shell scripts.
+xinitdir="/etc/X11/xinit/xinitrc.d"
+if [ -d "$xinitdir" ]; then
+    for script in $xinitdir/*; do
+        echo "Loading xinit script $script"
+        if [ -x "$script" -a ! -d "$script" ]; then
+            . "$script"
+        fi
+    done
+fi
+
+echo "X session wrapper complete, running session $LXSESSION"
+
+exec $LXSESSION

Deleted: community-x86_64/default-config.patch
===================================================================
--- community-x86_64/default-config.patch       2014-11-23 17:04:39 UTC (rev 
123002)
+++ community-x86_64/default-config.patch       2014-11-23 17:04:56 UTC (rev 
123003)
@@ -1,21 +0,0 @@
-diff -Naur lxdm.orig/data/lxdm.conf.in lxdm/data/lxdm.conf.in
---- lxdm.orig/data/lxdm.conf.in        2013-08-30 17:56:16.097006000 +0200
-+++ lxdm/data/lxdm.conf.in     2013-09-04 01:54:12.942117085 +0200
-@@ -23,7 +23,7 @@
- 
- [server]
- ## arg used to start xserver, not fully function
--# arg=/usr/bin/X -background vt1
-+arg=/usr/bin/X -background vt1
- # uncomment this if you really want xserver listen to tcp
- # tcp_listen=1
- # uncoment this if you want reset the xserver after logou
-@@ -34,7 +34,7 @@
- gtk_theme=Clearlooks
- 
- ## background of the greeter
--bg=/usr/share/backgrounds/default.png
-+# bg=/usr/share/backgrounds/default.png
- 
- ## if show bottom pane
- bottom_pane=1

Copied: lxdm/repos/community-x86_64/default-config.patch (from rev 123002, 
lxdm/trunk/default-config.patch)
===================================================================
--- community-x86_64/default-config.patch                               (rev 0)
+++ community-x86_64/default-config.patch       2014-11-23 17:04:56 UTC (rev 
123003)
@@ -0,0 +1,21 @@
+diff -Naur lxdm.orig/data/lxdm.conf.in lxdm/data/lxdm.conf.in
+--- lxdm.orig/data/lxdm.conf.in        2013-08-30 17:56:16.097006000 +0200
++++ lxdm/data/lxdm.conf.in     2013-09-04 01:54:12.942117085 +0200
+@@ -23,7 +23,7 @@
+ 
+ [server]
+ ## arg used to start xserver, not fully function
+-# arg=/usr/bin/X -background vt1
++arg=/usr/bin/X -background vt1
+ # uncomment this if you really want xserver listen to tcp
+ # tcp_listen=1
+ # uncoment this if you want reset the xserver after logou
+@@ -34,7 +34,7 @@
+ gtk_theme=Clearlooks
+ 
+ ## background of the greeter
+-bg=/usr/share/backgrounds/default.png
++# bg=/usr/share/backgrounds/default.png
+ 
+ ## if show bottom pane
+ bottom_pane=1

Copied: lxdm/repos/community-x86_64/git-fixes.patch (from rev 123002, 
lxdm/trunk/git-fixes.patch)
===================================================================
--- community-x86_64/git-fixes.patch                            (rev 0)
+++ community-x86_64/git-fixes.patch    2014-11-23 17:04:56 UTC (rev 123003)
@@ -0,0 +1,183 @@
+diff --git a/src/lxcom.c b/src/lxcom.c
+index 9491cb2..397d1b5 100644
+--- a/src/lxcom.c
++++ b/src/lxcom.c
+@@ -183,7 +183,6 @@ static GString *lxcom_func(gpointer data,int uid,int 
pid,int argc,char **argv)
+       GSList *p,*n;
+       GString *res=NULL;
+       assert(argc>0 && argv!=NULL);
+-
+       do{
+       if(!strcmp(argv[0],"SIGNAL"))
+       {
+@@ -193,16 +192,18 @@ static GString *lxcom_func(gpointer data,int uid,int 
pid,int argc,char **argv)
+                       int sig=atoi(argv[1]);
+                       if(sig==SIGCHLD)
+                       {
+-                              for(p=child_watch_list;p!=NULL;p=n)
++                              CHECK_SIGCHLD:
++                              for(p=child_watch_list;p!=NULL;p=p->next)
+                               {
+                                       ChildWatch *item=p->data;
+                                       int status;
+-                                      n=p->next;
+                                       if(waitpid(item->pid,&status,WNOHANG)>0)
+                                       {
+                                               
child_watch_list=g_slist_delete_link(child_watch_list,p);
++                                              // item->func may change the 
child_watch_list
+                                               
item->func(item->data,item->pid,status);
+                                               g_free(item);
++                                              goto CHECK_SIGCHLD;
+                                       }
+                               }
+                       }
+@@ -438,7 +439,7 @@ gboolean lxcom_send(const char *sock,const char *buf,char 
**res)
+ int lxcom_add_child_watch(int pid,void (*func)(void*,int,int),void *data)
+ {
+       ChildWatch *item;
+-      if(pid<0 || !func)
++      if(pid<=0 || !func)
+               return -1;
+       item=g_new(ChildWatch,1);
+       item->func=func;
+diff --git a/src/lxdm.c b/src/lxdm.c
+index 638c30f..62ac31d 100644
+--- a/src/lxdm.c
++++ b/src/lxdm.c
+@@ -669,7 +669,7 @@ static void xauth_write_file(const char *file,int dpy,char 
data[16])
+       gethostname(addr,sizeof(addr));
+       
+       fd=open(file,O_CREAT|O_TRUNC|O_WRONLY,0600);
+-      if(!fd==-1) return;
++      if(fd==-1) return;
+       xauth_write_uint16(fd,256);             //FamilyLocalHost
+       xauth_write_string(fd,addr);
+       xauth_write_string(fd,buf);
+@@ -1022,7 +1022,18 @@ static void on_session_stop(void *data,int pid, int 
status)
+       int level;
+       LXSession *s=data;
+ 
+-      lxsession_stop(s);
++      gchar *argv[] = { "/etc/lxdm/PostLogout", NULL };
++      g_spawn_async(NULL, argv, s->env, G_SPAWN_SEARCH_PATH, NULL, NULL, 
NULL, NULL);
++
++      if(g_key_file_get_integer(config,"server","reset",NULL)!=1)
++      {
++              lxsession_stop(s);
++      }
++      else
++      {
++              lxsession_free(s);
++              s=NULL;
++      }
+ 
+       level=get_run_level();
+       if(level=='0' || level=='6')
+@@ -1034,22 +1045,19 @@ static void on_session_stop(void *data,int pid, int 
status)
+               g_message("run level %c\n",level);
+               lxdm_quit_self(0);
+       }
+-      if(s!=lxsession_greeter())
++      if(s && s!=lxsession_greeter())
+       {
+               lxsession_free(s);
+       }
+-      else if(g_key_file_get_integer(config,"server","reset",NULL)==1)
++      else if(!s)
+       {
+-              lxsession_free(s);
+               lxsession_greeter();
+       }
+-      gchar *argv[] = { "/etc/lxdm/PostLogout", NULL };
+-      g_spawn_async(NULL, argv, s->env, G_SPAWN_SEARCH_PATH, NULL, NULL, 
NULL, NULL);
+ }
+ 
+-gboolean lxdm_get_session_info(char *session,char **pname,char **pexec)
++gboolean lxdm_get_session_info(const char *session,char **pname,char 
**pexec,char **pdesktop_names)
+ {
+-      char *name=NULL,*exec=NULL;
++      char *name=NULL,*exec=NULL,**names=NULL,*desktop_names=NULL;
+       if(!session || !session[0])
+       {
+               name=g_key_file_get_string(config, "base", "session", 0);
+@@ -1072,6 +1080,11 @@ gboolean lxdm_get_session_info(char *session,char 
**pname,char **pexec)
+                       }
+                       name=g_key_file_get_string(cfg,"Desktop 
Entry","Name",NULL);
+                       exec=g_key_file_get_string(cfg,"Desktop 
Entry","Exec",NULL);
++                      names = g_key_file_get_string_list (cfg, "Desktop 
Entry", "DesktopNames", NULL, NULL);
++                      if (names != NULL) {
++                              desktop_names = g_strjoinv (":", names);
++                              g_strfreev (names);
++                      }
+                       g_key_file_free(cfg);
+                       if(!name || !exec)
+                       {
+@@ -1097,6 +1110,11 @@ gboolean lxdm_get_session_info(char *session,char 
**pname,char **pexec)
+                       {
+                               name = g_key_file_get_locale_string(f, "Desktop 
Entry", "Name", NULL, NULL);
+                               exec = g_key_file_get_string(f, "Desktop 
Entry", "Exec", NULL);
++                              names = g_key_file_get_string_list (f, "Desktop 
Entry", "DesktopNames", NULL, NULL);
++                              if (names != NULL) {
++                                      desktop_names = g_strjoinv (":", names);
++                                      g_strfreev (names);
++                              }
+                       }
+                       else
+                       {
+@@ -1120,6 +1138,7 @@ gboolean lxdm_get_session_info(char *session,char 
**pname,char **pexec)
+       }
+       if(pname) *pname=name;
+       if(pexec) *pexec=exec;
++      if(pdesktop_names) *pdesktop_names=desktop_names;
+       return TRUE;
+ }
+ 
+@@ -1194,7 +1213,7 @@ static void lxdm_save_login(char *session,char *lang)
+ 
+ void lxdm_do_login(struct passwd *pw, char *session, char *lang, char *option)
+ {
+-      char *session_name=0,*session_exec=0;
++      char *session_name=0,*session_exec=0,*session_desktop_names=0;
+       gboolean alloc_session=FALSE,alloc_lang=FALSE;
+       int pid;
+       LXSession *s,*prev;
+@@ -1222,7 +1241,7 @@ void lxdm_do_login(struct passwd *pw, char *session, 
char *lang, char *option)
+               g_key_file_free(dmrc);
+       }
+ 
+-      if(!lxdm_get_session_info(session,&session_name,&session_exec))
++      
if(!lxdm_get_session_info(session,&session_name,&session_exec,&session_desktop_names))
+       {
+               if(alloc_session)
+                       g_free(session);
+@@ -1329,6 +1348,9 @@ void lxdm_do_login(struct passwd *pw, char *session, 
char *lang, char *option)
+               env=g_environ_setenv(env, "LC_MESSAGES", lang, TRUE);
+               env=g_environ_setenv(env, "LANGUAGE", lang, TRUE);
+       }
++
++      if( session_desktop_names && session_desktop_names[0] )
++              env=g_environ_setenv(env, "XDG_CURRENT_DESKTOP", 
session_desktop_names, TRUE);
+       
+ #ifndef DISABLE_XAUTH
+       env=create_client_auth(pw,env);
+@@ -1348,6 +1370,7 @@ void lxdm_do_login(struct passwd *pw, char *session, 
char *lang, char *option)
+       
+       g_free(session_name);
+       g_free(session_exec);
++      g_free(session_desktop_names);
+       if(alloc_session)
+               g_free(session);
+       if(alloc_lang)
+diff --git a/src/ui.c b/src/ui.c
+index f233589..efe02a1 100644
+--- a/src/ui.c
++++ b/src/ui.c
+@@ -145,7 +145,7 @@ static gboolean on_greeter_input(GIOChannel *source, 
GIOCondition condition, gpo
+       else if( !strncmp(str, "shutdown", 6) )
+               lxdm_do_shutdown();
+       else if( !strncmp(str, "log ", 4) )
+-              g_message(str + 4);
++              g_message("%s",str + 4);
+       else if( !strncmp(str, "login ", 6) )
+       {
+               char *user = greeter_param(str, "user");

Deleted: community-x86_64/lxdm.install
===================================================================
--- community-x86_64/lxdm.install       2014-11-23 17:04:39 UTC (rev 123002)
+++ community-x86_64/lxdm.install       2014-11-23 17:04:56 UTC (rev 123003)
@@ -1,17 +0,0 @@
-post_install() {
-  getent group lxdm > /dev/null 2>&1 && \
-    groupmod -g 121 lxdm > /dev/null 2>&1 || \
-    groupadd -g 121 lxdm
-  getent passwd lxdm > /dev/null 2>&1 && \
-    usermod -c 'Lightweight X11 Display Manager' -u 121 -g 121 -d 
/var/lib/lxdm -s /sbin/nologin lxdm > /dev/null 2>&1 || \
-    useradd -c 'Lightweight X11 Display Manager' -u 121 -g 121 -d 
/var/lib/lxdm -s /sbin/nologin lxdm
-  passwd -l lxdm > /dev/null
-}
-
-post_upgrade() {
-  post_install
-}
-
-post_remove() {
-  getent passwd lxdm > /dev/null 2>&1 && userdel lxdm
-}

Copied: lxdm/repos/community-x86_64/lxdm.install (from rev 123002, 
lxdm/trunk/lxdm.install)
===================================================================
--- community-x86_64/lxdm.install                               (rev 0)
+++ community-x86_64/lxdm.install       2014-11-23 17:04:56 UTC (rev 123003)
@@ -0,0 +1,17 @@
+post_install() {
+  getent group lxdm > /dev/null 2>&1 && \
+    groupmod -g 121 lxdm > /dev/null 2>&1 || \
+    groupadd -g 121 lxdm
+  getent passwd lxdm > /dev/null 2>&1 && \
+    usermod -c 'Lightweight X11 Display Manager' -u 121 -g 121 -d 
/var/lib/lxdm -s /sbin/nologin lxdm > /dev/null 2>&1 || \
+    useradd -c 'Lightweight X11 Display Manager' -u 121 -g 121 -d 
/var/lib/lxdm -s /sbin/nologin lxdm
+  passwd -l lxdm > /dev/null
+}
+
+post_upgrade() {
+  post_install
+}
+
+post_remove() {
+  getent passwd lxdm > /dev/null 2>&1 && userdel lxdm
+}

Deleted: community-x86_64/lxdm.pam
===================================================================
--- community-x86_64/lxdm.pam   2014-11-23 17:04:39 UTC (rev 123002)
+++ community-x86_64/lxdm.pam   2014-11-23 17:04:56 UTC (rev 123003)
@@ -1,7 +0,0 @@
-#%PAM-1.0
-auth        include     system-login
--auth       optional    pam_gnome_keyring.so
-account     include     system-login
-password    include     system-login
-session     include     system-login
--session    optional    pam_gnome_keyring.so auto_start

Copied: lxdm/repos/community-x86_64/lxdm.pam (from rev 123002, 
lxdm/trunk/lxdm.pam)
===================================================================
--- community-x86_64/lxdm.pam                           (rev 0)
+++ community-x86_64/lxdm.pam   2014-11-23 17:04:56 UTC (rev 123003)
@@ -0,0 +1,7 @@
+#%PAM-1.0
+auth        include     system-login
+-auth       optional    pam_gnome_keyring.so
+account     include     system-login
+password    include     system-login
+session     include     system-login
+-session    optional    pam_gnome_keyring.so auto_start

Reply via email to