jon@UCB-VAX.ARPA (Jon Corbet) (09/07/85)
I have encountered some interesting behavior from SMG, and I was wondering if anybody else has seen this one...I have a program that essentially wants to clear a terminal screen, so it does the following: smg$create_pasteboard ( --- ); smg$create_virtual_display ( --- ); smg$paste_virtual_display ( --- ); smg$erase_display ( --- ); smg$delete_virtual_display ( --- ); smg$delete_pasteboard ( --- ); where the specific parameters have been omitted. Now, this procedure does indeed clear the terminal screen, but: it leaves a channel assigned to the terminal whose screen has just been cleared. It seems that the call to smg$create_pasteboard actually assigns two channels (I found all this with a combination of DEBUG and SDA) and smg$delete_pasteboard only deassigns one of them. Has anybody else seen this, and is there a way around it? The program of interest wants to go out and clear all terminals that are not logged in; it becomes rather inconvenient when it retains channels to all of those terminals, preventing them from being logged in to... jon --- Jonathan Corbet National Center for Atmospheric Research, Field Observing Facility {seismo|hplabs}!hao!boulder!jon (Thanks to CU CS department)