rendered paste body/**
* @brief Removes a mission from mission global array.
* @note also update selectedMission Pointer if needed
*/
static void CP_MissionRemove (mission_t *mission)
{
linkedList_t *list = ccs.missions;
mission_t *removedMission = NULL;
/* Destroy UFO */
if (mission->ufo)
UFO_RemoveUfoFromGeoscape(mission->ufo);
while (list) {
removedMission = (mission_t *)list->data;
if (removedMission == mission) {
break;
}
list = list->next;
}
/* maybe selectedMission used on geoscape to know which ground mission is select has changed */
if (removedMission > selectedMission)
selectedMission -= SIZE_OF_MISSION_IN_LINKED_LIST;
if (removedMission)
LIST_Remove(&ccs.missions, list);
}