* resource.cc (getrlimit): Return actual values on RLIMIT_STACK.
This commit is contained in:
parent
a06a7fb451
commit
e4a17c6d11
@ -1,3 +1,7 @@
|
|||||||
|
Wed Aug 29 0:45:00 2001 Corinna Vinschen <corinna@vinschen.de>
|
||||||
|
|
||||||
|
* resource.cc (getrlimit): Return actual values on RLIMIT_STACK.
|
||||||
|
|
||||||
Tue Aug 28 16:37:17 2001 Christopher Faylor <cgf@cygnus.com>
|
Tue Aug 28 16:37:17 2001 Christopher Faylor <cgf@cygnus.com>
|
||||||
|
|
||||||
* dir.cc (rmdir): Report ENOENT when file doesn't exist rather than
|
* dir.cc (rmdir): Report ENOENT when file doesn't exist rather than
|
||||||
|
@ -106,6 +106,8 @@ extern "C"
|
|||||||
int
|
int
|
||||||
getrlimit (int resource, struct rlimit *rlp)
|
getrlimit (int resource, struct rlimit *rlp)
|
||||||
{
|
{
|
||||||
|
MEMORY_BASIC_INFORMATION m;
|
||||||
|
|
||||||
if (check_null_invalid_struct_errno (rlp))
|
if (check_null_invalid_struct_errno (rlp))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
||||||
@ -117,7 +119,16 @@ getrlimit (int resource, struct rlimit *rlp)
|
|||||||
case RLIMIT_CPU:
|
case RLIMIT_CPU:
|
||||||
case RLIMIT_FSIZE:
|
case RLIMIT_FSIZE:
|
||||||
case RLIMIT_DATA:
|
case RLIMIT_DATA:
|
||||||
|
break;
|
||||||
case RLIMIT_STACK:
|
case RLIMIT_STACK:
|
||||||
|
if (!VirtualQuery ((LPCVOID) &m, &m, sizeof m))
|
||||||
|
debug_printf ("couldn't get stack info, returning def.values. %E");
|
||||||
|
else
|
||||||
|
{
|
||||||
|
rlp->rlim_cur = (DWORD) &m - (DWORD) m.AllocationBase;
|
||||||
|
rlp->rlim_max = (DWORD) m.BaseAddress + m.RegionSize
|
||||||
|
- (DWORD) m.AllocationBase;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case RLIMIT_NOFILE:
|
case RLIMIT_NOFILE:
|
||||||
rlp->rlim_cur = getdtablesize ();
|
rlp->rlim_cur = getdtablesize ();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user