Remove inline comment support in multilingual INI parser
This commit is contained in:
		@@ -490,7 +490,7 @@ int CLangMngr::MergeDefinitionFile(const char *file)
 | 
				
			|||||||
	Data.currentFile = file;
 | 
						Data.currentFile = file;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	unsigned int line, col;
 | 
						unsigned int line, col;
 | 
				
			||||||
	bool result = textparsers->ParseFile_INI(file, static_cast<ITextListener_INI*>(this), &line, &col);
 | 
						bool result = textparsers->ParseFile_INI(file, static_cast<ITextListener_INI*>(this), &line, &col, false);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (!result)
 | 
						if (!result)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -778,7 +778,7 @@ failed:
 | 
				
			|||||||
* INI parser
 | 
					* INI parser
 | 
				
			||||||
*/
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
bool TextParsers::ParseFile_INI(const char *file, ITextListener_INI *ini_listener, unsigned int *line, unsigned int *col)
 | 
					bool TextParsers::ParseFile_INI(const char *file, ITextListener_INI *ini_listener, unsigned int *line, unsigned int *col, bool inline_comment)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	FILE *fp = fopen(file, "rt");
 | 
						FILE *fp = fopen(file, "rt");
 | 
				
			||||||
	unsigned int curline = 0;
 | 
						unsigned int curline = 0;
 | 
				
			||||||
@@ -842,6 +842,8 @@ bool TextParsers::ParseFile_INI(const char *file, ITextListener_INI *ini_listene
 | 
				
			|||||||
			continue;
 | 
								continue;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							if (inline_comment)
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
			/* Now search for comment characters */
 | 
								/* Now search for comment characters */
 | 
				
			||||||
			in_quote = false;
 | 
								in_quote = false;
 | 
				
			||||||
			save_ptr = ptr;
 | 
								save_ptr = ptr;
 | 
				
			||||||
@@ -882,6 +884,7 @@ bool TextParsers::ParseFile_INI(const char *file, ITextListener_INI *ini_listene
 | 
				
			|||||||
			}
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			ptr = save_ptr;
 | 
								ptr = save_ptr;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		/* Lastly, strip ending whitespace off */
 | 
							/* Lastly, strip ending whitespace off */
 | 
				
			||||||
		for (size_t i = len - 1; i<len; i--)
 | 
							for (size_t i = len - 1; i<len; i--)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -52,7 +52,8 @@ public:
 | 
				
			|||||||
	bool ParseFile_INI(const char *file,
 | 
						bool ParseFile_INI(const char *file,
 | 
				
			||||||
		ITextListener_INI *ini_listener,
 | 
							ITextListener_INI *ini_listener,
 | 
				
			||||||
		unsigned int *line,
 | 
							unsigned int *line,
 | 
				
			||||||
		unsigned int *col);
 | 
							unsigned int *col,
 | 
				
			||||||
 | 
							bool inline_comment);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	SMCError ParseFile_SMC(const char *file,
 | 
						SMCError ParseFile_SMC(const char *file,
 | 
				
			||||||
		ITextListener_SMC *smc_listener,
 | 
							ITextListener_SMC *smc_listener,
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -351,12 +351,14 @@
 | 
				
			|||||||
		 * @param ini_listener	Event handler for reading file.
 | 
							 * @param ini_listener	Event handler for reading file.
 | 
				
			||||||
		 * @param line			If non-NULL, will contain last line parsed (0 if file could not be opened).
 | 
							 * @param line			If non-NULL, will contain last line parsed (0 if file could not be opened).
 | 
				
			||||||
		 * @param col			If non-NULL, will contain last column parsed (undefined if file could not be opened).
 | 
							 * @param col			If non-NULL, will contain last column parsed (undefined if file could not be opened).
 | 
				
			||||||
 | 
							 * @param inline_comment Whether inline comment is allowed.
 | 
				
			||||||
		 * @return				True if parsing succeeded, false if file couldn't be opened or there was a syntax error.
 | 
							 * @return				True if parsing succeeded, false if file couldn't be opened or there was a syntax error.
 | 
				
			||||||
		 */
 | 
							 */
 | 
				
			||||||
		virtual bool ParseFile_INI(const char *file,
 | 
							virtual bool ParseFile_INI(const char *file,
 | 
				
			||||||
									ITextListener_INI *ini_listener,
 | 
														ITextListener_INI *ini_listener,
 | 
				
			||||||
									unsigned int *line,
 | 
														unsigned int *line,
 | 
				
			||||||
									unsigned int *col) =0;
 | 
														unsigned int *col,
 | 
				
			||||||
 | 
														bool inline_comment = true) =0;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		/**
 | 
							/**
 | 
				
			||||||
		 * @brief Parses an SMC-format text file.
 | 
							 * @brief Parses an SMC-format text file.
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user