diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2013-02-20 15:58:42 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2013-02-20 15:58:42 +0100 |
commit | 2aec773688fd64857e9446838187170760acddd4 (patch) | |
tree | 4528074a1856b5656b5db6d140026a486c44714d /archival/rpm.c | |
parent | 10f5f9b10d5bb18aa612e8f340d8454421015b00 (diff) | |
download | busybox-w32-2aec773688fd64857e9446838187170760acddd4.tar.gz busybox-w32-2aec773688fd64857e9446838187170760acddd4.tar.bz2 busybox-w32-2aec773688fd64857e9446838187170760acddd4.zip |
rpm: use "create+rename" method of replacing existing files
Users were reporting getting errors like
"ls: error while loading shared libraries: libc.so.6: ELF load command past end of file"
while rpm was unpacking glibc tarball.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'archival/rpm.c')
-rw-r--r-- | archival/rpm.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/archival/rpm.c b/archival/rpm.c index 793701652..6b227d537 100644 --- a/archival/rpm.c +++ b/archival/rpm.c | |||
@@ -242,8 +242,8 @@ static void extract_cpio(int fd, const char *source_rpm) | |||
242 | /* compat: overwrite existing files. | 242 | /* compat: overwrite existing files. |
243 | * try "rpm -i foo.src.rpm" few times in a row - | 243 | * try "rpm -i foo.src.rpm" few times in a row - |
244 | * standard rpm will not complain. | 244 | * standard rpm will not complain. |
245 | * (TODO? real rpm creates "file;1234" and then renames it) */ | 245 | */ |
246 | | ARCHIVE_UNLINK_OLD; | 246 | | ARCHIVE_REPLACE_VIA_RENAME; |
247 | archive_handle->src_fd = fd; | 247 | archive_handle->src_fd = fd; |
248 | /*archive_handle->offset = 0; - init_handle() did it */ | 248 | /*archive_handle->offset = 0; - init_handle() did it */ |
249 | 249 | ||