diff --git a/aegisub/libaegisub/common/option_visit.cpp b/aegisub/libaegisub/common/option_visit.cpp
index abe19f207e4afe3d6eccec7f391bcceb95f6821d..f3b84c681d2164c668e46e13a3ddbc3b42dce032 100644
--- a/aegisub/libaegisub/common/option_visit.cpp
+++ b/aegisub/libaegisub/common/option_visit.cpp
@@ -144,11 +144,12 @@ void ConfigVisitor::AddOptionValue(OptionValue* opt) {
 		return;
 	}
 
-	if (!values.count(name))
+	OptionValueMap::iterator it = values.find(name);
+	if (it == values.end())
 		values[name] = opt;
 	else if (replace) {
-		delete values[name];
-		values[name] = opt;
+		delete it->second;
+		it->second = opt;
 	}
 	else {
 		try {