diff --git a/aegisub/src/auto4_lua_assfile.cpp b/aegisub/src/auto4_lua_assfile.cpp
index f9f2570f22f619d7bfd8360c0f3328a79be9ecb7..7f18265bf13d3c25840490efe437884fe4025687 100644
--- a/aegisub/src/auto4_lua_assfile.cpp
+++ b/aegisub/src/auto4_lua_assfile.cpp
@@ -438,13 +438,12 @@ namespace Automation4 {
 
 		if (a >= b) return;
 
-		for (; b < lines.size(); ++a, ++b) {
-			modification_type |= modification_mask(lines[a]);
-			lines_to_delete.emplace_back(lines[a]);
-			lines[a] = lines[b];
+		for (size_t i = a; i < b; ++i) {
+			modification_type |= modification_mask(lines[i]);
+			lines_to_delete.emplace_back(lines[i]);
 		}
 
-		lines.erase(lines.begin() + a, lines.end());
+		lines.erase(lines.begin() + a, lines.begin() + b);
 	}
 
 	void LuaAssFile::ObjectAppend(lua_State *L)