Set MAX_WHILE_ITERATIONS as module variable (#520)
This commit is contained in:
		
							parent
							
								
									c4bd41d39c
								
							
						
					
					
						commit
						8965b6a573
					
				|  | @ -52,6 +52,7 @@ ERRORS = { | ||||||
| 
 | 
 | ||||||
| DEFAULT_MAX_LEN_OUTPUT = 50000 | DEFAULT_MAX_LEN_OUTPUT = 50000 | ||||||
| MAX_OPERATIONS = 10000000 | MAX_OPERATIONS = 10000000 | ||||||
|  | MAX_WHILE_ITERATIONS = 1000000 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| def custom_print(*args): | def custom_print(*args): | ||||||
|  | @ -241,7 +242,6 @@ def evaluate_while( | ||||||
|     custom_tools: Dict[str, Callable], |     custom_tools: Dict[str, Callable], | ||||||
|     authorized_imports: List[str], |     authorized_imports: List[str], | ||||||
| ) -> None: | ) -> None: | ||||||
|     max_iterations = 1000000 |  | ||||||
|     iterations = 0 |     iterations = 0 | ||||||
|     while evaluate_ast(while_loop.test, state, static_tools, custom_tools, authorized_imports): |     while evaluate_ast(while_loop.test, state, static_tools, custom_tools, authorized_imports): | ||||||
|         for node in while_loop.body: |         for node in while_loop.body: | ||||||
|  | @ -252,8 +252,8 @@ def evaluate_while( | ||||||
|             except ContinueException: |             except ContinueException: | ||||||
|                 break |                 break | ||||||
|         iterations += 1 |         iterations += 1 | ||||||
|         if iterations > max_iterations: |         if iterations > MAX_WHILE_ITERATIONS: | ||||||
|             raise InterpreterError(f"Maximum number of {max_iterations} iterations in While loop exceeded") |             raise InterpreterError(f"Maximum number of {MAX_WHILE_ITERATIONS} iterations in While loop exceeded") | ||||||
|     return None |     return None | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue