[pacman-dev] [PATCH v2] lock file may be left behind when a signal arrives while in cleanup
lilydjwg
lilydjwg at gmail.com
Wed Dec 2 12:02:13 UTC 2020
Hi there,
Is there anything remaining I could do to get this merged? Yesterday we
had a dangling db.lck again when a member lost his connection to the
server while running devtools.
On Wed, Aug 12, 2020 at 11:17:49PM +0800, lilydjwg wrote:
> When a SIGINT or SIGHUP arrives before alpm_unlock (in alpm_release) but
> after remove_soft_interrupt_handler, the lock file will be left behind.
>
> Signed-off-by: lilydjwg <lilydjwg at gmail.com>
> ---
>
> Oops, here is an updated version that calls _alpm_handle_unlock
> before remove_soft_interrupt_handler. It should be fine to call
> _alpm_handle_unlock twice.
>
> src/pacman/pacman.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/src/pacman/pacman.c b/src/pacman/pacman.c
> index fefd3fa4..8928ccc4 100644
> --- a/src/pacman/pacman.c
> +++ b/src/pacman/pacman.c
> @@ -287,6 +287,9 @@ static void setuseragent(void)
> */
> static void cleanup(int ret)
> {
> + if(config) {
> + _alpm_handle_unlock(config->handle);
> + }
> remove_soft_interrupt_handler();
> if(config) {
> /* free alpm library resources */
> --
> 2.28.0
--
Best regards,
lilydjwg
More information about the pacman-dev
mailing list