1 |
--- shadow-4.1.5.1/libmisc/copydir.c.rpmsave 2012-02-13 19:16:32.000000000 +0000 |
2 |
+++ shadow-4.1.5.1/libmisc/copydir.c 2012-07-12 12:35:57.027308382 +0100 |
3 |
@@ -236,6 +236,7 @@ |
4 |
bool set_orig = false; |
5 |
struct DIRECT *ent; |
6 |
DIR *dir; |
7 |
+ int len = 0; |
8 |
|
9 |
if (copy_root) { |
10 |
struct stat sb; |
11 |
@@ -296,6 +297,18 @@ |
12 |
char *dst_name; |
13 |
size_t src_len = strlen (ent->d_name) + 2; |
14 |
size_t dst_len = strlen (ent->d_name) + 2; |
15 |
+ |
16 |
+ /* |
17 |
+ * Skip the ".rpmsave", ".rpmnew" and ".rpmorig" entries |
18 |
+ */ |
19 |
+ |
20 |
+ len = strlen (ent->d_name); |
21 |
+ if (len > 8 && (strcmp ((ent->d_name+len-8) , ".rpmsave") == 0 || |
22 |
+ strcmp ((ent->d_name+len-8), ".rpmorig") == 0)) |
23 |
+ continue; |
24 |
+ if (len > 7 && strcmp ((ent->d_name+len-7), ".rpmnew") == 0) |
25 |
+ continue; |
26 |
+ |
27 |
src_len += strlen (src_root); |
28 |
dst_len += strlen (dst_root); |
29 |
|