@@ -151,23 +151,29 @@ void NimBLEAdvertising::setName(const std::string& name) {
151151/* *
152152 * @brief Set the advertised manufacturer data.
153153 * @param [in] data The data to advertise.
154+ * @param [in] length The length of the data.
154155 */
155- void NimBLEAdvertising::setManufacturerData (const std::string& data) {
156- std::vector<uint8_t >(data. begin () , data. end () ).swap (m_mfgData);
156+ void NimBLEAdvertising::setManufacturerData (const uint8_t * data, size_t length ) {
157+ std::vector<uint8_t >(data, data + length ).swap (m_mfgData);
157158 m_advData.mfg_data = &m_mfgData[0 ];
158159 m_advData.mfg_data_len = m_mfgData.size ();
159160 m_advDataSet = false ;
160161} // setManufacturerData
161162
163+ /* *
164+ * @brief Set the advertised manufacturer data.
165+ * @param [in] data The data to advertise.
166+ */
167+ void NimBLEAdvertising::setManufacturerData (const std::string& data) {
168+ setManufacturerData (reinterpret_cast <const uint8_t *>(data.data ()), data.length ());
169+ } // setManufacturerData
170+
162171/* *
163172 * @brief Set the advertised manufacturer data.
164173 * @param [in] data The data to advertise.
165174 */
166175void NimBLEAdvertising::setManufacturerData (const std::vector<uint8_t >& data) {
167- std::vector<uint8_t >(data.begin (), data.end ()).swap (m_mfgData);
168- m_advData.mfg_data = &m_mfgData[0 ];
169- m_advData.mfg_data_len = m_mfgData.size ();
170- m_advDataSet = false ;
176+ setManufacturerData (&data[0 ], data.size ());
171177} // setManufacturerData
172178
173179/* *
0 commit comments