aboutsummaryrefslogtreecommitdiffstats
path: root/libasn1parser/asn1p_l.c
diff options
context:
space:
mode:
authorLev Walkin <vlm@lionet.info>2006-03-18 06:53:11 +0000
committerLev Walkin <vlm@lionet.info>2006-03-18 06:53:11 +0000
commitfb872bdf09137d7c3ce972659551cf62606b3fd1 (patch)
treefa0bdc23905103b3bf0e1a65e12c4301c05f3eb8 /libasn1parser/asn1p_l.c
parent794323011ca04d72c4558270faef118585c4e2b6 (diff)
no backslash stuff
Diffstat (limited to 'libasn1parser/asn1p_l.c')
-rw-r--r--libasn1parser/asn1p_l.c32
1 files changed, 25 insertions, 7 deletions
diff --git a/libasn1parser/asn1p_l.c b/libasn1parser/asn1p_l.c
index d4f152ff..12084cc0 100644
--- a/libasn1parser/asn1p_l.c
+++ b/libasn1parser/asn1p_l.c
@@ -28,7 +28,7 @@
#define YY_FLEX_MINOR_VERSION 5
#include <stdio.h>
-
+#include <errno.h>
/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
#ifdef c_plusplus
@@ -41,7 +41,9 @@
#ifdef __cplusplus
#include <stdlib.h>
+#ifndef _WIN32
#include <unistd.h>
+#endif
/* Use prototypes in function declarations. */
#define YY_USE_PROTOS
@@ -81,6 +83,7 @@
#define YY_PROTO(proto) ()
#endif
+
/* Returned upon end-of-file. */
#define YY_NULL 0
@@ -1884,7 +1887,7 @@ static asn1c_integer_t _lex_atoi(const char *ptr);
/* Newline */
/* White-space */
-#line 1888 "asn1p_l.c"
+#line 1891 "asn1p_l.c"
/* Macros after this point can all be overridden by user definitions in
* section 1.
@@ -1984,9 +1987,20 @@ YY_MALLOC_DECL
YY_FATAL_ERROR( "input in flex scanner failed" ); \
result = n; \
} \
- else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
- && ferror( yyin ) ) \
- YY_FATAL_ERROR( "input in flex scanner failed" );
+ else \
+ { \
+ errno=0; \
+ while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \
+ { \
+ if( errno != EINTR) \
+ { \
+ YY_FATAL_ERROR( "input in flex scanner failed" ); \
+ break; \
+ } \
+ errno=0; \
+ clearerr(yyin); \
+ } \
+ }
#endif
/* No semi-colon after return; correct usage is to write "yyterminate();" -
@@ -2038,7 +2052,7 @@ YY_DECL
#line 93 "asn1p_l.l"
-#line 2042 "asn1p_l.c"
+#line 2056 "asn1p_l.c"
if ( yy_init )
{
@@ -3098,7 +3112,7 @@ YY_RULE_SETUP
#line 538 "asn1p_l.l"
YY_FATAL_ERROR( "flex scanner jammed" );
YY_BREAK
-#line 3102 "asn1p_l.c"
+#line 3116 "asn1p_l.c"
case YY_END_OF_BUFFER:
{
@@ -3658,11 +3672,15 @@ YY_BUFFER_STATE b;
}
+#ifndef _WIN32
+#include <unistd.h>
+#else
#ifndef YY_ALWAYS_INTERACTIVE
#ifndef YY_NEVER_INTERACTIVE
extern int isatty YY_PROTO(( int ));
#endif
#endif
+#endif
#ifdef YY_USE_PROTOS
void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )