diff options
Diffstat (limited to 'sys-apps/util-linux/files/util-linux-2.12p-swapon-check-symlinks.patch')
-rw-r--r-- | sys-apps/util-linux/files/util-linux-2.12p-swapon-check-symlinks.patch | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/sys-apps/util-linux/files/util-linux-2.12p-swapon-check-symlinks.patch b/sys-apps/util-linux/files/util-linux-2.12p-swapon-check-symlinks.patch index e53b84e83da4..f421458049f1 100644 --- a/sys-apps/util-linux/files/util-linux-2.12p-swapon-check-symlinks.patch +++ b/sys-apps/util-linux/files/util-linux-2.12p-swapon-check-symlinks.patch @@ -1,10 +1,10 @@ ---- util-linux-2.12b/mount/swapon.c.orig 2004-10-28 10:02:44.320023600 -0400 -+++ util-linux-2.12b/mount/swapon.c 2004-10-28 10:02:14.384574000 -0400 +--- util-linux-2.12b/mount/swapon.c ++++ util-linux-2.12b/mount/swapon.c @@ -7,2 +7,3 @@ #include <stdlib.h> +#include <sys/param.h> #include <stdio.h> -@@ -137,10 +138,26 @@ +@@ -137,10 +138,27 @@ static int is_in_proc_swaps(const char *fname) { int i; @@ -22,9 +22,10 @@ + if (!lstat(fname, &fstatbuf)) + if (S_ISLNK(fstatbuf.st_mode)) { + struct stat swapstatbuf; ++ stat(fname, &fstatbuf); + for (i = 0; i < numSwaps; i++) + if (swapFiles[i] && !stat(swapFiles[i], &swapstatbuf) && \ -+ swapstatbuf.st_dev == fstatbuf.st_dev) ++ swapstatbuf.st_rdev == fstatbuf.st_rdev) + return 1; + } + |