aboutsummaryrefslogtreecommitdiff
path: root/winsup/cygwin/grp.cc
diff options
context:
space:
mode:
authorChristopher Faylor <me@cgf.cx>2003-02-01 18:42:23 +0000
committerChristopher Faylor <me@cgf.cx>2003-02-01 18:42:23 +0000
commitb91fd70788dff637d29acc51372075fc5ef2902e (patch)
treea6b32e0ca9b19b63a8333d719bfdc946635535a4 /winsup/cygwin/grp.cc
parent003a950a8b47e2458947d1fdc1f1dc9e4f59e212 (diff)
downloadnewlib-b91fd70788dff637d29acc51372075fc5ef2902e.zip
newlib-b91fd70788dff637d29acc51372075fc5ef2902e.tar.gz
newlib-b91fd70788dff637d29acc51372075fc5ef2902e.tar.bz2
merge from trunk
Diffstat (limited to 'winsup/cygwin/grp.cc')
-rw-r--r--winsup/cygwin/grp.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/winsup/cygwin/grp.cc b/winsup/cygwin/grp.cc
index 35bba1f..f252e3c 100644
--- a/winsup/cygwin/grp.cc
+++ b/winsup/cygwin/grp.cc
@@ -111,7 +111,7 @@ internal_getgrsid (cygsid &sid)
{
char sid_string[128];
- gr.refresh ();
+ gr.refresh (false);
if (sid.string (sid_string))
for (int i = 0; i < gr.curr_lines; i++)
@@ -197,8 +197,8 @@ endgrent ()
extern "C" struct __group32 *
getgrent32 ()
{
- gr.refresh ();
-
+ if (grp_pos == 0)
+ gr.refresh (true);
if (grp_pos < gr.curr_lines)
return group_buf + grp_pos++;
@@ -223,7 +223,7 @@ setgrent ()
struct __group32 *
internal_getgrent (int pos)
{
- gr.refresh ();
+ gr.refresh (false);
if (pos < gr.curr_lines)
return group_buf + pos;