diff --git a/lang/cem/libcc.ansi/misc/fdopen.c b/lang/cem/libcc.ansi/misc/fdopen.c index f8dc9f547..d1df2e2a7 100644 --- a/lang/cem/libcc.ansi/misc/fdopen.c +++ b/lang/cem/libcc.ansi/misc/fdopen.c @@ -34,13 +34,15 @@ fdopen(int fd, const char *mode) while(*mode) { switch(*mode++) { case 'b': - break; + continue; case '+': flags |= _IOREAD | _IOWRITE; - break; + continue; + /* The sequence may be followed by aditional characters */ default: - return (FILE *)NULL; + break; } + break; } if ((stream = (FILE *) malloc(sizeof(FILE))) == NULL) {