Projects
openEuler:22.03:LTS:LoongArch
rpm
_service:tar_scm_kernel_repo:backport-Close-fil...
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File _service:tar_scm_kernel_repo:backport-Close-file-before-replacing-signed.patch of Package rpm
From 9b4c50dd67c337f2d3c927cdd01ae4433bb08b61 Mon Sep 17 00:00:00 2001 From: Evgeniy Taishev <e.taishev@omp.ru> Date: Mon, 17 Jan 2022 22:07:13 +0300 Subject: [PATCH] Close file before replacing signed --- sign/rpmgensig.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sign/rpmgensig.c b/sign/rpmgensig.c index e88f9b7..b8c68ce 100644 --- a/sign/rpmgensig.c +++ b/sign/rpmgensig.c @@ -695,6 +695,10 @@ static int rpmSign(const char *rpm, int deleting, int flags) if (copyFile(&fd, rpm, &ofd, trpm) == 0) { struct stat st; + /* File must be closed before deletion due to different file locking in some file systems*/ + if (fd) (void) closeFile(&fd); + if (ofd) (void) closeFile(&ofd); + /* Move final target into place, restore file permissions. */ if (stat(rpm, &st) == 0 && unlink(rpm) == 0 && rename(trpm, rpm) == 0 && chmod(rpm, st.st_mode) == 0) { -- 1.8.3.1
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.