dpkg: Do not even try creating hardlinks
[termux-packages] / packages / dpkg / lib-dpkg-atomic-file.c.patch
index 0a5db77..a4cf91a 100644 (file)
@@ -1,17 +1,19 @@
-diff -u -r ../dpkg-1.17.25/lib/dpkg/atomic-file.c ./lib/dpkg/atomic-file.c
---- ../dpkg-1.17.25/lib/dpkg/atomic-file.c     2015-04-09 17:40:47.000000000 -0400
-+++ ./lib/dpkg/atomic-file.c   2015-07-08 22:18:48.766580146 -0400
-@@ -90,8 +90,12 @@
+diff -u -r ../dpkg-1.18.2/lib/dpkg/atomic-file.c ./lib/dpkg/atomic-file.c
+--- ../dpkg-1.18.2/lib/dpkg/atomic-file.c      2015-07-12 22:38:47.000000000 -0400
++++ ./lib/dpkg/atomic-file.c   2015-08-25 18:06:51.689715379 -0400
+@@ -90,8 +90,14 @@
  
        if (unlink(name_old) && errno != ENOENT)
                ohshite(_("error removing old backup file '%s'"), name_old);
 -      if (link(file->name, name_old) && errno != ENOENT)
 -              ohshite(_("error creating new backup file '%s'"), name_old);
++#ifdef __ANDROID__
++      /* Termux: Use rename(2) since Android does not support hardlinks. */
++      if (rename(file->name, name_old) && errno != ENOENT) {
++#else
 +      if (link(file->name, name_old) && errno != ENOENT) {
-+              /* Termux modification: Try with rename(2) for systems not supporting hardlinks. */
-+              if (rename(file->name, name_old)) {
-+                      ohshite(_("error creating new backup file '%s'"), name_old);
-+              }
++#endif
++              ohshite(_("error creating new backup file '%s'"), name_old);
 +      }
  
        free(name_old);