Cygwin: FIFO: implement clear_readahead
Make fhandler_base::clear_readahead virtual, and implement fhandler_fifo::clear_readahead. This is called by dtable::fixup_after_exec; it clears the readahead in each client.
This commit is contained in:
parent
298581868a
commit
e0fd15c91b
@ -444,7 +444,7 @@ public:
|
|||||||
return dev ().native ();
|
return dev ().native ();
|
||||||
}
|
}
|
||||||
virtual bg_check_types bg_check (int, bool = false) {return bg_ok;}
|
virtual bg_check_types bg_check (int, bool = false) {return bg_ok;}
|
||||||
void clear_readahead ()
|
virtual void clear_readahead ()
|
||||||
{
|
{
|
||||||
raixput = raixget = ralen = rabuflen = 0;
|
raixput = raixget = ralen = rabuflen = 0;
|
||||||
rabuf = NULL;
|
rabuf = NULL;
|
||||||
@ -1302,6 +1302,12 @@ public:
|
|||||||
bool arm (HANDLE h);
|
bool arm (HANDLE h);
|
||||||
void fixup_after_fork (HANDLE);
|
void fixup_after_fork (HANDLE);
|
||||||
int __reg2 fstatvfs (struct statvfs *buf);
|
int __reg2 fstatvfs (struct statvfs *buf);
|
||||||
|
void clear_readahead ()
|
||||||
|
{
|
||||||
|
fhandler_base::clear_readahead ();
|
||||||
|
for (int i = 0; i < nclients; i++)
|
||||||
|
client[i].fh->clear_readahead ();
|
||||||
|
}
|
||||||
select_record *select_read (select_stuff *);
|
select_record *select_read (select_stuff *);
|
||||||
select_record *select_write (select_stuff *);
|
select_record *select_write (select_stuff *);
|
||||||
select_record *select_except (select_stuff *);
|
select_record *select_except (select_stuff *);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user