Fix iOS simulator linking for x86_64 and EditorLog URL crash#116933
Fix iOS simulator linking for x86_64 and EditorLog URL crash#116933gumaciel wants to merge 5 commits intogodotengine:masterfrom
Conversation
When exporting an iOS project, the generated .xcarchive stayed in the export directory, which poisoned Xcode's linker search paths for simulator builds with arm64 device dylibs. This commit moves the .xcarchive straight to the standard macOS Archives directory (~/Library/Developer/Xcode/Archives/YYYY-MM-DD/) so it fixes the simulator linking issue and allows the build to instantly appear inside Xcode Organizer. Additionally, this adds explicit URI schema checks (file://, http://) to EditorLog::_meta_clicked, preventing a 64-bit integer overflow crash caused by attempting to parse system file paths with colons as script line numbers.
bruvzg
left a comment
There was a problem hiding this comment.
No sure if this is desired default behavior. And moving archive might break existing workflows.
editor/editor_log.cpp
Outdated
| if (p_meta.begins_with("file://") || p_meta.begins_with("http://") || p_meta.begins_with("https://")) { | ||
| OS::get_singleton()->shell_open(p_meta); | ||
| return; | ||
| } | ||
|
|
There was a problem hiding this comment.
Is this change necessary? http(s):// and file:// links are already working in the editor log (handled by the last else branch).
There was a problem hiding this comment.
I've added this because opening a file in Explorer, it's having some error with "64-bit integer overflow crash" due to the file name, for example: 20260304180510.
But you're right, I'll try to fix this issue with another approach
There was a problem hiding this comment.
@bruvzg I've updated the branch
I've seen that line = parts[1].to_int() - 1; is only necessary when it needs to open a source code appointment to the line, also I've added validations if (parts[1].is_valid_int() && parts[1].length() < 10) because the length can't be higher than 10.
Please check again
…oject resources, and engine source files.
…d-export-archive-to-xcode-organizer
…sing and refine external editor fallback logic.
When exporting an iOS project, the generated
.xcarchivestayed in the export directory, which poisoned Xcode's linker search paths for simulator builds with arm64 device dylibs. This commit moves the .xcarchive straight to the standard macOS Archives directory(~/Library/Developer/Xcode/Archives/YYYY-MM-DD/)so it fixes the simulator linking issue and allows the build to instantly appear inside Xcode Organizer.Additionally, this adds explicit URI schema checks (
file://,http://) toEditorLog::_meta_clicked, preventing a 64-bit integer overflow crash caused by attempting to parse system file paths with colons as script line numbers.This bug reproduces in:
Steps to reproduce:
Bug:
Changes in export: