Use with open(filePath) as f: instead of f = open(filePath) in search.py
				
					
				
			This commit is contained in:
		| @@ -15,20 +15,19 @@ searchOnlyCaptions = pathSearchMessageParts[0] == 'search-only-captions' | |||||||
| clientFilePath = f'users/{clientId}.txt' | clientFilePath = f'users/{clientId}.txt' | ||||||
|  |  | ||||||
| def write(s): | def write(s): | ||||||
|     f = open(clientFilePath, 'r+') |     with open(clientFilePath, 'r+') as f: | ||||||
|     try: |         try: | ||||||
|         fcntl.flock(f, fcntl.LOCK_EX) |             fcntl.flock(f, fcntl.LOCK_EX) | ||||||
|         # If the output file is empty, then it means that `websocket.php` read it. Anyway we don't wait it and we append what we want to output. |             # If the output file is empty, then it means that `websocket.php` read it. Anyway we don't wait it and we append what we want to output. | ||||||
|         read = f.read() |             read = f.read() | ||||||
|         # We are appening content, as we moved in-file cursor. |             # We are appening content, as we moved in-file cursor. | ||||||
|         if read != '': |             if read != '': | ||||||
|             f.write("\n") |                 f.write("\n") | ||||||
|         f.write(s) |             f.write(s) | ||||||
|         f.flush() |             f.flush() | ||||||
|         fcntl.flock(f, fcntl.LOCK_UN) |             fcntl.flock(f, fcntl.LOCK_UN) | ||||||
|         f.close() |         except Exception as e: | ||||||
|     except Exception as e: |             sys.exit(e) | ||||||
|         sys.exit(e) |  | ||||||
|  |  | ||||||
| def cleanCaption(caption): | def cleanCaption(caption): | ||||||
|     return caption.replace('\n', ' ') |     return caption.replace('\n', ' ') | ||||||
| @@ -69,17 +68,15 @@ for fileIndex, file in enumerate(files): | |||||||
|                         write(toWrite) |                         write(toWrite) | ||||||
|                         break |                         break | ||||||
|  |  | ||||||
| f = open(clientFilePath) | with open(clientFilePath) as f: | ||||||
| while True: |     while True: | ||||||
|     try: |         try: | ||||||
|         fcntl.flock(f, fcntl.LOCK_EX) |             fcntl.flock(f, fcntl.LOCK_EX) | ||||||
|         if f.read() == '': |             if f.read() == '': | ||||||
|             os.remove(clientFilePath) |                 os.remove(clientFilePath) | ||||||
|             break |                 break | ||||||
|         else: |             else: | ||||||
|             fcntl.flock(f, fcntl.LOCK_UN) |                 fcntl.flock(f, fcntl.LOCK_UN) | ||||||
|             time.sleep(1) |                 time.sleep(1) | ||||||
|     except Exception as e: |         except Exception as e: | ||||||
|         sys.exit(e) |             sys.exit(e) | ||||||
|  |  | ||||||
| f.close() |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user