private static String MODE_BINARY(int oflags, String a, String b) { if (OpenFlags.O_BINARY.defined() && (oflags & OpenFlags.O_BINARY.intValue()) != 0) { return b; } return a; }
private static String MODE_BINARY(int oflags, String a, String b) { if (OpenFlags.O_BINARY.defined() && (oflags & OpenFlags.O_BINARY.intValue()) != 0) { return b; } return a; }
private void setBinmode() { OpenFile fptr; fptr = getOpenFileChecked(); boolean locked = fptr.lock(); try { if (fptr.readconv != null) fptr.readconv.binmode(); if (fptr.writeconv != null) fptr.writeconv.binmode(); fptr.setBinmode(); fptr.clearTextMode(); fptr.writeconvPreEcflags &= ~EConvFlags.NEWLINE_DECORATOR_MASK; if (OpenFlags.O_BINARY.defined()) { // TODO: Windows // if (fptr.readconv == null) { // SET_BINARY_MODE_WITH_SEEK_CUR(fptr); // } // else { // TODO: setmode O_BINARY means what via NIO? // setmode(fptr->fd, O_BINARY); // } } } finally { if (locked) fptr.unlock(); } }
private void setBinmode() { OpenFile fptr; fptr = getOpenFileChecked(); boolean locked = fptr.lock(); try { if (fptr.readconv != null) fptr.readconv.binmode(); if (fptr.writeconv != null) fptr.writeconv.binmode(); fptr.setBinmode(); fptr.clearTextMode(); fptr.writeconvPreEcflags &= ~EConvFlags.NEWLINE_DECORATOR_MASK; if (OpenFlags.O_BINARY.defined()) { // TODO: Windows // if (fptr.readconv == null) { // SET_BINARY_MODE_WITH_SEEK_CUR(fptr); // } // else { // TODO: setmode O_BINARY means what via NIO? // setmode(fptr->fd, O_BINARY); // } } } finally { if (locked) fptr.unlock(); } }
public static int ioFmodeOflags(int fmode) { int oflags = 0; switch (fmode & OpenFile.READWRITE) { case OpenFile.READABLE: oflags |= OpenFlags.O_RDONLY.intValue(); break; case OpenFile.WRITABLE: oflags |= OpenFlags.O_WRONLY.intValue(); break; case OpenFile.READWRITE: oflags |= OpenFlags.O_RDWR.intValue(); break; } if ((fmode & OpenFile.APPEND) != 0) { oflags |= OpenFlags.O_APPEND.intValue(); } if ((fmode & OpenFile.TRUNC) != 0) { oflags |= OpenFlags.O_TRUNC.intValue(); } if ((fmode & OpenFile.CREATE) != 0) { oflags |= OpenFlags.O_CREAT.intValue(); } if (OpenFlags.O_BINARY.defined()) { if ((fmode & OpenFile.BINMODE) != 0) { oflags |= OpenFlags.O_BINARY.intValue(); } } return oflags; }
public static int ioFmodeOflags(int fmode) { int oflags = 0; switch (fmode & OpenFile.READWRITE) { case OpenFile.READABLE: oflags |= OpenFlags.O_RDONLY.intValue(); break; case OpenFile.WRITABLE: oflags |= OpenFlags.O_WRONLY.intValue(); break; case OpenFile.READWRITE: oflags |= OpenFlags.O_RDWR.intValue(); break; } if ((fmode & OpenFile.APPEND) != 0) { oflags |= OpenFlags.O_APPEND.intValue(); } if ((fmode & OpenFile.TRUNC) != 0) { oflags |= OpenFlags.O_TRUNC.intValue(); } if ((fmode & OpenFile.CREATE) != 0) { oflags |= OpenFlags.O_CREAT.intValue(); } if (OpenFlags.O_BINARY.defined()) { if ((fmode & OpenFile.BINMODE) != 0) { oflags |= OpenFlags.O_BINARY.intValue(); } } return oflags; }
public static ChannelFD cloexecOpen(Ruby runtime, Sysopen data) { Channel ret = null; if (OpenFlags.O_CLOEXEC.defined()) { data.oflags |= OpenFlags.O_CLOEXEC.intValue(); } else { // #elif defined O_NOINHERIT // flags |= O_NOINHERIT; } PosixShim shim = new PosixShim(runtime); ret = shim.open(runtime.getCurrentDirectory(), data.fname, data.oflags, data.perm); if (ret == null) { data.errno = shim.errno; return null; } ChannelFD fd = new ChannelFD(ret, runtime.getPosix(), runtime.getFilenoUtil()); if (fd.realFileno > 0 && runtime.getPosix().isNative()) { OpenFile.fdFixCloexec(shim, fd.realFileno); } return fd; }
public static ChannelFD cloexecOpen(Ruby runtime, Sysopen data) { Channel ret = null; if (OpenFlags.O_CLOEXEC.defined()) { data.oflags |= OpenFlags.O_CLOEXEC.intValue(); } else { // #elif defined O_NOINHERIT // flags |= O_NOINHERIT; } PosixShim shim = new PosixShim(runtime); ret = shim.open(runtime.getCurrentDirectory(), data.fname, data.oflags, data.perm); if (ret == null) { data.errno = shim.errno; return null; } ChannelFD fd = new ChannelFD(ret, runtime.getPosix(), runtime.getFilenoUtil()); if (fd.realFileno > 0 && runtime.getPosix().isNative()) { OpenFile.fdFixCloexec(shim, fd.realFileno); } return fd; }
if ( optHash.op_aref(context, modeSym) == context.nil ) { int mode = OpenFlags.O_WRONLY.intValue() | OpenFlags.O_CREAT.intValue(); if ( OpenFlags.O_BINARY.defined() ) { if ( binary ) mode |= OpenFlags.O_BINARY.intValue(); final RubyIO io = (RubyIO) _io; if ( ! OpenFlags.O_BINARY.defined() ) { if ( binary ) io.binmode();
if ( optHash.op_aref(context, modeSym) == context.nil ) { int mode = OpenFlags.O_WRONLY.intValue() | OpenFlags.O_CREAT.intValue(); if ( OpenFlags.O_BINARY.defined() ) { if ( binary ) mode |= OpenFlags.O_BINARY.intValue(); final RubyIO io = (RubyIO) _io; if ( ! OpenFlags.O_BINARY.defined() ) { if ( binary ) io.binmode();
int oflags = OpenFlags.O_RDONLY.intValue() | (oBinary.defined() ? oBinary.intValue() : 0);
int oflags = OpenFlags.O_RDONLY.intValue() | (oBinary.defined() ? oBinary.intValue() : 0);
if ( // O_NDELAY not defined in OpenFlags OpenFlags.O_NONBLOCK.defined()) { if (!OpenFlags.O_NONBLOCK.defined()) { if (!OpenFlags.O_BINARY.defined()) { constants.setConstant("BINARY", runtime.newFixnum(0)); } else { if (OpenFlags.O_SYNC.defined()) { if (OpenFlags.O_NOFOLLOW.defined()) { if (OpenFlags.O_TMPFILE.defined()) {
if ( // O_NDELAY not defined in OpenFlags OpenFlags.O_NONBLOCK.defined()) { if (!OpenFlags.O_NONBLOCK.defined()) { if (!OpenFlags.O_BINARY.defined()) { constants.setConstant("BINARY", runtime.newFixnum(0)); } else { if (OpenFlags.O_SYNC.defined()) { if (OpenFlags.O_NOFOLLOW.defined()) { if (OpenFlags.O_TMPFILE.defined()) {