summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Januszewski <spock@gentoo.org>2010-04-04 15:20:23 +0000
committerMichael Januszewski <spock@gentoo.org>2010-04-04 15:20:23 +0000
commit79d941a206e9be5c38fd693b8c50badb2f412532 (patch)
tree2904ee739819d660961f84e5318616eccaab291f /media-gfx
parentFix p.use.mask to properly mask video_cards_{intel,radeon} on pm-utils. (diff)
downloadhistorical-79d941a206e9be5c38fd693b8c50badb2f412532.tar.gz
historical-79d941a206e9be5c38fd693b8c50badb2f412532.tar.bz2
historical-79d941a206e9be5c38fd693b8c50badb2f412532.zip
Do not enable fadeout if it's not explicitly requested, make sure all signals are processed before exiting (bug #296152).
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64
Diffstat (limited to 'media-gfx')
-rw-r--r--media-gfx/splashutils/ChangeLog9
-rw-r--r--media-gfx/splashutils/Manifest12
-rw-r--r--media-gfx/splashutils/files/splashutils-1.5.4.3-daemon-exit-signal.patch110
-rw-r--r--media-gfx/splashutils/files/splashutils-1.5.4.3-openrc-effects.patch55
-rw-r--r--media-gfx/splashutils/splashutils-1.5.4.3-r2.ebuild4
5 files changed, 183 insertions, 7 deletions
diff --git a/media-gfx/splashutils/ChangeLog b/media-gfx/splashutils/ChangeLog
index 979bc0dd35f9..0930698c8b96 100644
--- a/media-gfx/splashutils/ChangeLog
+++ b/media-gfx/splashutils/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for media-gfx/splashutils
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/splashutils/ChangeLog,v 1.172 2010/03/09 22:11:10 josejx Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/splashutils/ChangeLog,v 1.173 2010/04/04 15:20:23 spock Exp $
+
+ 04 Apr 2010; Michał Januszewski <spock@gentoo.org>
+ splashutils-1.5.4.3-r2.ebuild,
+ +files/splashutils-1.5.4.3-daemon-exit-signal.patch,
+ +files/splashutils-1.5.4.3-openrc-effects.patch:
+ Do not enable fadeout if it's not explicitly requested, make sure all
+ signals are processed before exiting (bug #296152).
09 Mar 2010; Joseph Jezak <josejx@gentoo.org>
splashutils-1.5.4.3-r2.ebuild:
diff --git a/media-gfx/splashutils/Manifest b/media-gfx/splashutils/Manifest
index f4b552d233b8..0426ed2039c8 100644
--- a/media-gfx/splashutils/Manifest
+++ b/media-gfx/splashutils/Manifest
@@ -1,10 +1,12 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
+AUX splashutils-1.5.4.3-daemon-exit-signal.patch 2764 RMD160 cbfc7e4139fbf9f7b28a53da5ff53f5420c4c5fd SHA1 5e30fa7c4d76ad559f13795b022d45169a2bee71 SHA256 8d7d17ae6591f3de0bde18c537166710b1eac0f6aeb1507aecdf8d6a3d1553eb
AUX splashutils-1.5.4.3-fix_rc_var.patch 1084 RMD160 d60bdea6625c9ce4d42d281c38888b8bcb823525 SHA1 31b831b79ea3944a52d0ca9fd45891c73170c758 SHA256 c51b29f3c6191ac6259db52f56050a34872f07a78463a1ac1e4fbaf89d2f81d8
AUX splashutils-1.5.4.3-libjpeg.patch 1693 RMD160 d26031ef3f618bca870431dc1c2fdeba443dca23 SHA1 1c557e9db5a93470e8c6fcde6d63ade1f75fc3bc SHA256 83d9a0ededa96c213a3120c45969d6b8f00e97f2104a221541badd67f82259c7
AUX splashutils-1.5.4.3-makefile.patch 1257 RMD160 1fb565cb543efe438f5c47cf490aa3cffe07d559 SHA1 011baf9ea9c1313edb3045dc7a52c28d3b84c83e SHA256 6ca31fc77f75bda368642da7effbaa0fd3c69bce86c9e04bfe55b9ab4d259cf3
AUX splashutils-1.5.4.3-nondefault-runlevel.patch 894 RMD160 7c337e018858e091106ed3dbc71212ebaa213d39 SHA1 dbf40c7ef79ea62e113a087b3784dfd8aaea3f31 SHA256 c462ef5e4c2514bad9a5aca78cce923109bcb0cff5a292286e74b2f1e8ec457f
+AUX splashutils-1.5.4.3-openrc-effects.patch 2261 RMD160 ad5b78025b1a2520a1b44a43f3afe1fc131ab54e SHA1 72d03fd782faf611399ea9e0217af6d6739731a8 SHA256 ea416ce53c805241b05bfff48439c4c26dbbb717001356ec08f8820ff8baec09
AUX splashutils-1.5.4.3-openrc-umount-fix.patch 1152 RMD160 a5acc1c648ca41d1aabe823c6e44aad53a1bc965 SHA1 98c6233e367a54e137ef1637725924a8a2d32871 SHA256 56f48bd31c0d405abbb2d320c131f109fcf6ee7a2ef5bed00b024dd872ef31ea
AUX splashutils-1.5.4.3-splash_geninitramfs.patch 606 RMD160 cf5b1cb43bb39acf40b761bba700a742930e91b9 SHA1 c5844ce733f3da949f12ab0cd6dc5786dba5c7e4 SHA256 9fe2d8c232a58089e902af3aebeba569669310fc1219da5d2c8775d4e10929ca
AUX splashutils-openrc-0.4-fix.patch 2750 RMD160 b9e7694c7e2d2083e62f321f232be9054696f06b SHA1 1d3c6c7418a0ada751dec57dff075af709f0b383 SHA256 9da0e841d23b07b262b4f49e25986dce24f73f554f25bc4219024414ccdd9846
@@ -21,14 +23,14 @@ DIST splashutils-gentoo-1.0.16.tar.bz2 15568 RMD160 f4831c381ac875b5bf9ad9ff527a
DIST splashutils-lite-1.5.4.3.tar.bz2 426935 RMD160 e15b1c52d8c9c2886951fa7a674a9fc1707a0316 SHA1 943ffaae0b96305809ffb52f417a0fca2651a742 SHA256 3f21bd57ac67bd7426caa3ff5791d3609567db3bcd4319da29867ec42cadb362
DIST zlib-1.2.3.tar.bz2 425209 RMD160 cfba9984b354dcc38da49331457e6bfc861c6f51 SHA1 967e280f284d02284b0cd8872a8e2e04bfdc7283 SHA256 e3b9950851a19904d642c4dec518623382cf4d2ac24f70a76510c944330d28ca
EBUILD splashutils-1.5.4.3-r1.ebuild 7594 RMD160 41e2cf5d1bb3dab6f8763deabe62d4e75fe55c04 SHA1 99236658bd21a41f56868b89c5196396c2caf117 SHA256 ce6720c9a7cbec69db2e7d266da2a05d2ba9bdc89c6d48ae84d9bfaa179669ff
-EBUILD splashutils-1.5.4.3-r2.ebuild 7592 RMD160 e75b9ead64c7f6bba01a93a785d209e86bd85441 SHA1 c65286ceba285a7c3fe89de3d524d749f5bfa263 SHA256 0e35cb5016d34258648dcdb4e9a943b4aaa2ab293a32e1ed71855335bf4d4c07
+EBUILD splashutils-1.5.4.3-r2.ebuild 7721 RMD160 1d7a3ea0260b884b6f6a5dfbd3423610fc9a6049 SHA1 2400be502f6f53a983b866065fb62653cf53fffa SHA256 488cd17dfec48a89c9a6c5b634989f4680ed051ee272df4aea6bf0c10c784f52
EBUILD splashutils-1.5.4.3.ebuild 7536 RMD160 8304b9aba69d5e880487aebe09e9a85ba6df5904 SHA1 8e723f00e5474d067617dc7bcf2a6a0c4c47b6b6 SHA256 13c18b7c2e841d89e9a4247d2b74472907e3720b5f963867d67465959a115b9c
-MISC ChangeLog 31558 RMD160 aa7fcdc575c8dafe71158a0d2e10b02ea2bbe167 SHA1 29bd3999205031b0d7ecd225f27eea53502580be SHA256 36f0a3bdc343524c1bccbcb080c8b2239fbb4d39b4e77a66a6d0cd53c3a468e5
+MISC ChangeLog 31877 RMD160 72e4bb3d51d25d46217c39372a593ba075262827 SHA1 b0ee2d6fc83d8dcd3e7325e6ac7108216c6251ef SHA256 03ef2a2bcf215d0c49cd4d600e900c636de5c32efc3abc9b65a736841343e0d9
MISC metadata.xml 311 RMD160 77b41213be37a5c0c7d5822d480ae11acc1af542 SHA1 34dbe221785f338326999be3fdabc0a29df8cf31 SHA256 d548d0cef598c99abeeba18f5308fe482651ebea18746195d86e53ba334f3392
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (GNU/Linux)
-iEYEARECAAYFAkuWx2sACgkQcsIHjyDViGTXKgCgyTxA3WMiQeFAAPZUN+tSYJWy
-12sAn0PHRlW94LVaEuZse/BKDUzakcNM
-=TlxJ
+iEYEARECAAYFAku4rjgACgkQchej4aZK9/fUQQCdFYuKy5jhLn7+eZy97jV2SwHA
+4sAAmwSWDe5E1TOwrpmzCRO3d/9NRSby
+=gzC4
-----END PGP SIGNATURE-----
diff --git a/media-gfx/splashutils/files/splashutils-1.5.4.3-daemon-exit-signal.patch b/media-gfx/splashutils/files/splashutils-1.5.4.3-daemon-exit-signal.patch
new file mode 100644
index 000000000000..82284f1d2125
--- /dev/null
+++ b/media-gfx/splashutils/files/splashutils-1.5.4.3-daemon-exit-signal.patch
@@ -0,0 +1,110 @@
+diff --git a/core/src/daemon.c b/core/src/daemon.c
+index e3463fc..eae23ec 100644
+--- a/core/src/daemon.c
++++ b/core/src/daemon.c
+@@ -306,6 +306,35 @@ void handler_alarm(int unused)
+ return;
+ }
+
++int process_switch_sig(int sig)
++{
++ /* Switch from silent to verbose. */
++ if (sig == SIGUSR1) {
++ pthread_mutex_lock(&mtx_paint);
++ pthread_mutex_lock(&mtx_tty);
++ ioctl(fd_tty[config.tty_s], VT_RELDISP, 1);
++ pthread_mutex_unlock(&mtx_tty);
++
++ ctty = CTTY_VERBOSE;
++ pthread_mutex_unlock(&mtx_paint);
++ return 1;
++ /* Switch back to silent. */
++ } else if (sig == SIGUSR2) {
++ pthread_mutex_lock(&mtx_paint);
++ pthread_mutex_lock(&mtx_tty);
++ ioctl(fd_tty[config.tty_s], VT_RELDISP, 2);
++ pthread_mutex_unlock(&mtx_tty);
++
++ ctty = CTTY_SILENT;
++ pthread_mutex_unlock(&mtx_paint);
++
++ switch_silent();
++ return 2;
++ }
++
++ return 0;
++}
++
+ /*
+ * Signal handler.
+ *
+@@ -315,7 +344,7 @@ void handler_alarm(int unused)
+ */
+ void* thf_sighandler(void *unusued)
+ {
+- sigset_t sigset;
++ sigset_t sigset, sigset_switch;
+ int sig;
+
+ /* We don't handle SIGALRM. */
+@@ -329,31 +358,39 @@ void* thf_sighandler(void *unusued)
+ sigaddset(&sigset, SIGTERM);
+ sigaddset(&sigset, SIGINT);
+
++ sigemptyset(&sigset_switch);
++ sigaddset(&sigset_switch, SIGUSR1);
++ sigaddset(&sigset_switch, SIGUSR2);
++
+ while (1) {
+ sigwait(&sigset, &sig);
+
+- /* Switch from silent to verbose. */
+- if (sig == SIGUSR1) {
+- pthread_mutex_lock(&mtx_paint);
+- pthread_mutex_lock(&mtx_tty);
+- ioctl(fd_tty[config.tty_s], VT_RELDISP, 1);
+- pthread_mutex_unlock(&mtx_tty);
+-
+- ctty = CTTY_VERBOSE;
+- pthread_mutex_unlock(&mtx_paint);
+- /* Switch back to silent. */
+- } else if (sig == SIGUSR2) {
+- pthread_mutex_lock(&mtx_paint);
+- pthread_mutex_lock(&mtx_tty);
+- ioctl(fd_tty[config.tty_s], VT_RELDISP, 2);
+- pthread_mutex_unlock(&mtx_tty);
+-
+- ctty = CTTY_SILENT;
+- pthread_mutex_unlock(&mtx_paint);
++ process_switch_sig(sig);
++
++ /* Internally generated terminate signal */
++ if (sig == SIGINT) {
++ struct timespec timeout;
++ timeout.tv_sec = 0;
++ timeout.tv_nsec = 0;
++ bool pending = true;
++
++ /*
++ * Process any remaining signals. There are no guarantees as to the
++ * order in which the signals are delivered, so we have to make sure
++ * all pending signals are processed before exiting.
++ */
++ while (pending) {
++ sig = sigtimedwait(&sigset_switch, NULL, &timeout);
++
++ if (sig == -1) {
++ /* No more pending signals. */
++ if (errno == EAGAIN)
++ pending = false;
++ } else {
++ process_switch_sig(sig);
++ }
++ }
+
+- switch_silent();
+- } else if (sig == SIGINT) {
+- /* internally generated terminate signal */
+ do_cleanup();
+ pthread_exit(NULL);
+ } else if (sig == SIGTERM) {
diff --git a/media-gfx/splashutils/files/splashutils-1.5.4.3-openrc-effects.patch b/media-gfx/splashutils/files/splashutils-1.5.4.3-openrc-effects.patch
new file mode 100644
index 000000000000..ede28b05bdaf
--- /dev/null
+++ b/media-gfx/splashutils/files/splashutils-1.5.4.3-openrc-effects.patch
@@ -0,0 +1,55 @@
+commit 7cf5fd02bbc6422ddbc9af7185cc47657148deb0
+Author: Michał Januszewski <spock@gentoo.org>
+Date: Sun Apr 4 16:19:40 2010 +0200
+
+ gentoo: only enable the effects that are actually selected.
+
+diff --git a/gentoo/splash.c b/gentoo/splash.c
+index 4b9a5b9..5220571 100644
+--- a/gentoo/splash.c
++++ b/gentoo/splash.c
+@@ -660,7 +660,7 @@ static int splash_start(const char *runlevel)
+ (config->type == fbspl_reboot) ? "reboot" : ((config->type == fbspl_shutdown) ? "shutdown" : "bootup"),
+ (config->kdmode == KD_GRAPHICS) ? "--kdgraphics" : "",
+ (config->textbox_visible) ? "--textbox" : "",
+- (config->effects & (FBSPL_EFF_FADEOUT | FBSPL_EFF_FADEIN)) ? "--effects=fadeout,fadein" :
++ ((config->effects & (FBSPL_EFF_FADEOUT | FBSPL_EFF_FADEIN)) == (FBSPL_EFF_FADEOUT | FBSPL_EFF_FADEIN)) ? "--effects=fadeout,fadein" :
+ ((config->effects & FBSPL_EFF_FADEOUT) ? "--effects=fadeout" :
+ ((config->effects & FBSPL_EFF_FADEIN) ? "--effects=fadein" : "")));
+
+@@ -716,11 +716,7 @@ static int splash_stop(const char *runlevel)
+
+ /* If we don't get a runlevel argument, then we're being executed
+ * because of a rc-abort event and we don't save any data. */
+- if (runlevel == NULL) {
+- return fbsplash_cache_cleanup(NULL);
+- } else {
+- return fbsplash_cache_cleanup(save);
+- }
++ return fbsplash_cache_cleanup(save);
+ }
+
+ int rc_plugin_hook(RC_HOOK hook, const char *name)
+
+commit d711147fc835cf408a9a4e7432fc565a6b952183
+Author: Michał Januszewski <spock@gentoo.org>
+Date: Sun Apr 4 16:57:23 2010 +0200
+
+ gentoo: add some comments in splash.conf
+
+diff --git a/gentoo/splash.conf b/gentoo/splash.conf
+index 4cf0a32..f056382 100644
+--- a/gentoo/splash.conf
++++ b/gentoo/splash.conf
+@@ -21,7 +21,10 @@ SPLASH_TEXTBOX="no"
+ SPLASH_AUTOVERBOSE="0"
+
+ # Name of the boot service starting X. Useful in cases when X is started
+-# by a custom initscript, other than the usual 'xdm'.
++# by a custom initscript, other than the usual 'xdm'. If you are using a
++# custom X initscript and do not set this variable correctly, do not be
++# surprised if you end up at tty1 at the end of the boot process (instead of
++# in an X session).
+ # SPLASH_XSERVICE="xdm"
+
+ #########################################################################
diff --git a/media-gfx/splashutils/splashutils-1.5.4.3-r2.ebuild b/media-gfx/splashutils/splashutils-1.5.4.3-r2.ebuild
index 85de629c505b..990d35d9b6ce 100644
--- a/media-gfx/splashutils/splashutils-1.5.4.3-r2.ebuild
+++ b/media-gfx/splashutils/splashutils-1.5.4.3-r2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/splashutils/splashutils-1.5.4.3-r2.ebuild,v 1.4 2010/03/09 22:11:10 josejx Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-gfx/splashutils/splashutils-1.5.4.3-r2.ebuild,v 1.5 2010/04/04 15:20:23 spock Exp $
EAPI="2"
@@ -86,6 +86,7 @@ src_prepare() {
epatch "${FILESDIR}"/splashutils-1.5.4.3-makefile.patch
epatch "${FILESDIR}"/splashutils-1.5.4.3-splash_geninitramfs.patch
epatch "${FILESDIR}"/splashutils-1.5.4.3-libjpeg.patch
+ epatch "${FILESDIR}"/splashutils-1.5.4.3-daemon-exit-signal.patch
cd "${SG}"
if has_version ">=sys-apps/openrc-0.4.0"; then
@@ -97,6 +98,7 @@ src_prepare() {
epatch "${FILESDIR}"/splashutils-1.5.4.3-fix_rc_var.patch
epatch "${FILESDIR}"/splashutils-1.5.4.3-openrc-umount-fix.patch
epatch "${FILESDIR}"/splashutils-1.5.4.3-nondefault-runlevel.patch
+ epatch "${FILESDIR}"/splashutils-1.5.4.3-openrc-effects.patch
cd "${S}"
rm -f m4/*