+ tThread *us = Proc_GetCurThread();
+
+ int ret = 0;
+
+ Threads_ClearEvent(THREAD_EVENT_VFS);
+
+ if( Type & VFS_SELECT_READ ) {
+ Node->ReadThreads = (void*)us;
+ if(Node->DataAvaliable) ret |= VFS_SELECT_READ;
+ }
+ if( Type & VFS_SELECT_WRITE ) {
+ Node->WriteThreads = (void*)us;
+ if(!Node->BufferFull) ret |= VFS_SELECT_WRITE;
+ }
+ if( Type & VFS_SELECT_ERROR ) {
+ Node->ErrorThreads = (void*)us;
+ if(Node->ErrorOccurred) ret |= VFS_SELECT_ERROR;
+ }