rpms/xscreensaver/F-11 xscreensaver-5.08-hacks-window-too-small.patch, NONE, 1.1 xscreensaver.spec, 1.91, 1.92

Mamoru Tasaka mtasaka at fedoraproject.org
Thu Aug 27 19:13:21 UTC 2009


Author: mtasaka

Update of /cvs/extras/rpms/xscreensaver/F-11
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv5008/F-11

Modified Files:
	xscreensaver.spec 
Added Files:
	xscreensaver-5.08-hacks-window-too-small.patch 
Log Message:
* Fri Aug 28 2009 Mamoru Tasaka <mtasaka at ioa.s.u-tokyo.ac.jp> - 1:5.08-13
- Another case of hack's crash when window size is too small
  (Ubuntu bug 418419)


xscreensaver-5.08-hacks-window-too-small.patch:
 abstractile.c |   27 ++++++++++++++++-----------
 1 file changed, 16 insertions(+), 11 deletions(-)

--- NEW FILE xscreensaver-5.08-hacks-window-too-small.patch ---
--- xscreensaver-5.08/hacks/abstractile.c.debug	2008-07-31 19:29:25.000000000 +0900
+++ xscreensaver-5.08/hacks/abstractile.c	2009-08-28 03:50:28.000000000 +0900
@@ -1104,6 +1104,7 @@
   values tuned for it draw the screen in a blink on Linux.  Therefore we
   draw 1/200th of the screen with each update and sleep, if necessary */
   st->lpu = (st->dialog) ? st->li/50 : st->li/200;   
+  if (!st->lpu) st->lpu = 1;
   st->bi=1;
   st->mode=MODE_ERASE;
 }
@@ -1521,17 +1522,21 @@
   int mse, usleep;
  
   gettimeofday(&st->time, NULL);
