Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package swaylock for openSUSE:Factory checked in at 2026-07-10 17:40:02 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/swaylock (Old) and /work/SRC/openSUSE:Factory/.swaylock.new.1991 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "swaylock" Fri Jul 10 17:40:02 2026 rev:16 rq:1364805 version:1.8.6 Changes: -------- --- /work/SRC/openSUSE:Factory/swaylock/swaylock.changes 2026-03-11 20:56:23.096559392 +0100 +++ /work/SRC/openSUSE:Factory/.swaylock.new.1991/swaylock.changes 2026-07-10 17:42:48.388272455 +0200 @@ -1,0 +2,7 @@ +Fri Jul 10 04:37:23 UTC 2026 - Michael Vetter <[email protected]> + +- Update to 1.8.6: + * Fix stray character in password buffer after suspend/resume cycle + * main: fix reversed dup2 arguments in daemonize + +------------------------------------------------------------------- Old: ---- swaylock-1.8.5.obscpio New: ---- swaylock-1.8.6.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ swaylock.spec ++++++ --- /var/tmp/diff_new_pack.pRlUvM/_old 2026-07-10 17:42:50.296337875 +0200 +++ /var/tmp/diff_new_pack.pRlUvM/_new 2026-07-10 17:42:50.300338013 +0200 @@ -17,7 +17,7 @@ Name: swaylock -Version: 1.8.5 +Version: 1.8.6 Release: 0 Summary: Screen locker for Wayland License: MIT ++++++ _service ++++++ --- /var/tmp/diff_new_pack.pRlUvM/_old 2026-07-10 17:42:50.340339384 +0200 +++ /var/tmp/diff_new_pack.pRlUvM/_new 2026-07-10 17:42:50.344339521 +0200 @@ -2,7 +2,7 @@ <service name="obs_scm" mode="manual"> <param name="scm">git</param> <param name="url">https://github.com/swaywm/swaylock.git</param> - <param name="revision">v1.8.5</param> + <param name="revision">v1.8.6</param> <param name="versionformat">@PARENT_TAG@</param> <param name="versionrewrite-pattern">v(.*)</param> <param name="changesgenerate">disable</param> ++++++ swaylock-1.8.5.obscpio -> swaylock-1.8.6.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/swaylock-1.8.5/main.c new/swaylock-1.8.6/main.c --- old/swaylock-1.8.5/main.c 2026-03-09 18:00:43.000000000 +0100 +++ new/swaylock-1.8.6/main.c 2026-07-09 17:58:38.000000000 +0200 @@ -66,8 +66,8 @@ setsid(); close(fds[0]); int devnull = open("/dev/null", O_RDWR); - dup2(STDOUT_FILENO, devnull); - dup2(STDERR_FILENO, devnull); + dup2(devnull, STDOUT_FILENO); + dup2(devnull, STDERR_FILENO); close(devnull); uint8_t success = 0; if (chdir("/") != 0) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/swaylock-1.8.5/meson.build new/swaylock-1.8.6/meson.build --- old/swaylock-1.8.5/meson.build 2026-03-09 18:00:43.000000000 +0100 +++ new/swaylock-1.8.6/meson.build 2026-07-09 17:58:38.000000000 +0200 @@ -1,7 +1,7 @@ project( 'swaylock', 'c', - version: '1.8.5', + version: '1.8.6', license: 'MIT', meson_version: '>=0.59.0', default_options: [ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/swaylock-1.8.5/seat.c new/swaylock-1.8.6/seat.c --- old/swaylock-1.8.5/seat.c 2026-03-09 18:00:43.000000000 +0100 +++ new/swaylock-1.8.6/seat.c 2026-07-09 17:58:38.000000000 +0200 @@ -45,6 +45,13 @@ state->xkb.state = xkb_state; } +static void stop_repeat(struct swaylock_seat *seat) { + if (seat->repeat_timer) { + loop_remove_timer(seat->state->eventloop, seat->repeat_timer); + seat->repeat_timer = NULL; + } +} + static void keyboard_enter(void *data, struct wl_keyboard *wl_keyboard, uint32_t serial, struct wl_surface *surface, struct wl_array *keys) { // Who cares @@ -52,7 +59,12 @@ static void keyboard_leave(void *data, struct wl_keyboard *wl_keyboard, uint32_t serial, struct wl_surface *surface) { - // Who cares + // When focus leaves (e.g. the compositor takes it away across a + // suspend/DPMS transition) the protocol guarantees no release events for + // currently-held keys, so an armed key-repeat would otherwise linger and + // fire on resume, injecting a phantom character into the password buffer. + struct swaylock_seat *seat = data; + stop_repeat(seat); } static void keyboard_repeat(void *data) { @@ -80,10 +92,7 @@ swaylock_handle_key(state, sym, codepoint); } - if (seat->repeat_timer) { - loop_remove_timer(seat->state->eventloop, seat->repeat_timer); - seat->repeat_timer = NULL; - } + stop_repeat(seat); if (key_state == WL_KEYBOARD_KEY_STATE_PRESSED && seat->repeat_period_ms > 0) { seat->repeat_sym = sym; ++++++ swaylock.obsinfo ++++++ --- /var/tmp/diff_new_pack.pRlUvM/_old 2026-07-10 17:42:50.520345556 +0200 +++ /var/tmp/diff_new_pack.pRlUvM/_new 2026-07-10 17:42:50.528345830 +0200 @@ -1,5 +1,5 @@ name: swaylock -version: 1.8.5 -mtime: 1773075643 -commit: 1a4c472c11ee0354e5a689e33fad4ecce533ddc3 +version: 1.8.6 +mtime: 1783612718 +commit: 44b82de635c3bc66b0093abd1cf8cc1c8b1b9c0f
