summaryrefslogtreecommitdiff
path: root/src/file.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/file.cpp')
-rw-r--r--src/file.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/file.cpp b/src/file.cpp
index 3896005..83d76c5 100644
--- a/src/file.cpp
+++ b/src/file.cpp
@@ -10,6 +10,7 @@
10#include <errno.h> 10#include <errno.h>
11#include <sys/types.h> 11#include <sys/types.h>
12#include <sys/stat.h> 12#include <sys/stat.h>
13#include <fcntl.h>
13 14
14Bu::File::File( const char *sName, const char *sFlags ) 15Bu::File::File( const char *sName, const char *sFlags )
15{ 16{
@@ -138,7 +139,16 @@ bool Bu::File::isBlocking()
138 139
139void Bu::File::setBlocking( bool bBlocking ) 140void Bu::File::setBlocking( bool bBlocking )
140{ 141{
141 return; 142 if( bBlocking )
143 fcntl(
144 fileno( fh ),
145 F_SETFL, fcntl( fileno( fh ), F_GETFL, 0 )&(~O_NONBLOCK)
146 );
147 else
148 fcntl(
149 fileno( fh ),
150 F_SETFL, fcntl( fileno( fh ), F_GETFL, 0 )|O_NONBLOCK
151 );
142} 152}
143 153
144#ifndef WIN32 154#ifndef WIN32