#ident "@(#) free_vidf_str.c 1.1 05/08/19 SwRI" #include #include "old_vidf_str.h" #include "SDDAS_types.h" /******************************************************************************* * * * FREE_VIDF_STRUCTURE SUBROUTINE * * * * DESCRIPTION * * This routine is called to free all allocated memory associated with the * * reading of the VIDF information from memory as opposed to from the disk. * * * * INPUT VARIABLES * * * * USAGE * * free_vidf_structure (VIDF_INFO) * * * * NECESSARY SUBPROGRAMS * * free () frees previously allocated memory * * * * EXTERNAL VARIABLES * * None * * * * INTERNAL VARIABLES * * register SDDAS_SHORT i looping variable * * * * SUBSYSTEM * * Display Level * * * ******************************************************************************/ void free_vidf_structure (vidf_info *VIDF_INFO) { register SDDAS_SHORT i; if (VIDF_INFO->vidf_data != NULL) { free (VIDF_INFO->vidf_data); VIDF_INFO->vidf_data = NULL; } if (VIDF_INFO->tbl_offs != NULL) { free (VIDF_INFO->tbl_offs); VIDF_INFO->tbl_offs = NULL; } if (VIDF_INFO->const_offs != NULL) { free (VIDF_INFO->const_offs); VIDF_INFO->const_offs = NULL; } /**********************************************************************/ /* Reset the rest of the VIDF substructure. */ /**********************************************************************/ VIDF_INFO->version[0] = '\0'; VIDF_INFO->info_off = 0; VIDF_INFO->TABLES = 0; VIDF_INFO->CONSTS = 0; for (i = 0; i < 72; ++i) VIDF_INFO->offsets[i] = 0; }