diff options
author | Parabola <dev@list.parabolagnulinux.org> | 2012-05-28 20:14:47 +0000 |
---|---|---|
committer | Parabola <dev@list.parabolagnulinux.org> | 2012-05-28 20:14:47 +0000 |
commit | edec45419def1b81bd663a2859684ef55ba56269 (patch) | |
tree | caa3c2d5f4e55b38e7740a39d80a21507679c586 /extra/slim | |
parent | 483f7de4ab6a706517279a24d2efc969f4a1996d (diff) |
Mon May 28 20:14:39 UTC 2012
Diffstat (limited to 'extra/slim')
-rw-r--r-- | extra/slim/no-host.patch | 29 | ||||
-rw-r--r-- | extra/slim/restart.patch | 144 | ||||
-rw-r--r-- | extra/slim/sigterm.patch | 45 | ||||
-rw-r--r-- | extra/slim/slim-1.3.2-libpng15.patch | 11 |
4 files changed, 0 insertions, 229 deletions
diff --git a/extra/slim/no-host.patch b/extra/slim/no-host.patch deleted file mode 100644 index c40f25bca..000000000 --- a/extra/slim/no-host.patch +++ /dev/null @@ -1,29 +0,0 @@ -Datum: Sun, 30 Jan 2011 12:49:00 +0200 -Von: Samuli Suominen <ssuominen@gentoo.org> -An: jgc@archlinux.org, andyrtr@archlinux.org, thayer@archlinux.org -Betreff: SLIM and ConsoleKit 0.4.2 (and up) - -People have been coming to #xfce after Arch's ConsoleKit 0.4.3 upgrade -to ask for help why Suspend / Hibernate / and such doesn't work. - -It's because SLIM is using pam_ck_connector.so and SLIM sets Host to localhost -and makes pam_ck_connector.so believe it's actually a *remote host* called -localhost and will refuse access. - -http://bugs.gentoo.org/346037 -https://developer.berlios.de/bugs/?func=detailbug&bug_id=17757&group_id=2663 -http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-misc/slim/files/346037-stop_setting_host_for_pam_ck_connector_so.patch?view=log - - -diff -aur old/app.cpp new/app.cpp ---- old/app.cpp 2011-01-30 12:39:34.033337944 +0100 -+++ new/app.cpp 2011-01-30 12:40:25.843337943 +0100 -@@ -228,8 +228,6 @@ - pam.start("slim"); - pam.set_item(PAM::Authenticator::TTY, DisplayName); - pam.set_item(PAM::Authenticator::Requestor, "root"); -- pam.set_item(PAM::Authenticator::Host, "localhost"); -- - } - catch(PAM::Exception& e){ - cerr << APPNAME << ": " << e << endl; diff --git a/extra/slim/restart.patch b/extra/slim/restart.patch deleted file mode 100644 index 4e5049000..000000000 --- a/extra/slim/restart.patch +++ /dev/null @@ -1,144 +0,0 @@ -http://developer.berlios.de/patch/?func=detailpatch&patch_id=2378&group_id=2663 - - -diff -aur slim-1.3.2.b/app.cpp slim-1.3.2.c/app.cpp ---- slim-1.3.2.b/app.cpp 2010-08-21 15:10:48.579631179 +0200 -+++ slim-1.3.2.c/app.cpp 2010-08-21 15:11:03.946389843 +0200 -@@ -104,6 +104,11 @@ - - extern App* LoginApp; - -+int xioerror(Display *disp) { -+ LoginApp->RestartServer(); -+ return 0; -+} -+ - void CatchSignal(int sig) { - cerr << APPNAME << ": unexpected signal " << sig << endl; - -@@ -114,19 +119,6 @@ - exit(ERR_EXIT); - } - -- --void AlarmSignal(int sig) { -- int pid = LoginApp->GetServerPID(); -- if(waitpid(pid, NULL, WNOHANG) == pid) { -- LoginApp->StopServer(); -- LoginApp->RemoveLock(); -- exit(OK_EXIT); -- } -- signal(sig, AlarmSignal); -- alarm(2); --} -- -- - void User1Signal(int sig) { - signal(sig, User1Signal); - } -@@ -277,7 +269,6 @@ - signal(SIGHUP, CatchSignal); - signal(SIGPIPE, CatchSignal); - signal(SIGUSR1, User1Signal); -- signal(SIGALRM, AlarmSignal); - - #ifndef XNEST_DEBUG - if (!force_nodaemon && cfg->getOption("daemon") == "yes") { -@@ -298,7 +289,6 @@ - - CreateServerAuth(); - StartServer(); -- alarm(2); - #endif - - } -@@ -614,6 +604,8 @@ - int status; - while (wpid != pid) { - wpid = wait(&status); -+ if (wpid == ServerPID) -+ xioerror(Dpy); // Server died, simulate IO error - } - if (WIFEXITED(status) && WEXITSTATUS(status)) { - LoginPanel->Message("Failed to execute login command"); -@@ -659,9 +651,6 @@ - - - void App::Reboot() { -- // Stop alarm clock -- alarm(0); -- - #ifdef USE_PAM - try{ - pam.end(); -@@ -684,9 +673,6 @@ - - - void App::Halt() { -- // Stop alarm clock -- alarm(0); -- - #ifdef USE_PAM - try{ - pam.end(); -@@ -772,6 +758,7 @@ - - StopServer(); - RemoveLock(); -+ while (waitpid(-1, NULL, WNOHANG) > 0); // Collects all dead childrens - Run(); - } - -@@ -842,6 +829,7 @@ - - for(cycles = 0; cycles < ncycles; cycles++) { - if((Dpy = XOpenDisplay(DisplayName))) { -+ XSetIOErrorHandler(xioerror); - return 1; - } else { - if(!ServerTimeout(1, (char *) "X server to begin accepting connections")) -@@ -926,9 +914,6 @@ - ServerPID = -1; - break; - } -- alarm(15); -- pause(); -- alarm(0); - - // Wait for server to start up - if(WaitForServer() == 0) { -@@ -963,15 +948,12 @@ - - - void App::StopServer() { -- // Stop alars clock and ignore signals -- alarm(0); - signal(SIGQUIT, SIG_IGN); - signal(SIGINT, SIG_IGN); - signal(SIGHUP, SIG_IGN); - signal(SIGPIPE, SIG_IGN); - signal(SIGTERM, SIG_DFL); - signal(SIGKILL, SIG_DFL); -- signal(SIGALRM, SIG_DFL); - - // Catch X error - XSetIOErrorHandler(IgnoreXIO); -diff -aur slim-1.3.2.b/app.h slim-1.3.2.c/app.h ---- slim-1.3.2.b/app.h 2010-08-21 15:10:40.499582804 +0200 -+++ slim-1.3.2.c/app.h 2010-08-21 15:11:03.946389843 +0200 -@@ -34,6 +34,7 @@ - ~App(); - void Run(); - int GetServerPID(); -+ void RestartServer(); - void StopServer(); - - bool serverStarted; -@@ -49,7 +50,6 @@ - void Console(); - void Exit(); - void KillAllClients(Bool top); -- void RestartServer(); - void ReadConfig(); - void OpenLog(); - void CloseLog(); diff --git a/extra/slim/sigterm.patch b/extra/slim/sigterm.patch deleted file mode 100644 index fbaeb7116..000000000 --- a/extra/slim/sigterm.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -aur old/panel.cpp new/panel.cpp ---- old/panel.cpp 2011-04-29 15:15:57.210134850 +0200 -+++ new/panel.cpp 2011-04-29 15:16:17.260285407 +0200 -@@ -10,6 +10,7 @@ - */ - - #include <sstream> -+#include <poll.h> - #include "panel.h" - - using namespace std; -@@ -288,16 +289,24 @@ - field=curfield; - bool loop = true; - OnExpose(); -+ -+ struct pollfd x11_pfd = {0}; -+ x11_pfd.fd = ConnectionNumber(Dpy); -+ x11_pfd.events = POLLIN; - while(loop) { -- XNextEvent(Dpy, &event); -- switch(event.type) { -- case Expose: -- OnExpose(); -- break; -- -- case KeyPress: -- loop=OnKeyPress(event); -- break; -+ if(XPending(Dpy) || poll(&x11_pfd, 1, -1) > 0) { -+ while(XPending(Dpy)) { -+ XNextEvent(Dpy, &event); -+ switch(event.type) { -+ case Expose: -+ OnExpose(); -+ break; -+ -+ case KeyPress: -+ loop=OnKeyPress(event); -+ break; -+ } -+ } - } - } - diff --git a/extra/slim/slim-1.3.2-libpng15.patch b/extra/slim/slim-1.3.2-libpng15.patch deleted file mode 100644 index 720608567..000000000 --- a/extra/slim/slim-1.3.2-libpng15.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- png.c -+++ png.c -@@ -57,7 +57,7 @@ - return(0); - } - -- if (setjmp(png_ptr->jmpbuf)) -+ if (setjmp(png_jmpbuf(png_ptr))) - { - png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp) NULL); - fclose(infile); |