diff --git a/alib2std/src/extensions/istream.cpp b/alib2std/src/extensions/istream.cpp
index 1adcda3b0ff94d3a498f56db04cd83e65b198927..e47a563ffa7497cfbe23b3a54eb573dc1f06fb19 100644
--- a/alib2std/src/extensions/istream.cpp
+++ b/alib2std/src/extensions/istream.cpp
@@ -16,6 +16,11 @@ std::istream & oprr ( std::istream & in, const std::string & str, bool start ) {
 	char c_in  = in.peek ( );
 	in.get ( );
 
+	if ( c_in == EOF ) {
+		in.clear ( std::ios::failbit );
+		return in;
+	}
+
 	if ( in.good ( ) ) {
 		if ( start && ( ( c_in == ' ' ) || ( c_in == '\n' ) || ( c_in == '\t' ) ) )
 			oprr ( in, str, start );