/* Typical destroy function */ void WinDestroy( WINDOW *win) { MY_DATA *data; /* associated magic number: 'MDTA' */ /* Get data */ data = DataSearch( win, 'MDTA'); /* MY_DATA specific function to release data */ free_mydata( data); /* Remove data */ DataDelete( win, 'MDTA'); ... }