-  switch (st->mode) {
-    case MODE_CREATE:
-      _init_screen(st);
-      _create_screen(st);
-      break;
-    case MODE_ERASE:
-      _erase_lines(st);
-      break;
-    case MODE_DRAW:
-      _draw_lines(st);
-      break;
+
+  /* If the window is too small, do nothing, sorry! */
+  if (st->xgwa.width > 20 && st->xgwa.height > 20){
+    switch (st->mode) {
+      case MODE_CREATE:
+        _init_screen(st);
+        _create_screen(st);
+        break;
+      case MODE_ERASE:
+        _erase_lines(st);
+        break;
+      case MODE_DRAW:
+        _draw_lines(st);
+        break;
+    }
   }
   mse=_mselapsed(st);
   usleep = ((!st->ii) && (st->mode==MODE_CREATE)) ?  0 :


Index: xscreensaver.spec
===================================================================
RCS file: /cvs/extras/rpms/xscreensaver/F-11/xscreensaver.spec,v
retrieving revision 1.91
retrieving revision 1.92
diff -u -p -r1.91 -r1.92
--- xscreensaver.spec	11 Jun 2009 06:59:12 -0000	1.91
+++ xscreensaver.spec	27 Aug 2009 19:13:21 -0000	1.92
@@ -5,11 +5,15 @@
 
 
 %define modular_conf  1
-%define fedora_rel    10
+%define fedora_rel    13
 
 %define extrarel      %{nil}
 
+%if 0%{?fedora} >= 12
+%define default_text  %{_datadir}/doc/HTML/readme/en_US/README-en_US.txt
+%else
 %define default_text  %{_datadir}/doc/HTML/README-Accessibility
+%endif
 
 %define pam_ver       0.80-7
 %define autoconf_ver  2.53
@@ -31,8 +35,12 @@ Source0:         http://www.jwz.org/xscr
 %if %{modular_conf}
 Source10:        update-xscreensaver-hacks
 %endif
+%if 0%{?fedora} >= 12
+Source11:        xscreensaver-autostart
+Source12:        xscreensaver-autostart.desktop
+%endif
 # bug 129335
-# sanitize the name of modes in barcode
+# sanitize the names of modes in barcode
 Patch1:          xscreensaver-5.00b5-sanitize-hacks.patch
 # Change webcollage not to access to net
 # Also see bug 472061
@@ -43,10 +51,25 @@ Patch50:         xscreensaver-5.08-po-re
 # bug 481146, sent upstream
 # phosphor crashes when resizing window
 Patch51:         xscreensaver-5.08-phosphor-segv.patch
-# bug 504912, must be reported to upstream
+# bug 504912, sent upstream
 # ref: gentoo http://bugs.gentoo.org/show_bug.cgi?id=249680
 # xscreensaver crashes when randr reportes 0 rroi->ncrtc
-Patch52:         xscreensaver-5.08-randr-ncrtc-from-gentoo.patch 
+Patch52:         xscreensaver-5.08-randr-ncrtc-from-gentoo.patch
+%if 0%{?fedora} >= 12
+# Fix for Xext 1.0.99.3
+# http://lists.freedesktop.org/archives/xorg/2009-July/046521.html
+Patch53:         xscreensaver-5.08-new-xextproto.patch
+# Fix warnings for breaking strict aliasing rule
+Patch54:         xscreensaver-5.08-gcc441-aliasing.patch
+%endif
+#
+# Not sent to upstream yet, must do later
+#
+# Ubuntu bug 418419, must send to upstream later
+# Another SIGFPE when hack's window size is too small:
+Patch55:         xscreensaver-5.08-hacks-window-too-small.patch
+#
+# Patches end
 Requires:        xscreensaver-base = %{epoch}:%{version}-%{release}
 Requires:        xscreensaver-extras = %{epoch}:%{version}-%{release}
 Requires:        xscreensaver-gl-extras = %{epoch}:%{version}-%{release}
@@ -202,6 +225,11 @@ This package contains some test programs
 %patch50 -p1 -b .po
 %patch51 -p1 -b .phosphor
 %patch52 -p0 -b .randr_ncrtc
+%if 0%{?fedora} >= 12
+%patch53 -p1 -b .newxextproto
+%patch54 -p1 -b .aliasing
+%endif
+%patch55 -p1 -b .small
 
 change_option(){
    set +x
@@ -532,6 +560,20 @@ done
 cd ..
 %endif
 
+# Install desktop application autostart stuff
+%if 0%{?fedora} >= 12
+mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir}/xdg/autostart
+install -cpm 0755 %{SOURCE11} ${RPM_BUILD_ROOT}%{_libexecdir}/
+desktop-file-install \
+   --vendor "" \
+   --dir ${RPM_BUILD_ROOT}%{_sysconfdir}/xdg/autostart \
+   %{SOURCE12}
+chmod 0644 ${RPM_BUILD_ROOT}%{_sysconfdir}/xdg/autostart/xscreensaver*.desktop
+
+echo "%{_libexecdir}/xscreensaver-autostart" >> $dd/base.files
+echo '%{_sysconfdir}/xdg/autostart/xscreensaver*.desktop' >> $dd/base.files
+%endif
+
 # Create desktop entry for gnome-screensaver
 # bug 204944, 208560
 create_desktop(){
@@ -652,6 +694,18 @@ exit 0
 %defattr(-,root,root,-)
 
 %changelog
+* Fri Aug 28 2009 Mamoru Tasaka <mtasaka at ioa.s.u-tokyo.ac.jp> - 1:5.08-13
+- Another case of hack's crash when window size is too small
+  (Ubuntu bug 418419)
+
+* Thu Jul 30 2009 Mamoru Tasaka <mtasaka at ioa.s.u-tokyo.ac.jp> - 1:5.08-12
+- Install desktop application autostart stuff on F-12+
+
+* Sat Jul 25 2009 Mamoru Tasaka <mtasaka at ioa.s.u-tokyo.ac.jp> - 1:5.08-11
+- Build fix for new xextproto (libXext 1.0.99.3)
+- Fix for breaking strict aliasing rule
+- Again change %%default_text
+
 * Thu Jun 11 2009 Mamoru Tasaka <mtasaka at ioa.s.u-tokyo.ac.jp> - 1:5.08-10
 - Fix crash on startup when randr reports no rroi->ncrtc
   (bug 504912), patch from gentoo




More information about the fedora-extras-commits mailing list