#866: Fix _escape_bbcode in dialogue_box.gd — only escape '[', not ']'. Chaining .replace(']', '[rb]') after .replace('[', '[lb]') corrupted the [lb] escape itself. Updated test_dialogue_sprint18.gd accordingly. #869: Migrate test_anti_tedium + test_bug_report_ring_buffer to instantiate BugReportDialog via .tscn (BugReportDialogScene.instantiate()) instead of bare Control.new() + set_script(). Sprint 36 moved bug_report_dialog.gd to extends MetaScreen; the old load path was an orphan .uid file returning null. #870: Delete 8 parse-error test files (test_debug_overlay_sprint19, test_entanglement_sprint22, test_fog_sprint22, test_journal_sprint18, test_minimap_sprint18, test_session_manager_sprint19, test_sprint30, test_sprite_integration) + .uid sidecars. Coverage tickets filed for fog/journal/minimap (#879, #880, #881). Sprint docs updated with #882 note. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -625,8 +625,11 @@ func _format_entry(entry: Dictionary, alpha: float) -> String:
|
||||
|
||||
|
||||
## Escape BBCode bracket characters in server-sourced text (Hoshe #2).
|
||||
## #866 fix: only escape '[' — unmatched ']' renders as a literal in RichTextLabel.
|
||||
## Chaining .replace("]", "[rb]") after .replace("[", "[lb]") corrupted the [lb] escape
|
||||
## itself: "[lb]" → "[lb[rb]", making the BBCode injection guard non-functional.
|
||||
static func _escape_bbcode(text: String) -> String:
|
||||
return text.replace("[", "[lb]").replace("]", "[rb]")
|
||||
return text.replace("[", "[lb]")
|
||||
|
||||
|
||||
## Assign a palette color to an NPC entity ID on first encounter (#573).
|
||||
|
||||
Reference in New Issue
Block a user