mirror of
				https://github.com/postgres/postgres.git
				synced 2025-11-03 09:13:20 +03:00 
			
		
		
		
	In ecpglib restore LC_NUMERIC in case of an error.
This commit is contained in:
		@@ -1772,8 +1772,12 @@ ECPGdo(const int lineno, const int compat, const int force_indicator, const char
 | 
			
		||||
	 */
 | 
			
		||||
	if (statement_type == ECPGst_prepnormal)
 | 
			
		||||
	{
 | 
			
		||||
		if (!ecpg_auto_prepare(lineno, connection_name, compat, &prepname, query))
 | 
			
		||||
		if (!ecpg_auto_prepare(lineno, connection_name, compat, &prepname, query)) {
 | 
			
		||||
			setlocale(LC_NUMERIC, oldlocale);
 | 
			
		||||
			ecpg_free(oldlocale);
 | 
			
		||||
			va_end(args);
 | 
			
		||||
			return (false);
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		/*
 | 
			
		||||
		 * statement is now prepared, so instead of the query we have to
 | 
			
		||||
@@ -1800,6 +1804,9 @@ ECPGdo(const int lineno, const int compat, const int force_indicator, const char
 | 
			
		||||
		else
 | 
			
		||||
		{
 | 
			
		||||
			ecpg_raise(lineno, ECPG_INVALID_STMT, ECPG_SQLSTATE_INVALID_SQL_STATEMENT_NAME, stmt->command);
 | 
			
		||||
			setlocale(LC_NUMERIC, oldlocale);
 | 
			
		||||
			ecpg_free(oldlocale);
 | 
			
		||||
			va_end(args);
 | 
			
		||||
			return (false);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user