diff --git a/platforms/common/uORB/PublicationMulti.hpp b/platforms/common/uORB/PublicationMulti.hpp index cecb76324f..7a91bc907e 100644 --- a/platforms/common/uORB/PublicationMulti.hpp +++ b/platforms/common/uORB/PublicationMulti.hpp @@ -92,9 +92,10 @@ public: return (orb_publish(get_topic(), _handle, &data) == PX4_OK); } - int get_instance() const + int get_instance() { - if (_handle) { + // advertise if not already advertised + if (advertise()) { return static_cast(_handle)->get_instance(); }