Skip to content

Fix PR #53: cppcheck CI failure, markup injection, code quality issues#54

Closed
Copilot wants to merge 2 commits intodev_branch_3from
copilot/review-pr-53-changes
Closed

Fix PR #53: cppcheck CI failure, markup injection, code quality issues#54
Copilot wants to merge 2 commits intodev_branch_3from
copilot/review-pr-53-changes

Conversation

Copy link

Copilot AI commented Mar 17, 2026

Review of PR #53 (GTK4 MVC architecture pattern demo) surfaced a CI-blocking cppcheck error and several code quality issues.

CI fix

  • Initializer list order in DisplayWidget.cpp and EditorWidget.cpp — members were initialized out of declaration order, triggering cppcheck [initializerList] with --error-exitcode=1

Security

  • Pango markup injection — user input was concatenated directly into markup strings. Now escaped via Glib::Markup::escape_text():
auto escaped = Glib::Markup::escape_text(text);
std::string markup = "<span foreground='" + color_ +
                     "' size='x-large' weight='bold'>" + escaped + "</span>";

Code quality

  • Add missing #include <string> in IObserver.h (was relying on transitive includes)
  • Add missing #pragma once in DisplayWidget.h
  • Remove unused #include "../controller/Controller.h" from DisplayWidget.h
  • Remove debug std::cout statements and redundant controller_ = c re-assignment in EditorWidget.cpp
  • Add missing newline at end of all new files

Documentation

  • Fix swapped pros/cons labels and typos ("Cos"→"Pros", "Pos"→"Cons") in src/ap/README.md

💬 Send tasks to Copilot coding agent from Slack and Teams to turn conversations into code. Copilot posts an update in your thread when it's finished.

…njection, code quality

- Fix initializer list order in DisplayWidget.cpp and EditorWidget.cpp (CI blocker)
- Add missing #include <string> in IObserver.h
- Add missing #pragma once in DisplayWidget.h
- Remove unnecessary Controller.h include in DisplayWidget.h
- Remove debug cout statements and redundant assignment in EditorWidget.cpp
- Escape user text in Pango markup (DisplayWidget.cpp, simple_ap.cpp)
- Fix README.md: correct typos and swap pros/cons content
- Add missing newline at end of all new files

Co-authored-by: urbytes21 <118428350+urbytes21@users.noreply.github.com>
Copilot AI changed the title [WIP] Review changes in pull request 53 Fix PR #53: cppcheck CI failure, markup injection, code quality issues Mar 17, 2026
Copilot AI requested a review from urbytes21 March 17, 2026 08:38
@urbytes21 urbytes21 closed this Mar 17, 2026
@urbytes21 urbytes21 deleted the copilot/review-pr-53-changes branch March 17, 2026 10:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants