Skip to content

Potential fix for 1 code quality finding#3686

Draft
ann0see wants to merge 1 commit into
mainfrom
ai-findings-autofix/src-threadpool.h
Draft

Potential fix for 1 code quality finding#3686
ann0see wants to merge 1 commit into
mainfrom
ai-findings-autofix/src-threadpool.h

Conversation

@ann0see
Copy link
Copy Markdown
Member

@ann0see ann0see commented May 11, 2026

This PR applies 1/2 suggestions from code quality AI findings. 1 suggestion was skipped to avoid creating conflicts.

Not yet reviewed. We may want to check if this is a valid finding even.

Co-authored-by: Copilot Autofix powered by AI <223894421+github-code-quality[bot]@users.noreply.github.com>
Comment thread src/threadpool.h
std::mutex queue_mutex;
std::condition_variable condition;
bool stop;
bool stop = false;
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Needs review...

Copy link
Copy Markdown
Member

@softins softins May 11, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After some thought, I've concluded that it is because CThreadPool has two constructors:

  • CThreadPool() = default
  • CThreadPool(size_t)
    and only the size_t version has a constructor initialisation for stop(false), a few lines further down. The default constructor doesn't, and therefore if that constructor were used, stop would start uninitialised.

In fact, it would appear that in the code, the CThreadPool constructor is only ever called with the size_t argument, in server.cpp.

So in that case, instead of the above in-class initialisation, I would remove the default constructor declaration and check that the code still compiles (it should, unless I've overlooked something).

@ann0see ann0see requested review from pljones and softins May 11, 2026 21:13
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