Compare commits

..

4 commits

Author SHA1 Message Date
Troy Dawson
8b29a6b23d Remove package.cfg; Part of epel8-playground decommission 2022-01-28 08:30:16 -08:00
Ding-Yi Chen
8f1e3a3edb Fix EPEL 8 & EPEL 7 build
Remove appres from EL8 and EL7, because they don't have it.
2021-03-02 18:25:56 +10:00
Ding-Yi Chen
d08996438a Merge branch 'master' into epel8 2021-03-02 18:24:54 +10:00
Gwyn Ciesla
886078f1a4 "Adding package.cfg file" 2019-09-26 08:39:28 -05:00
24 changed files with 810 additions and 12187 deletions

36
.gitignore vendored
View file

@ -1 +1,35 @@
/xscreensaver-*.tar.gz
xscreensaver-5.11.tar.gz
/xscreensaver-5.12.tar.gz
/xscreensaver-5.13.tar.gz
clog
/xscreensaver-5.14.tar.gz
/xscreensaver-5.15.tar.gz
/xscreensaver-5.16.tar.gz
/xscreensaver-5.17.tar.gz
/xscreensaver-5.18.tar.gz
/xscreensaver-5.19.tar.gz
/xscreensaver-5.20.tar.gz
/xscreensaver-5.21.tar.gz
/xscreensaver-5.22.tar.gz
/xscreensaver-5.23.tar.gz
/xscreensaver-5.26.tar.gz
/xscreensaver-5.27.tar.gz
/xscreensaver-5.28.tar.gz
/xscreensaver-5.29.tar.gz
/xscreensaver-5.29-1008-rename-xscreensaver-demo.glade2-to-xscreensaver-demo.patch.gz
/xscreensaver-5.30.tar.gz
/xscreensaver-5.31.tar.gz
/xscreensaver-5.32.tar.gz
/xscreensaver-5.32.ja.po.gz
/xscreensaver-5.33.tar.gz
/xscreensaver-5.34.tar.gz
/xscreensaver-5.35.tar.gz
/xscreensaver-5.36.tar.gz
/xscreensaver-5.37.tar.gz
/xscreensaver-5.38.tar.gz
/xscreensaver-5.39.tar.gz
/xscreensaver-5.40.tar.gz
/xscreensaver-5.42.tar.gz
/xscreensaver-5.43.tar.gz
/xscreensaver-5.44.tar.gz
/xscreensaver-5.45.tar.gz

View file

@ -1,10 +0,0 @@
boobies
boobs
cock
flatulence
hemorrhoid
heroin
pussy
rectum
viagra
vibrator

11552
ja.po

File diff suppressed because it is too large Load diff

View file

@ -1 +1,2 @@
SHA512 (xscreensaver-6.13.tar.gz) = 1ab42c0d0bf31b6d25e543d44c2ff41f48ef229ffce3a02f82495c1ef9c9452eddec4abe1cd7705220c6491562361f8cd0cca8bce9875ff80a765816574bf8ac
SHA512 (xscreensaver-5.44.tar.gz) = 9d9144dec6f075c2d6a1c3cd45123a98d6d0cd732d6c3e3389e97b3f802b8f8765a188d1e35f97f123ca0a64661ea616b7b710577063c311da3d99d8439f1dae
SHA512 (xscreensaver-5.45.tar.gz) = 1b21418c591fd99f3caaea9d31ca49abdb94b8e89f33e661c464299bc81bf4ff13fd99a187070fce19b3843c28a1f2a2a7b94bd6949d2b3b06bba730cae59f14

View file

