PerlIO_default_buffer(pTHX_ PerlIO_list_t *av)
{
PerlIO_funcs *tab = &PerlIO_perlio;
- if (O_BINARY != O_TEXT) {
- tab = &PerlIO_crlf;
- }
- else {
- if (PerlIO_stdio.Set_ptrcnt) {
- tab = &PerlIO_stdio;
- }
- }
+#ifdef PERLIO_CRLF
+ tab = &PerlIO_crlf;
+#endif
+ if (PerlIO_stdio.Set_ptrcnt)
+ tab = &PerlIO_stdio;
+#else
PerlIO_debug("Pushing %s\n", tab->name);
PerlIO_list_push(aTHX_ av, PerlIO_find_layer(aTHX_ tab->name, 0, 0),
&PL_sv_undef);
/* Can't flush if switching encodings. */
if (!(names && memEQ(names, ":encoding(", 10))) {
PerlIO_flush(f);
- if (!names && (O_TEXT != O_BINARY && (mode & O_BINARY))) {
+#ifdef PERLIO_CRLF
+ if (!names && (mode & O_BINARY)) {
PerlIO *top = f;
while (*top) {
if (PerlIOBase(top)->tab == &PerlIO_crlf) {
PerlIO_flush(top);
}
}
+#endif
}
return PerlIO_apply_layers(aTHX_ f, NULL, names) == 0 ? TRUE : FALSE;
}
*s++ = '+';
}
}
-#if O_TEXT != O_BINARY
+#ifdef PERLIO_CRLF
if (!(flags & PERLIO_F_CRLF))
*s++ = 'b';
#endif
while (*mode) {
*tmode++ = *mode++;
}
- if (O_BINARY != O_TEXT) {
- *tmode++ = 'b';
- }
+#ifdef PERLIO_CRLF
+ *tmode++ = 'b';
+#endif
*tmode = '\0';
return ret;
}
return NULL;
} else {
fd = PerlIO_fileno(f);
-#if (O_BINARY != O_TEXT) && !defined(__BEOS__)
+#ifdef PERLIO_CRLF
/*
* do something about failing setmode()? --jhi
*/