unix_io.c (unix_open): Make sure the ulimit workaround works
regardless of the version of glibc which is used to
compild e2fsprogs.
diff --git a/lib/ext2fs/unix_io.c b/lib/ext2fs/unix_io.c
index 1e01d28..7fa4b1a 100644
--- a/lib/ext2fs/unix_io.c
+++ b/lib/ext2fs/unix_io.c
@@ -346,11 +346,11 @@
(S_ISBLK(st.st_mode))) {
struct rlimit rlim;
- rlim.rlim_cur = RLIM_INFINITY;
- rlim.rlim_max = RLIM_INFINITY;
+ rlim.rlim_cur = rlim.rlim_max = ((unsigned long)(~0UL));
setrlimit(RLIMIT_FSIZE, &rlim);
getrlimit(RLIMIT_FSIZE, &rlim);
- if (rlim.rlim_cur != rlim.rlim_max) {
+ if (((unsigned long) rlim.rlim_cur) <
+ ((unsigned long) rlim.rlim_max)) {
rlim.rlim_cur = rlim.rlim_max;
setrlimit(RLIMIT_FSIZE, &rlim);
}