Current behaviour
Discover() will run only if we are listening on all addresses (bind_on_any is true). However if -bind=0.0.0.0:port is explicitly given, then bind_on_any will end up being false and thus Discover() will not run when it should.
Expected behaviour
Discover own addresses even if -bind=0.0.0.0:port is given.
Steps to reproduce
Use -bind=0.0.0.0:port.
How did you obtain Bitcoin Core
Compiled from source
What version of Bitcoin Core are you using?
master@85bcfeea23568053ea09013fb8263fa1511d7123
Operating system and version
Windows 3.11
Background
See #31133 (comment)