소스 검색

fix sysconf for infinite rlimits

sysconf should return -1 for infinity, not LONG_MAX.
Natanael Copa 7 년 전
부모
커밋
3ec82877e7
1개의 변경된 파일2개의 추가작업 그리고 0개의 파일을 삭제
  1. 2 0
      src/conf/sysconf.c

+ 2 - 0
src/conf/sysconf.c

@@ -174,6 +174,8 @@ long sysconf(int name)
 	} else if (values[name] < -256) {
 		struct rlimit lim;
 		getrlimit(values[name]&16383, &lim);
+		if (lim.rlim_cur == RLIM_INFINITY)
+			return -1;
 		return lim.rlim_cur > LONG_MAX ? LONG_MAX : lim.rlim_cur;
 	}