diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2024-04-08 11:20:09 +0200 |
---|---|---|
committer | Rémi Verschelde <rverschelde@gmail.com> | 2024-04-08 11:20:09 +0200 |
commit | bfccd57769d9be5a7c82105862c6c35c9a0df647 (patch) | |
tree | 7a40886bd4e07ca2564075d1f25e8355990901a1 | |
parent | 7d96ec4f9d522c81009a1b5b359047f681b8c91b (diff) | |
parent | f98d5522144c580dfe5bb90746f26dfc82b51113 (diff) | |
download | redot-engine-bfccd57769d9be5a7c82105862c6c35c9a0df647.tar.gz |
Merge pull request #89573 from timothyqiu/hop
Fix crash when columns are skipped in CSV translation
-rw-r--r-- | editor/import/resource_importer_csv_translation.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/editor/import/resource_importer_csv_translation.cpp b/editor/import/resource_importer_csv_translation.cpp index d56b426c86..d2705ac98a 100644 --- a/editor/import/resource_importer_csv_translation.cpp +++ b/editor/import/resource_importer_csv_translation.cpp @@ -122,11 +122,12 @@ Error ResourceImporterCSVTranslation::import(const String &p_source_file, const if (!key.is_empty()) { ERR_CONTINUE_MSG(line.size() != locales.size() + (int)skipped_locales.size() + 1, vformat("Error importing CSV translation: expected %d locale(s), but the '%s' key has %d locale(s).", locales.size(), key, line.size() - 1)); + int write_index = 0; // Keep track of translations written in case some locales are skipped. for (int i = 1; i < line.size(); i++) { if (skipped_locales.has(i)) { continue; } - translations.write[i - 1]->add_message(key, line[i].c_unescape()); + translations.write[write_index++]->add_message(key, line[i].c_unescape()); } } } while (!f->eof_reached()); |