From d8bf0e047faa35a4196b66f6671522a4d843a602 Mon Sep 17 00:00:00 2001 From: Copilot <198982749+Copilot@users.noreply.github.com> Date: Sun, 17 Aug 2025 10:25:51 -0700 Subject: [PATCH] Fix nullptr dereference in pp_symbol when handling null symbol names (#7790) * Initial plan * Fix nullptr dereference in pp_symbol with null symbol names Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com> --- src/model/model_smt2_pp.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/model/model_smt2_pp.cpp b/src/model/model_smt2_pp.cpp index 489209851..f26b67797 100644 --- a/src/model/model_smt2_pp.cpp +++ b/src/model/model_smt2_pp.cpp @@ -42,8 +42,13 @@ static unsigned pp_symbol(std::ostream & out, symbol const & s) { return static_cast(str.length()); } else { - out << s.bare_str(); - return static_cast(strlen(s.bare_str())); + if (s.is_null()) { + out << "null"; + return 4; // length of "null" + } else { + out << s.bare_str(); + return static_cast(strlen(s.bare_str())); + } } }