瀏覽代碼

Fix braces handling when parsing method arguments on project conversion

Garym3 2 年之前
父節點
當前提交
4aecba68e3
共有 1 個文件被更改,包括 5 次插入9 次删除
  1. 5 9
      editor/project_converter_3_to_4.cpp

+ 5 - 9
editor/project_converter_3_to_4.cpp

@@ -1217,14 +1217,17 @@ Vector<String> ProjectConverter3To4::parse_arguments(const String &line) {
 	for (int current_index = 0; current_index < string_size; current_index++) {
 		char32_t character = line.get(current_index);
 		switch (character) {
-			case '(': {
+			case '(':
+			case '[':
+			case '{': {
 				parts_counter++;
 				if (parts_counter == 1 && !is_inside_string) {
 					start_part = current_index;
 				}
 				break;
 			};
-			case ')': {
+			case ')':
+			case '}': {
 				parts_counter--;
 				if (parts_counter == 0 && !is_inside_string) {
 					parts.append(line.substr(start_part + 1, current_index - start_part - 1));
@@ -1232,13 +1235,6 @@ Vector<String> ProjectConverter3To4::parse_arguments(const String &line) {
 				}
 				break;
 			};
-			case '[': {
-				parts_counter++;
-				if (parts_counter == 1 && !is_inside_string) {
-					start_part = current_index;
-				}
-				break;
-			};
 			case ']': {
 				parts_counter--;
 				if (parts_counter == 0 && !is_inside_string) {