1 diff -Nur rpm-4.0.2.orig/build/files.c rpm-4.0.2/build/files.c
2 --- rpm-4.0.2.orig/build/files.c Fri Jan 19 02:47:25 2001
3 +++ rpm-4.0.2/build/files.c Tue Dec 25 21:17:42 2001
5 ilp = fl->fileList + i;
6 ilp->flags &= ~RPMFILE_SPECFILE;
9 + /* try to fix lang marks for lang-marked dirs that contain lang-marked
11 + for (i = 0; i < fl->fileListRecsUsed; i++) {
14 + ilp = fl->fileList + i;
15 + if(!S_ISDIR(ilp->fl_mode) || !ilp->langs[0])
19 + for (j = i + 1; j < fl->fileListRecsUsed; j++) {
20 + jlp = fl->fileList + j;
21 + if (!S_ISREG(jlp->fl_mode) || jlp->fl_nlink <= 1)
23 + if (strncmp(jlp->fileURL, ilp->fileURL, strlen(ilp->fileURL)))
25 + if (!strcmp(ilp->langs, jlp->langs))
28 + te = stpcpy(te, ilp->langs);
30 + te = stpcpy(te, jlp->langs);
36 + free((void *)ilp->langs);
37 + ilp->langs = xstrdup(nlangs);
42 diff -Nur rpm-4.0.2.orig/lib/cpio.c rpm-4.0.2/lib/cpio.c
43 --- rpm-4.0.2.orig/lib/cpio.c Wed Jan 3 20:29:11 2001
44 +++ rpm-4.0.2/lib/cpio.c Tue Dec 25 20:52:41 2001
46 static int createLinks(struct hardLink * li, /*@out@*/ const char ** failedFile)
47 /*@modifies fileSystem, *failedFile, li->files, li->linksLeft @*/
53 for (i = 0; i < li->nlink; i++) {
58 + rc = checkDirectory(li->files[i]);
61 + *failedFile = xstrdup(li->files[i]);
65 if (link(li->files[li->createdPath], li->files[i])) {
67 *failedFile = xstrdup(li->files[i]);