@ -1,28 +1,29 @@
From 585252a63804d1cea0271fe29ef33476d1127a4f Mon Sep 17 00:00:00 2001
From b04424419b281e608bac2a600bf7aab0c65b164a Mon Sep 17 00:00:00 2001
From: XScreenSaver owners <xscreensaver-owner@fedoraproject.org>
Date: Sat, 22 Oct 2022 23:48:23 +0900
Date: Tue, 24 Mar 2020 13:29:14 +0900
Subject: [PATCH] # Change webcollage not to access to net # Also see bug
472061
---
hacks/config/webcollage.xml | 7 +++++++
hacks/config/webcollage.xml | 7 ++++++-
hacks/webcollage.man | 5 +++++
2 files changed, 12 insertions(+)
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/hacks/config/webcollage.xml b/hacks/config/webcollage.xml
index a2acab7..1db7aa5 100644
index c26ea98..da312fa 100644
--- a/hacks/config/webcollage.xml
+++ b/hacks/config/webcollage.xml
@@ -26,6 +26,8 @@
</vgroup>
</hgroup>
@@ -30,8 +30,8 @@
<string id="filter" _label="Per-image filter program" arg="-filter %"/>
<string id="filter2" _label="Overall filter program" arg="-filter2 %"/>
<file id="dictionary" _label="Dictionary file" arg="-dictionary %"/>
- <file id="dir" _label="Image directory" arg="-directory %"/>
-->
+ <file id="dir" _label="Image directory" arg="-directory %"/>
+
<xscreensaver-updater />
<_description>
@@ -44,6 +46,11 @@ Please act accordingly.
@@ -51,6 +51,11 @@ Please act accordingly.
See also https://www.jwz.org/webcollage/
@ -31,25 +32,25 @@ index a2acab7..1db7aa5 100644
+and uses image files on your local disk. If you want webcollage to
+search for image files on net, use webcollage.original .
+
Written by Jamie Zawinski; 1998.
Written by Jamie Zawinski; 1999.
</_description>
</screensaver>
diff --git a/hacks/webcollage.man b/hacks/webcollage.man
index 85255b5..fadcd20 100644
index 82bf5d7..7860d2e 100644
--- a/hacks/webcollage.man
+++ b/hacks/webcollage.man
@@ -176,6 +176,11 @@ the given directory.
@@ -178,6 +178,11 @@ the given directory.
.TP 8
.B \-\-fps
.B \-fps
Display the current frame rate and CPU load (MacOS only).
+.SH NOTES FOR FEDORA USER
+Webcollage on Fedora uses '-directory' option by default, so it
+.B does not connect to internet
+.B does not connect to internet
+and uses image files on your local disk. If you want webcollage to
+search for image files on net, use webcollage.original .
.SH ENVIRONMENT
.PP
.TP 8
--
2.38.1
2.25.2

View file

