mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 21:51:50 +00:00 
			
		
		
		
	Add cgi.closelog() function to close the log file
This commit is contained in:
		
							parent
							
								
									f64f9e9ec1
								
							
						
					
					
						commit
						d33344a030
					
				
					 3 changed files with 13 additions and 8 deletions
				
			
		
							
								
								
									
										11
									
								
								Lib/cgi.py
									
										
									
									
									
								
							
							
						
						
									
										11
									
								
								Lib/cgi.py
									
										
									
									
									
								
							|  | @ -76,7 +76,7 @@ def initlog(*allargs): | ||||||
|     send an error message). |     send an error message). | ||||||
| 
 | 
 | ||||||
|     """ |     """ | ||||||
|     global logfp, log |     global log, logfile, logfp | ||||||
|     if logfile and not logfp: |     if logfile and not logfp: | ||||||
|         try: |         try: | ||||||
|             logfp = open(logfile, "a") |             logfp = open(logfile, "a") | ||||||
|  | @ -96,6 +96,15 @@ def nolog(*allargs): | ||||||
|     """Dummy function, assigned to log when logging is disabled.""" |     """Dummy function, assigned to log when logging is disabled.""" | ||||||
|     pass |     pass | ||||||
| 
 | 
 | ||||||
|  | def closelog(): | ||||||
|  |     """Close the log file.""" | ||||||
|  |     global log, logfile, logfp | ||||||
|  |     logfile = '' | ||||||
|  |     if logfp: | ||||||
|  |         logfp.close() | ||||||
|  |         logfp = None | ||||||
|  |     log = initlog | ||||||
|  | 
 | ||||||
| log = initlog           # The current logging function | log = initlog           # The current logging function | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -155,13 +155,7 @@ def test_log(self): | ||||||
|             cgi.logfp = None |             cgi.logfp = None | ||||||
|             cgi.logfile = "/dev/null" |             cgi.logfile = "/dev/null" | ||||||
|             cgi.initlog("%s", "Testing log 3") |             cgi.initlog("%s", "Testing log 3") | ||||||
|             def log_cleanup(): |             self.addCleanup(cgi.closelog) | ||||||
|                 """Restore the global state of the log vars.""" |  | ||||||
|                 cgi.logfile = '' |  | ||||||
|                 cgi.logfp.close() |  | ||||||
|                 cgi.logfp = None |  | ||||||
|                 cgi.log = cgi.initlog |  | ||||||
|             self.addCleanup(log_cleanup) |  | ||||||
|             cgi.log("Testing log 4") |             cgi.log("Testing log 4") | ||||||
| 
 | 
 | ||||||
|     def test_fieldstorage_readline(self): |     def test_fieldstorage_readline(self): | ||||||
|  |  | ||||||
|  | @ -225,6 +225,8 @@ Core and Builtins | ||||||
| Library | Library | ||||||
| ------- | ------- | ||||||
| 
 | 
 | ||||||
|  | - Add cgi.closelog() function to close the log file. | ||||||
|  | 
 | ||||||
| - Issue #12502: asyncore: fix polling loop with AF_UNIX sockets. | - Issue #12502: asyncore: fix polling loop with AF_UNIX sockets. | ||||||
| 
 | 
 | ||||||
| - Issue #4376: ctypes now supports nested structures in a endian different than | - Issue #4376: ctypes now supports nested structures in a endian different than | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Victor Stinner
						Victor Stinner