void NXCloseMemory(register NXStream *s, int option) { int userBuf; int isCheapStream; _NXVerifyStream(s); verify_memory_stream(s); isCheapStream = (s->functions == &cheap_functions) ? 1:0; userBuf = (s->flags & NX_USER_OWNS_BUF) != 0; if (!userBuf) { switch (option) { case NX_FREEBUFFER: if (isCheapStream && s->buf_size < MAX_MALLOC) free(s->buf_base); else { kern_return_t ret = vm_deallocate(mach_task_self(), (vm_offset_t)s->buf_base, (vm_size_t)s->buf_size); if (ret != KERN_SUCCESS) NX_RAISE(NX_streamVMError, s, (void *)ret); } break; case NX_TRUNCATEBUFFER: if (!isCheapStream || s->buf_size >= MAX_MALLOC) memory_close(s); break; case NX_SAVEBUFFER: break; } } NXStreamDestroy(s); }
void z_output_stream (void) { flush_buffer (); switch ((short) zargs[0]) { case 1: ostream_screen = TRUE; break; case -1: ostream_screen = FALSE; break; case 2: if (!ostream_script) script_open (); break; case -2: if (ostream_script) script_close (); break; case 3: memory_open (zargs[1], zargs[2], zargc >= 3); break; case -3: memory_close (); break; case 4: if (!ostream_record) record_open (); break; case -4: if (ostream_record) record_close (); break; } }/* z_output_stream */
void Processor::z_output_stream() { flush_buffer(); switch ((short) zargs[0]) { case 1: ostream_screen = true; break; case -1: ostream_screen = false; break; case 2: if (!ostream_script) script_open(); break; case -2: if (ostream_script) script_close(); break; case 3: memory_open(zargs[1], zargs[2], zargc >= 3); break; case -3: memory_close(); break; case 4: if (!ostream_record) record_open(); break; case -4: if (ostream_record) record_close(); break; default: break; } }