@ -0,0 +1,96 @@
From 0d26e4514d7d6c90d2c5e35749c0b83121a66b77 Mon Sep 17 00:00:00 2001
From: "mtasaka@fedoraproject.org" <mtasaka@fedoraproject.org>
Date: Tue, 7 Feb 2017 16:40:52 +0900
Subject: [PATCH] misc: kill gcc warn_unused_result warnings
Remove misc warnings generated gcc -Wall with
"warning: ignoring return value of 'foo',
declared with attribute warn_unused_result".
For setuid() and fgets(), really check the returned value.
For system(), for now just use empty body to avoid this
warning. Note that casting the result to (void) does not
remove these warnings.
---
driver/demo-Gtk.c | 9 +++++++--
hacks/glx/sonar-icmp.c | 2 +-
hacks/glx/sonar.c | 5 +++--
hacks/recanim.c | 6 +++++-
4 files changed, 16 insertions(+), 6 deletions(-)
diff --git a/driver/demo-Gtk.c b/driver/demo-Gtk.c
index f5c4839..7c34846 100644
--- a/driver/demo-Gtk.c
+++ b/driver/demo-Gtk.c
@@ -4423,7 +4423,8 @@ kde_screensaver_active_p (void)
FILE *p = popen ("dcop kdesktop KScreensaverIface isEnabled 2>/dev/null",
"r");
char buf[255];
- fgets (buf, sizeof(buf)-1, p);
+ if (!p) return False;
+ if (!fgets (buf, sizeof(buf)-1, p)) return False;
pclose (p);
if (!strcmp (buf, "true\n"))
return True;
@@ -4434,7 +4435,11 @@ kde_screensaver_active_p (void)
static void
kill_kde_screensaver (void)
{
- system ("dcop kdesktop KScreensaverIface enable false");
+ /* Use empty body to kill warning from gcc -Wall with
+ "warning: ignoring return value of 'system',
+ declared with attribute warn_unused_result"
+ */
+ if (system ("dcop kdesktop KScreensaverIface enable false")) {}
}
diff --git a/hacks/glx/sonar-icmp.c b/hacks/glx/sonar-icmp.c
index 8256270..26eb90d 100644
--- a/hacks/glx/sonar-icmp.c
+++ b/hacks/glx/sonar-icmp.c
@@ -1634,7 +1634,7 @@ sonar_init_ping (Display *dpy, char **error_ret, char **desc_ret,
fprintf (stderr, "%s: unable to open icmp socket\n", progname);
/* Disavow privs */
- setuid(getuid());
+ if (setuid(getuid()) == -1) abort();
pd->pid = getpid() & 0xFFFF;
pd->seq = 0;
diff --git a/hacks/glx/sonar.c b/hacks/glx/sonar.c
index f3a4d9d..2c6ca5b 100644
--- a/hacks/glx/sonar.c
+++ b/hacks/glx/sonar.c
@@ -930,8 +930,9 @@ init_sensor (ModeInfo *mi)
sp->ssd = sonar_init_ping (MI_DISPLAY (mi), &sp->error, &sp->desc,
ping_arg, ping_timeout, resolve_p, times_p,
debug_p);
- else
- setuid(getuid()); /* Disavow privs if not pinging. */
+ else {
+ if (setuid(getuid()) == -1) abort(); /* Disavow privs if not pinging. */
+ }
sp->start_time = double_time (); /* for error message timing */
diff --git a/hacks/recanim.c b/hacks/recanim.c
index 51379ed..a526c25 100644
--- a/hacks/recanim.c
+++ b/hacks/recanim.c
@@ -324,7 +324,11 @@ screenhack_record_anim_free (record_anim_state *st)
" 2>&-",
fn);
fprintf (stderr, "%s: exec: %s\n", progname, cmd);
- system (cmd);
+ /* Use empty body to kill warning from gcc -Wall with
+ "warning: ignoring return value of 'system',
+ declared with attribute warn_unused_result"
+ */
+ if (system (cmd)) {}
if (stat (fn, &s))
{
--
2.9.3

View file

@ -0,0 +1,27 @@
From 95ae80c0e7bc1b92535067df1fd0129829ce67af Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Sun, 30 Dec 2018 15:23:37 +0900
Subject: [PATCH] open new window for man when using gnome-terminal
Instead of opening man page in another tab, force opening
new window.
---
driver/XScreenSaver.ad.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/driver/XScreenSaver.ad.in b/driver/XScreenSaver.ad.in
index eec998f..b7a0846 100644
--- a/driver/XScreenSaver.ad.in
+++ b/driver/XScreenSaver.ad.in
@@ -100,7 +100,7 @@ GetViewPortIsFullOfLies: False
! Gnome 2.4, 2.6: (yelp can't display man pages, as of 2.6.3)
!
@GNOME24@*loadURL: @WITH_BROWSER@ '%s'
-@GNOME24@*manualCommand: gnome-terminal --title '%s manual' \
+@GNOME24@*manualCommand: gnome-terminal --window --title '%s manual' \
@GNOME24@ --command '/bin/sh -c "man %s; read foo"'
!
! Gnome 2.2:
--
2.20.1

View file

@ -0,0 +1,24 @@
From 2ab857c449470d9de45f7b1b8114eda3d9899dc6 Mon Sep 17 00:00:00 2001
From: XScreenSaver owners <xscreensaver-owner@fedoraproject.org>
Date: Tue, 24 Mar 2020 13:37:59 +0900
Subject: [PATCH] Patch to compile driver/test-xdpms
---
driver/test-xdpms.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/driver/test-xdpms.c b/driver/test-xdpms.c
index b86aed3..1a48c3d 100644
--- a/driver/test-xdpms.c
+++ b/driver/test-xdpms.c
@@ -29,7 +29,6 @@
#include <X11/Xproto.h>
#include <X11/extensions/dpms.h>
-#include <X11/extensions/dpmsstr.h>
extern Bool DPMSQueryExtension (Display *dpy, int *event_ret, int *error_ret);
extern Bool DPMSCapable (Display *dpy);
--
2.25.2

View file

@ -1,12 +1,77 @@
From d8ba605b7779ce5d2fc893c44fc2986ecf176e47 Mon Sep 17 00:00:00 2001
From: XScreenSaver owners <xscreensaver-owner@fedoraproject.org>
Date: Wed, 9 Dec 2020 22:12:09 +0900
Subject: [PATCH] glsnake: sanitize the names of modes
Subject: [PATCH] barcode / glsnake: sanitize the names of modes
---
hacks/barcode.c | 10 ----------
hacks/glx/glsnake.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
2 files changed, 6 insertions(+), 16 deletions(-)
diff --git a/hacks/barcode.c b/hacks/barcode.c
index 20c2f38..ba3e2b2 100644
--- a/hacks/barcode.c
+++ b/hacks/barcode.c
@@ -122,8 +122,6 @@ static const char *words[] =
"bird flu",
"bliss",
"bogosity",
- "boobies",
- "boobs",
"booty",
"bread",
"brogrammers",
@@ -139,7 +137,6 @@ static const char *words[] =
"chocolate",
"chupacabra",
"CLONE",
- "cock",
"congress",
"constriction",
"contrition",
@@ -184,7 +181,6 @@ static const char *words[] =
"fear",
"fever",
"filth",
- "flatulence",
"fluff",
"fnord",
"followers",
@@ -202,9 +198,7 @@ static const char *words[] =
"happiness",
"hate",
"helplessness",
- "hemorrhoid",
"hermaphrodite",
- "heroin",
"heroine",
"hope",
"hysteria",
@@ -286,7 +280,6 @@ static const char *words[] =
"punishment",
"punk rock",
"punk",
- "pussy",
"quagmire",
"quarantine",
"quartz",
@@ -295,7 +288,6 @@ static const char *words[] =
"rage",
"readout",
"reality",
- "rectum",
"reject",
"rejection",
"respect",
@@ -365,8 +357,6 @@ static const char *words[] =
"venom",
"verifiability",
"very fine people",
- "viagra",
- "vibrator",
"victim",
"vignette",
"villainy",
diff --git a/hacks/glx/glsnake.c b/hacks/glx/glsnake.c
index 8efc681..125df90 100644
--- a/hacks/glx/glsnake.c

View file

@ -0,0 +1,42 @@
From bc93d94efe27f6a42cfe1d5c5c5723565f3930de Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Thu, 10 Dec 2020 11:45:51 +0900
Subject: [PATCH] asm6502.c/immediate: readd free() call accidentally removed
during gcc warnings fix
valgrind detects the following leak:
==200428== 4,480 bytes in 56 blocks are definitely lost in loss record 307 of 310
==200428== at 0x483BAE9: calloc (vg_replace_malloc.c:760)
==200428== by 0x1122AB: UnknownInlinedFun (asm6502.c:115)
==200428== by 0x1122AB: UnknownInlinedFun (asm6502.c:1411)
==200428== by 0x1122AB: UnknownInlinedFun (asm6502.c:1576)
==200428== by 0x1122AB: UnknownInlinedFun (asm6502.c:1652)
==200428== by 0x1122AB: compileCode (asm6502.c:2028)
==200428== by 0x118602: UnknownInlinedFun (asm6502.c:2230)
==200428== by 0x118602: UnknownInlinedFun (m6502.c:93)
==200428== by 0x118602: m6502_draw (m6502.c:230)
==200428== by 0x10D9D7: UnknownInlinedFun (screenhack.c:597)
==200428== by 0x10D9D7: main (screenhack.c:991)
During gcc warnings fix (about -Wstringop), strncpy() is changed to sprintf, but the following
free() should not be removed, otherwise m6502 will leak memory.
---
hacks/asm6502.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hacks/asm6502.c b/hacks/asm6502.c
index 1d5c896..dd8a11b 100644
--- a/hacks/asm6502.c
+++ b/hacks/asm6502.c
@@ -1413,6 +1413,7 @@ static BOOL immediate(char **s, Param *param){
(*s)++; /* move past < or > */
if (paramLabel(s, &label)){
sprintf(param->label, "%.*s", MAX_LABEL_LEN-1, label);
+ free(label);
return TRUE;
}
free(label);
--
2.29.2

View file

@ -0,0 +1,33 @@
From dab3a04fbd2c4658614471cd4d8550ce0e0cef7b Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Thu, 10 Dec 2020 16:38:26 +0900
Subject: [PATCH] beats/draw_beats: avoid integer overflow by multiplication
gcc10 -fsanitize=undefined detects the following integer overflow:
------------------------------------------
../../../hacks/glx/beats.c:325:53: runtime error: signed integer overflow: 3665625 * 42587 cannot be represented in type 'int'
../../../hacks/glx/beats.c:326:21: runtime error: signed integer overflow: 1489149219 * 1233599 cannot be represented in type 'int'
------------------------------------------
Avoid this by using unsigned integer.
---
hacks/glx/beats.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/hacks/glx/beats.c b/hacks/glx/beats.c
index 64fd689..19565ec 100644
--- a/hacks/glx/beats.c
+++ b/hacks/glx/beats.c
@@ -322,8 +322,8 @@ draw_beats (ModeInfo *mi)
}
}
/* pseudo-random generator based on current minute */
- timeSeed = (((tmM+1) * (tmM+1) * ((tmH+1) * 37) *
- ((tmD+1) * 1151) * 1233599) % 653);
+ timeSeed = (((tmM+1) * (tmM+1) * ((tmH+1) * 37ULL) *
+ ((tmD+1) * 1151ULL) * 1233599ULL) % 653);
cycle = timeSeed % 4;
if(bp->preset_cycle != -1){
cycle = bp->preset_cycle;
--
2.29.2

View file

@ -0,0 +1,65 @@
From 2b1643d361274d52259820561747165af423a420 Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Mon, 28 Dec 2020 15:14:30 +0900
Subject: [PATCH 4/6] xscreensaver-systemd: fix blurb strncpy
Shut up the following gcc11 -Wall warning:
---------------------------------------------
In function 'strncpy',
inlined from 'blurb' at ../../driver/xscreensaver-systemd.c:387:3:
/usr/include/bits/string_fortified.h:91:10: warning: 'strncpy' output may be truncated copying 8 bytes from a string of length 88 [-Wstringop-truncation]
---------------------------------------------
Note that the current blurb() implementation contains some code which is
actually not working. Currently:
---------------------------------------------
376 blurb (void)
377 {
378 static char buf[255];
386 ctime_r (&now, ct);
387 strncpy(buf+n, ct+11, 8);
388 strcpy(buf+n+9, ": ");
389 return buf;
390 }
---------------------------------------------
With the line 378, the contents of buf[] is all initialized to 0.
the line 388 strncpy() puts some string from ct to
buf[n+0], buf[n+1], ... , and buf[n+7] (8 bytes, not putting terminating
null character). Here buf[n+8] is still 0 (null character) because
buf[] is all initialized to 0.
The line 388 puts the string to buf[n+9] and buf[n+10], but as
buf[n+8] is still 0, the line 388 does essentially nothing.
Note that the other part of this file calls blurb() like:
----------------------------------------------
402 fprintf (stderr, "%s: exec: %s\n", blurb(), buf);
----------------------------------------------
i.e. "%s" always followed by ":" which compensates for the line 388.
---
driver/xscreensaver-systemd.c | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/driver/xscreensaver-systemd.c b/driver/xscreensaver-systemd.c
index 2da99de..f6bd104 100644
--- a/driver/xscreensaver-systemd.c
+++ b/driver/xscreensaver-systemd.c
@@ -378,14 +378,8 @@ blurb (void)
static char buf[255];
time_t now = time ((time_t *) 0);
char ct[100];
- int n = strlen(progname);
- if (n > 100) n = 99;
- strncpy(buf, progname, n);
- buf[n++] = ':';
- buf[n++] = ' ';
ctime_r (&now, ct);
- strncpy(buf+n, ct+11, 8);
- strcpy(buf+n+9, ": ");
+ sprintf(buf, "%.99s: %.8s", progname, ct+11);
return buf;
}
--
2.29.2

View file

@ -0,0 +1,78 @@
From a93c17b054313f8ce0b0474942177a3aa646893b Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Mon, 28 Dec 2020 15:29:41 +0900
Subject: [PATCH 5/6] recanim.c: fix up -Wformat-overflow warning:
From gcc11 -Wall:
--------------------------------------------------------------
../../hacks/recanim.c: In function 'screenhack_record_anim_free':
../../hacks/recanim.c:435:12: warning: '%s' directive writing up to 1023 bytes into a region of size 968 [-Wformat-overflow=]
435 | " -c:v libx264"
| ^~~~~~~~~~~~~~~
......
442 | fn);
| ~~
../../hacks/recanim.c:439:15: note: format string is defined here
439 | " '%s'"
| ^~
--------------------------------------------------------------
To silence this warning, calculate the size of the string which is "supposed to be"
written and if the size is going to be oversized, exit abnormally.
---
hacks/recanim.c | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/hacks/recanim.c b/hacks/recanim.c
index b1c7e0a..bf9084c 100644
--- a/hacks/recanim.c
+++ b/hacks/recanim.c
@@ -391,6 +391,7 @@ screenhack_record_anim_free (record_anim_state *st)
const char *type = "png";
char cmd[1024];
char fn[1024];
+ size_t len_cmd;
const char *soundtrack = 0;
fprintf (stderr, "%s: wrote %d frames\n", progname, st->frame_count);
@@ -417,7 +418,8 @@ screenhack_record_anim_free (record_anim_state *st)
if (! soundtrack) soundtrack = "../../" ST;
if (stat (soundtrack, &s)) soundtrack = 0;
- sprintf (cmd,
+ len_cmd = 0;
+ len_cmd += snprintf (cmd, sizeof cmd - len_cmd,
"ffmpeg"
" -hide_banner"
" -loglevel error"
@@ -425,13 +427,16 @@ screenhack_record_anim_free (record_anim_state *st)
" -i '%s-%%06d.%s'"
" -r %d", /* rate of output: must be after -i */
st->fps, progname, type, st->fps);
- if (soundtrack)
- sprintf (cmd + strlen(cmd),
+ if (len_cmd >= sizeof cmd) abort();
+ if (soundtrack) {
+ len_cmd += snprintf (cmd + len_cmd, sizeof cmd - len_cmd,
" -i '%s' -map 0:v:0 -map 1:a:0 -acodec aac"
/* Truncate or pad audio to length of video */
" -filter_complex '[1:0] apad' -shortest",
soundtrack);
- sprintf (cmd + strlen(cmd),
+ if (len_cmd >= sizeof cmd) abort();
+ }
+ len_cmd += snprintf (cmd + len_cmd, sizeof cmd - len_cmd,
" -c:v libx264"
" -profile:v high"
" -crf 18"
@@ -440,6 +445,7 @@ screenhack_record_anim_free (record_anim_state *st)
" </dev/null"
/*" 2>&-"*/,
fn);
+ if (len_cmd >= sizeof cmd) abort();
fprintf (stderr, "%s: exec: %s\n", progname, cmd);
/* Use empty body to kill warning from gcc -Wall with
"warning: ignoring return value of 'system',
--
2.29.2

View file

@ -0,0 +1,33 @@
From 2a744c80fb0e8ec22c1b7d3656f7cbdcad2f3fef Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Mon, 28 Dec 2020 15:31:38 +0900
Subject: [PATCH 6/6] asm6502.c/newAsmLine: shut up -Wstringop warning
Shut up the following warning by gcc11 -Wall:
----------------------------------------------------------
In function 'strncpy',
inlined from 'newAsmLine' at ../../hacks/asm6502.c:1181:5,
inlined from 'parseAssembly' at ../../hacks/asm6502.c:1661:14,
inlined from 'compileCode' at ../../hacks/asm6502.c:2029:13:
/usr/include/bits/string_fortified.h:91:10: warning: 'strncpy' specified bound 80 equals destination size [-Wstringop-truncation]
----------------------------------------------------------
---
hacks/asm6502.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/hacks/asm6502.c b/hacks/asm6502.c
index dd8a11b..28a85d1 100644
--- a/hacks/asm6502.c
+++ b/hacks/asm6502.c
@@ -1178,7 +1178,7 @@ static AsmLine *newAsmLine(char *cmd, char *label, BOOL decl, Param *param, int
newp = (AsmLine *) ecalloc(1, sizeof(AsmLine));
newp->labelDecl = decl;
newp->label = newLabel();
- strncpy(newp->label->label,label,MAX_LABEL_LEN);
+ sprintf(newp->label->label, "%.*s", MAX_LABEL_LEN - 1, label);
newp->command = estrdup(cmd);
newp->param = newParam();
copyParam(newp->param, param);
--
2.29.2

View file

@ -0,0 +1,54 @@
From 0638fb6fca4b10120d08e5b1d546dea0013faa07 Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Mon, 28 Dec 2020 18:03:25 +0900
Subject: [PATCH] lock.c/draw_passwd_window: show logo and ok button
On Fedora 33 and on some environment, user may see the issue on
lock screen:
* xscreensaver logo is not shown
* ok and new login buttons are not shown
To fix these issue, two modifications seem needed.
* Calling XSync() is needed to make ok button appear
* draw_shaded_rectangle() on the whole window must be called before
painting logo
---
driver/lock.c | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/driver/lock.c b/driver/lock.c
index 8bcd2e0..7133dc0 100644
--- a/driver/lock.c
+++ b/driver/lock.c
@@ -750,6 +750,12 @@ draw_passwd_window (saver_info *si)
x3 = pw->width - (pw->shadow_width * 2);
y1 = (pw->shadow_width * 2) + spacing + spacing;
+ /* The shadow around the whole window
+ */
+ draw_shaded_rectangle (si->dpy, si->passwd_dialog,
+ 0, 0, pw->width, pw->height, pw->shadow_width,
+ pw->shadow_top, pw->shadow_bottom);
+
/* top heading
*/
XSetFont (si->dpy, gc1, pw->heading_font->fid);
@@ -994,14 +1000,9 @@ draw_passwd_window (saver_info *si)
pw->thermo_width - 1, pw->thermo_field_height - 1);
#endif
- /* The shadow around the whole window
- */
- draw_shaded_rectangle (si->dpy, si->passwd_dialog,
- 0, 0, pw->width, pw->height, pw->shadow_width,
- pw->shadow_top, pw->shadow_bottom);
-
XFreeGC (si->dpy, gc1);
XFreeGC (si->dpy, gc2);
+ XSync (si->dpy, False);
update_passwd_window (si, pw->passwd_string, pw->ratio);
}
--
2.29.2

View file

@ -0,0 +1,33 @@
From 9b948db8377c0ac146eae2d865c987e73d9109ad Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Fri, 11 Dec 2020 10:40:09 +0900
Subject: [PATCH] test-screens.c: add skel XA_SCREENSAVER_VERSION definition
To avoid the following link error:
----------------------------------------------------
/usr/bin/ld: test-screens.o: in function `update_screen_layout':
/builddir/build/BUILD/xscreensaver-5.45/x86_64-pc-linux-gnu/driver/../../driver/screens.c:1104: undefined reference to `XA_SCREENSAVER_VERSION'
collect2: error: ld returned 1 exit status
----------------------------------------------------
On xscreensaver-5.45, in screens.c/update_screen_layout some logic is added using
XA_SCREENSAVER_VERSION .
---
driver/test-screens.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/driver/test-screens.c b/driver/test-screens.c
index 2fb3e35..c5dfa02 100644
--- a/driver/test-screens.c
+++ b/driver/test-screens.c
@@ -39,6 +39,7 @@
char *progname = 0;
char *progclass = "XScreenSaver";
+Atom XA_SCREENSAVER_VERSION;
const char *blurb(void) { return progname; }
--
2.29.2

View file

@ -0,0 +1,31 @@
From bcb4b5355e73274722a6169dfa4f532353b3d6a7 Mon Sep 17 00:00:00 2001
From: XScreenSaver owners <xscreensaver-owner@fedoraproject.org>
Date: Wed, 9 Dec 2020 22:35:55 +0900
Subject: [PATCH] test-password.c: add skel definition for
clientmessage_response
Fix below
/usr/bin/ld: /tmp/test-passwd.BnNU2t.ltrans0.ltrans.o: in function `passwd_event_loop':
/foo/xscreensaver-5.45/x86_64-pc-linux-gnu/driver/../../driver/lock.c:1937: undefined reference to `clientmessage_response'
collect2: error: ld returned 1 exit status
make: *** [Makefile:842: test-passwd] Error 1
---
driver/test-passwd.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/driver/test-passwd.c b/driver/test-passwd.c
index 9b4f98e..1c4dccc 100644
--- a/driver/test-passwd.c
+++ b/driver/test-passwd.c
@@ -67,6 +67,7 @@ void describe_monitor_layout (saver_info *si) { }
Bool update_screen_layout (saver_info *si) { return 0; }
Bool in_signal_handler_p = 0;
char *timestring (time_t when) { return ""; }
+void clientmessage_response (saver_info *si, Window w, Bool error, const char *stderr_msg, const char *protocol_msg) {}
const char *blurb(void) { return progname; }
Atom XA_SCREENSAVER, XA_DEMO, XA_PREFS;
--
2.29.2

View file

@ -1,48 +0,0 @@
From ef72c9500015a36bf0b4b412337ec2d890d092b6 Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Fri, 2 Apr 2021 18:46:14 +0900
Subject: [PATCH] screensaver_id: search parenthesis first for searching year
Fedora package modifies screensaver_id string to %%version-%%release .
Adjust window_init function so that "year" information is
parsed correctly.
---
driver/dialog.c | 4 +++-
driver/xscreensaver-systemd.c | 4 +++-
3 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/driver/dialog.c b/driver/dialog.c
index fce74c4..9a8173f 100644
--- a/driver/dialog.c
+++ b/driver/dialog.c
@@ -949,8 +949,10 @@ window_init (Widget root_widget, Bool splash_p)
/* Put the version number in the label. */
{
char *version = strdup (screensaver_id + 17);
- char *year = strchr (version, '-');
+ char *year;
char *s = strchr (version, ' ');
+ year = strchr (version, '('); /* Search parenthesis first */
+ year = strchr (year, '-');
*s = 0;
year = strchr (year+1, '-') + 1;
s = strchr (year, ')');
diff --git a/driver/xscreensaver-systemd.c b/driver/xscreensaver-systemd.c
index d06174a..c9a66a1 100644
--- a/driver/xscreensaver-systemd.c
+++ b/driver/xscreensaver-systemd.c
@@ -950,8 +950,10 @@ main (int argc, char **argv)
{
int i;
char *version = strdup (screensaver_id + 17);
- char *year = strchr (version, '-');
+ char *year;
char *s = strchr (version, ' ');
+ year = strchr (version, '('); /* Search parenthesis first */
+ year = strchr (year, '-');
*s = 0;
year = strchr (year+1, '-') + 1;
s = strchr (year, ')');
--
2.31.1

View file

@ -1,27 +0,0 @@
From 13e1203d8cc00a8462dbd2656257b46b411b2854 Mon Sep 17 00:00:00 2001
From: Mamoru TASAKA <mtasaka@fedoraproject.org>
Date: Mon, 3 May 2021 15:00:31 +0900
Subject: [PATCH] dialog.c: window_init: show more version string
Fedora modifies version string to "6.00-1.fc34" to show rpm "release", for example.
Let's allow more length for version string for password dialog.
---
driver/dialog.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/driver/dialog.c b/driver/dialog.c
index 9a8173f..3020880 100644
--- a/driver/dialog.c
+++ b/driver/dialog.c
@@ -959,7 +959,7 @@ window_init (Widget root_widget, Bool splash_p)
*s = 0;
ws->heading_label = (char *) malloc (100);
ws->version = strdup(version);
- sprintf (ws->heading_label, "XScreenSaver %.4s, v%.10s", year, version);
+ sprintf (ws->heading_label, "XScreenSaver %.4s, v%.14s", year, version);
if (splash_p)
{
--
2.31.1

View file

@ -1,49 +0,0 @@
From 1e20010cd70edd4c26bbc6ce48c57bf36b064aeb Mon Sep 17 00:00:00 2001
From: XScreenSaver owners <xscreensaver-owner@fedoraproject.org>
Date: Fri, 1 Sep 2023 17:30:50 +0900
Subject: [PATCH 1/2] make_ximage: avoid integer overflow on left shift
gcc -fsanitize=undefined shows the following undefined behavior:
../../hacks/ximage-loader.c:176:29: runtime error: left shift of 255 by 24 places cannot be represented in type 'int'
../../hacks/ximage-loader.c:169:29: runtime error: left shift of 255 by 24 places cannot be represented in type 'int'
This is because of integral promotion from guchar to int, not to unsigned int.
To avoid this error, cast to unsigned long type.
---
hacks/ximage-loader.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/hacks/ximage-loader.c b/hacks/ximage-loader.c
index a3f6eb0..152ad9f 100644
--- a/hacks/ximage-loader.c
+++ b/hacks/ximage-loader.c
@@ -159,21 +159,21 @@ make_ximage (Display *dpy, Visual *visual, const char *filename,
unsigned long rgba = 0;
switch (chan) {
case 1:
- rgba = ((0xFF << 24) |
+ rgba = ((0xFFUL << 24) |
(*i << 16) |
(*i << 8) |
*i);
i++;
break;
case 3:
- rgba = ((0xFF << 24) |
+ rgba = ((0xFFUL << 24) |
(i[2] << 16) |
(i[1] << 8) |
i[0]);
i += 3;
break;
case 4:
- rgba = ((i[3] << 24) |
+ rgba = ((((unsigned long)i[3]) << 24) |
(i[2] << 16) |
(i[1] << 8) |
i[0]);
--
2.41.0

View file

@ -1,37 +0,0 @@
From b6aacc5eb73ef0d41bdff9cd62672d4dc7a62e0d Mon Sep 17 00:00:00 2001
From: XScreenSaver owners <xscreensaver-owner@fedoraproject.org>
Date: Fri, 1 Sep 2023 17:32:57 +0900
Subject: [PATCH 2/2] convert_ximage_to_rgba32: avoid integer overflow on left
shift
gcc -fsanitize=undefined shows the following undefined behavior:
../../../hacks/glx/grab-ximage.c:213:21: runtime error: left shift of 255 by 24 places cannot be represented in type 'int'
This is because of integral promotion from unsigned char to int, not to unsigned int.
To avoid this error, cast to unsigned long type.
---
hacks/glx/grab-ximage.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/hacks/glx/grab-ximage.c b/hacks/glx/grab-ximage.c
index defefda..9d3a2d6 100644
--- a/hacks/glx/grab-ximage.c
+++ b/hacks/glx/grab-ximage.c
@@ -207,10 +207,10 @@ convert_ximage_to_rgba32 (Screen *screen, XImage *image)
sb = spread_map[2][sb];
}
- cp = ((sr << crpos) |
+ cp = ((((unsigned long)sr) << crpos) |
(sg << cgpos) |
(sb << cbpos) |
- (0xFF << capos));
+ (0xFFUL << capos));
XPutPixel (to, x, y, cp);
}
--
2.41.0

View file

@ -1,26 +0,0 @@
From 7071bfa1503191aaf5ab550fe2cd41350b15d15f Mon Sep 17 00:00:00 2001
From: Jamie Zawinski <jwz@jwz.org>
Date: Sat, 6 Dec 2025 11:19:50 +0900
Subject: [PATCH] driver/demo-Gtk.c: Initialize locking_supported_p for X11
session
---
driver/demo-Gtk.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/driver/demo-Gtk.c b/driver/demo-Gtk.c
index 9ab785d..692b84d 100644
--- a/driver/demo-Gtk.c
+++ b/driver/demo-Gtk.c
@@ -2585,6 +2585,8 @@ populate_prefs_page (state *s)
# ifdef NO_LOCKING
s->locking_supported_p = FALSE;
lock_why = _("Not compiled with support for locking");
+#else
+ s->locking_supported_p = TRUE;
# endif
if (s->backend == WAYLAND_BACKEND ||
--
2.52.0

View file

@ -5,6 +5,5 @@
if [ -x /usr/bin/gnome-screensaver ] ; then exit 0 ; fi
if [ -x /usr/bin/mate-screensaver ] ; then exit 0 ; fi
if [ -x /usr/bin/xfce4-screensaver ] ; then exit 0 ; fi
exec xscreensaver -nosplash

File diff suppressed because it is too large Load diff