Make -slave also work with the normal console on Windows.

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30780 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
reimar 2010-02-27 23:12:34 +00:00
parent 67f9e11d93
commit 490a015043
1 changed files with 8 additions and 3 deletions

View File

@ -35,11 +35,16 @@
int mp_input_slave_cmd_func(int fd,char* dest,int size){
DWORD retval;
HANDLE in = GetStdHandle(STD_INPUT_HANDLE);
if(!PeekNamedPipe(in, NULL, size, &retval, NULL, NULL) || !retval){
if(PeekNamedPipe(in, NULL, size, &retval, NULL, NULL)){
if (size > retval) size = retval;
} else {
if (WaitForSingleObject(in, 0))
size = 0;
}
if(!size){
return MP_INPUT_NOTHING;
}
if(retval>size)retval=size;
ReadFile(in, dest, retval, &retval, NULL);
ReadFile(in, dest, size, &retval, NULL);
if(retval)return retval;
return MP_INPUT_NOTHING;
}