/* Used by front-ends via R_CleanUp to shutdown all graphics devices at the end of a session. Not the same as graphics.off(), and leaves .Devices and .Device in an invalid state. */ void KillAllDevices(void) { /* Avoid lots of activation followed by removal of devices while (R_NumDevices > 1) killDevice(R_CurrentDevice); */ int i; for(i = R_MaxDevices-1; i > 0; i--) removeDevice(i, FALSE); R_CurrentDevice = 0; /* the null device, for tidyness */ /* <FIXME> Disable this for now */ /* * Free the font and encoding structures used by * PostScript, Xfig, and PDF devices */ /* freeType1Fonts(); </FIXME>*/ /* FIXME: There should really be a formal graphics finaliser * but this is a good proxy for now. */ // unregisterBase(); if (baseRegisterIndex != -1) { GEunregisterSystem(baseRegisterIndex); baseRegisterIndex = -1; } }
void unregisterBase(void) { GEunregisterSystem(baseRegisterIndex); baseRegisterIndex = -1; }