mirror of
				https://github.com/RGBCube/serenity
				synced 2025-10-31 13:32:45 +00:00 
			
		
		
		
	 6838333f76
			
		
	
	
		6838333f76
		
	
	
	
	
		
			
			Rather than finding apps that benefit from time zone awareness one-by- one, and calling tzset in their serenity_main, let's do it in LibMain.
		
			
				
	
	
		
			37 lines
		
	
	
	
		
			861 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			37 lines
		
	
	
	
		
			861 B
		
	
	
	
		
			C++
		
	
	
	
	
	
| /*
 | |
|  * Copyright (c) 2021, Andreas Kling <kling@serenityos.org>
 | |
|  *
 | |
|  * SPDX-License-Identifier: BSD-2-Clause
 | |
|  */
 | |
| 
 | |
| #include <AK/Format.h>
 | |
| #include <AK/StringView.h>
 | |
| #include <AK/Vector.h>
 | |
| #include <LibMain/Main.h>
 | |
| #include <string.h>
 | |
| #include <time.h>
 | |
| 
 | |
| int main(int argc, char** argv)
 | |
| {
 | |
|     tzset();
 | |
| 
 | |
|     Vector<StringView> arguments;
 | |
|     arguments.ensure_capacity(argc);
 | |
|     for (int i = 0; i < argc; ++i)
 | |
|         arguments.unchecked_append(argv[i]);
 | |
| 
 | |
|     auto result = serenity_main({
 | |
|         .argc = argc,
 | |
|         .argv = argv,
 | |
|         .strings = arguments.span(),
 | |
|     });
 | |
|     if (result.is_error()) {
 | |
|         auto error = result.release_error();
 | |
|         warnln("\033[31;1mRuntime error\033[0m: {}", error);
 | |
| #ifdef __serenity__
 | |
|         dbgln("\033[31;1mExiting with runtime error\033[0m: {}", error);
 | |
| #endif
 | |
|         return 1;
 | |
|     }
 | |
|     return result.value();
 | |
| }
 |