mirror of
				https://github.com/open-source-parsers/jsoncpp.git
				synced 2025-10-30 01:01:36 -04:00 
			
		
		
		
	Integrated part of Patch #2839016, fixing default iterator initialization when using internal map.
This commit is contained in:
		
							parent
							
								
									2bcfb63362
								
							
						
					
					
						commit
						4a5e58c4f4
					
				| @ -637,6 +637,13 @@ namespace Json { | ||||
| # ifndef JSONCPP_DOC_EXCLUDE_IMPLEMENTATION | ||||
|       struct IteratorState | ||||
|       { | ||||
|          IteratorState()  | ||||
|             : map_(0) | ||||
|             , link_(0) | ||||
|             , itemIndex_(0) | ||||
|             , bucketIndex_(0)  | ||||
|          { | ||||
|          } | ||||
|          ValueInternalMap *map_; | ||||
|          ValueInternalLink *link_; | ||||
|          BucketIndex itemIndex_; | ||||
| @ -729,6 +736,12 @@ namespace Json { | ||||
| # ifndef JSONCPP_DOC_EXCLUDE_IMPLEMENTATION | ||||
|       struct IteratorState // Must be a POD
 | ||||
|       { | ||||
|          IteratorState()  | ||||
|             : array_(0) | ||||
|             , currentPageIndex_(0) | ||||
|             , currentItemIndex_(0)  | ||||
|          { | ||||
|          } | ||||
|          ValueInternalArray *array_; | ||||
|          Value **currentPageIndex_; | ||||
|          unsigned int currentItemIndex_; | ||||
|  | ||||
| @ -14,11 +14,15 @@ ValueIteratorBase::ValueIteratorBase() | ||||
| #ifndef JSON_VALUE_USE_INTERNAL_MAP | ||||
|    : current_() | ||||
|    , isNull_( true ) | ||||
| #else | ||||
| # error fix me // Need to handle uninitialized iterator comparison for experimental maps | ||||
| #endif | ||||
| { | ||||
| } | ||||
| #else | ||||
|    : isArray_( true ) | ||||
|    , isNull_( true ) | ||||
| { | ||||
|    iterator_.array_ = ValueInternalArray::IteratorState(); | ||||
| } | ||||
| #endif | ||||
| 
 | ||||
| 
 | ||||
| #ifndef JSON_VALUE_USE_INTERNAL_MAP | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Baptiste Lepilleur
						Baptiste Lepilleur