int FCGI_ungetc(int c, FCGI_FILE *fp) { if(fp->stdio_stream) return ungetc(c, fp->stdio_stream); else if(fp->fcgx_stream) return FCGX_UnGetChar(c, fp->fcgx_stream); return EOF; }
static VALUE fcgi_stream_ungetc(VALUE self, VALUE ch) { FCGX_Stream *stream; int c; if (rb_safe_level() >= 4 && !OBJ_TAINTED(self)) { rb_raise(rb_eSecurityError, "Insecure: operation on untainted IO"); } Data_Get_Struct(self, FCGX_Stream, stream); c = FCGX_UnGetChar(NUM2INT(ch), stream); CHECK_STREAM_ERROR(stream); return INT2NUM(c); }
int FastCgiDevice::ungetch( int c ) { return FCGX_UnGetChar( c, m_stream ); }