blob: 7283f5db9720f3c41be699aa9437b07b82b7a11d (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc.
include "imd.h"
# IMD_CLOSE -- Close the IMD translation kernel. Close the spool file so
# the output is finally plotted. Free up storage.
procedure imd_close()
include "imd.com"
begin
# Check for a redundant imd_close call.
if (g_kt == NULL)
return
# If there is anything in the metafile, flush it and add a frame
# advance if required for the device.
if (g_ndraw > 0 || g_nframes > 0) {
# Does this device require a frame advance at end of metafile?
if (IMD_ENDFRAME(g_kt) == YES)
call idk_frame (g_out)
}
# Close output metafile, disposing of it to the host system.
call idk_close (g_out)
# Return tty descriptor.
call ttycdes (g_tty)
# Free kernel data structures.
call mfree (IMD_SBUF(g_kt), TY_CHAR)
call mfree (g_kt, TY_STRUCT)
g_kt = NULL
end
|