2024-01-25 20:56:02 +08:00
|
|
|
From 665f6beeeb98bac769e6a072b88339ecad5c23e4 Mon Sep 17 00:00:00 2001
|
2022-08-24 18:00:40 +08:00
|
|
|
From: yixiangzhike <yixiangzhike007@163.com>
|
|
|
|
|
Date: Wed, 17 Aug 2022 16:44:03 +0800
|
|
|
|
|
Subject: [PATCH] fix issue of moving files by ar or br
|
|
|
|
|
|
|
|
|
|
When eu-ar uses the combination of br or ar parameters to move the exist files,
|
|
|
|
|
it forgets to add the files to the new linked list. As a result, the files are lost.
|
|
|
|
|
---
|
|
|
|
|
src/ar.c | 3 ++-
|
|
|
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
|
|
|
|
|
|
diff --git a/src/ar.c b/src/ar.c
|
2024-01-25 20:56:02 +08:00
|
|
|
index 072ca2e..e824b59 100644
|
2022-08-24 18:00:40 +08:00
|
|
|
--- a/src/ar.c
|
|
|
|
|
+++ b/src/ar.c
|
2024-01-25 20:56:02 +08:00
|
|
|
@@ -1341,7 +1341,8 @@ do_oper_insert (int oper, const char *arfname, char **argv, int argc,
|
2022-08-24 18:00:40 +08:00
|
|
|
|
|
|
|
|
struct armem *last_added = after_memberelem;
|
|
|
|
|
for (int cnt = 0; cnt < argc; ++cnt)
|
|
|
|
|
- if (oper != oper_replace || found[cnt]->old_off == -1)
|
|
|
|
|
+ if (((oper == oper_replace) && (ipos != ipos_none) && (found[cnt]->old_off != -1)) || \
|
|
|
|
|
+ oper != oper_replace || found[cnt]->old_off == -1)
|
|
|
|
|
{
|
|
|
|
|
if (last_added == NULL)
|
|
|
|
|
{
|
|
|
|
|
--
|
|
|
|
|
2.27.0
|
|
|
|
|
|