mirror of
				https://github.com/Telecominfraproject/wlan-cloud-lib-cppkafka.git
				synced 2025-10-31 10:37:46 +00:00 
			
		
		
		
	Fixed end() iterator and also applied default copy-constructor instead of passing null handle in BasicMessageBuilder
This commit is contained in:
		| @@ -279,16 +279,13 @@ bool HeaderList<HeaderType>::empty() const { | ||||
| template <typename HeaderType> | ||||
| typename HeaderList<HeaderType>::Iterator | ||||
| HeaderList<HeaderType>::begin() const { | ||||
|     if (empty()) { | ||||
|         return end(); | ||||
|     } | ||||
|     return Iterator(make_non_owning(handle_.get()), 0); | ||||
|     return empty() ? end() : Iterator(make_non_owning(handle_.get()), 0); | ||||
| } | ||||
|  | ||||
| template <typename HeaderType> | ||||
| typename HeaderList<HeaderType>::Iterator | ||||
| HeaderList<HeaderType>::end() const { | ||||
|     return Iterator(make_non_owning(handle_.get()), size()); | ||||
|     return Iterator(empty() ? HeaderList<HeaderType>() : make_non_owning(handle_.get()), size()); | ||||
| } | ||||
|  | ||||
| template <typename HeaderType> | ||||
|   | ||||
| @@ -154,7 +154,7 @@ private: | ||||
|     HeaderIterator(HeaderListType headers, | ||||
|                    size_t index) | ||||
|     : header_list_(std::move(headers)), | ||||
|       header_(index == header_list_.size() ? HeaderType() : header_list_.at(index)), | ||||
|       header_(header_list_.empty() ? HeaderType() : header_list_.at(index)), | ||||
|       index_(index) { | ||||
|     } | ||||
|      | ||||
|   | ||||
| @@ -245,7 +245,7 @@ BasicMessageBuilder<T, C>::BasicMessageBuilder(const Message& message) | ||||
|   key_(Buffer(message.get_key().get_data(), message.get_key().get_size())), | ||||
| #if (RD_KAFKA_VERSION >= RD_KAFKA_HEADERS_SUPPORT_VERSION) | ||||
|   header_list_(message.get_header_list() ? | ||||
|                rd_kafka_headers_copy(message.get_header_list().get_handle()) : nullptr), //copy headers | ||||
|                HeaderListType(rd_kafka_headers_copy(message.get_header_list().get_handle())) : HeaderListType()), //copy headers | ||||
| #endif | ||||
|   payload_(Buffer(message.get_payload().get_data(), message.get_payload().get_size())), | ||||
|   timestamp_(message.get_timestamp() ? message.get_timestamp().get().get_timestamp() : | ||||
| @@ -262,7 +262,7 @@ BasicMessageBuilder<T, C>::BasicMessageBuilder(const BasicMessageBuilder<U, V>& | ||||
|   partition_(rhs.partition()), | ||||
| #if (RD_KAFKA_VERSION >= RD_KAFKA_HEADERS_SUPPORT_VERSION) | ||||
|   header_list_(rhs.header_list() ? | ||||
|                rd_kafka_headers_copy(rhs.header_list().get_handle()) : nullptr), //copy headers | ||||
|                HeaderListType(rd_kafka_headers_copy(rhs.header_list().get_handle())) : HeaderListType()), //copy headers | ||||
| #endif | ||||
|   timestamp_(rhs.timestamp()), | ||||
|   user_data_(rhs.user_data()), | ||||
| @@ -278,7 +278,7 @@ BasicMessageBuilder<T, C>::BasicMessageBuilder(BasicMessageBuilder<U, V>&& rhs) | ||||
|   partition_(rhs.partition()), | ||||
| #if (RD_KAFKA_VERSION >= RD_KAFKA_HEADERS_SUPPORT_VERSION) | ||||
|   header_list_(rhs.header_list() ? | ||||
|                rhs.header_list().release_handle() : nullptr), //assume header ownership | ||||
|                HeaderListType(rhs.header_list().release_handle()) : HeaderListType()), //assume header ownership | ||||
| #endif | ||||
|   timestamp_(rhs.timestamp()), | ||||
|   user_data_(rhs.user_data()), | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 accelerated
					accelerated