diff --git a/src/management/research.c b/src/management/research.c index 5873493565..83df0fd6a1 100644 --- a/src/management/research.c +++ b/src/management/research.c @@ -417,6 +417,12 @@ static void research_insert_researched(int entryIndex, int category) { rct_research_item *researchItem, *researchItem2; + researchItem = gResearchItems; + // First check to make sure that entry is not already accounted for + for (; researchItem->entryIndex != RESEARCHED_ITEMS_END; researchItem++) { + if (researchItem->entryIndex == entryIndex) + return; + } researchItem = gResearchItems; do { if (researchItem->entryIndex == RESEARCHED_ITEMS_SEPARATOR) {