fee1613812
Fixes #558.
28 lines
1.2 KiB
Diff
28 lines
1.2 KiB
Diff
diff -u -r ../dpkg-1.18.15/src/configure.c ./src/configure.c
|
|
--- ../dpkg-1.18.15/src/configure.c 2016-11-11 22:18:40.000000000 -0500
|
|
+++ ./src/configure.c 2016-12-03 16:32:43.719508056 -0500
|
|
@@ -497,8 +497,10 @@
|
|
pkg_name(pkg, pnaw_nonambig), cdr2.buf,
|
|
strerror(errno));
|
|
if (!(what & CFOF_USER_DEL))
|
|
- if (link(cdr.buf, cdr2.buf))
|
|
- warning(_("%s: failed to link '%.250s' to '%.250s': %s"),
|
|
+ /** Termux modification: Use rename(2) instead of link(2), to avoid hard
|
|
+ links which does not work on Android 6.0 or later. */
|
|
+ if (rename(cdr.buf, cdr2.buf))
|
|
+ warning(_("%s: failed to rename '%.250s' to '%.250s': %s"),
|
|
pkg_name(pkg, pnaw_nonambig), cdr.buf,
|
|
cdr2.buf, strerror(errno));
|
|
/* Fall through. */
|
|
@@ -757,7 +759,9 @@
|
|
pkg_name(pkg, pnaw_nonambig), in,
|
|
result->buf, strerror(errno));
|
|
return -1;
|
|
- } else if (r != stab.st_size) {
|
|
+ } else if (r > stab.st_size) {
|
|
+ /* Termux patch: In some cases st_size is too large, ignore that.
|
|
+ See https://github.com/corbinlc/GNURootDebian/issues/103 */
|
|
warning(_("symbolic link '%.250s' size has "
|
|
"changed from %jd to %zd"),
|
|
result->buf, (intmax_t)stab.st_size, r);
|