https://gcc.gnu.org/g:554d2a2f0e200607dcdfbf15328800bc1c21e2fd

commit r16-973-g554d2a2f0e200607dcdfbf15328800bc1c21e2fd
Author: David Malcolm <dmalc...@redhat.com>
Date:   Thu May 29 16:57:52 2025 -0400

    diagnostics: bulletproof html_builder::make_metadata_element
    
    gcc/ChangeLog:
            * diagnostic-format-html.cc (html_builder::make_metadata_element):
            Gracefully handle the case where "url" is null.
    
    Signed-off-by: David Malcolm <dmalc...@redhat.com>

Diff:
---
 gcc/diagnostic-format-html.cc | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/gcc/diagnostic-format-html.cc b/gcc/diagnostic-format-html.cc
index f2b255bf9cd2..3fa5e662d2be 100644
--- a/gcc/diagnostic-format-html.cc
+++ b/gcc/diagnostic-format-html.cc
@@ -897,10 +897,14 @@ html_builder::make_metadata_element (label_text label,
   xml::printer xp (*item.get ());
   xp.add_text ("[");
   {
-    xp.push_tag ("a", true);
-    xp.set_attr ("href", url.get ());
+    if (url.get ())
+      {
+       xp.push_tag ("a", true);
+       xp.set_attr ("href", url.get ());
+      }
     xp.add_text (label.get ());
-    xp.pop_tag ();
+    if (url.get ())
+      xp.pop_tag ();
   }
   xp.add_text ("]");
   return item;

Reply via email to