Bananymous 
							
						 
						
							
								d9647868cc 
								
							 
						 
						
							
							
								
								Terminal: Fix ANSI SGR color invert  
							
							
							
						 
						
							2025-04-18 17:32:24 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4409d0f03f 
								
							 
						 
						
							
							
								
								Terminal: Implement ANSI CSI A, B, b, d, @  
							
							
							
						 
						
							2025-04-17 23:16:22 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ebd00b1eb2 
								
							 
						 
						
							
							
								
								Terminal: Implement ANSI SGR 10, 39, 49  
							
							
							
						 
						
							2025-04-17 23:15:44 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3ca0ef1583 
								
							 
						 
						
							
							
								
								LibGUI: Add copy_rect API  
							
							... 
							
							
							
							This allows moving parts of window around 
							
						 
						
							2025-04-17 23:14:46 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								88abbd90dc 
								
							 
						 
						
							
							
								
								LibC: Fix strncat  
							
							... 
							
							
							
							strncat was using strncpy internally which nullpadded dest until n bytes
were written.
also there was no terminating null byte added if src was shorter than n
bytes 
							
						 
						
							2025-04-17 23:12:40 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								bdbde25784 
								
							 
						 
						
							
							
								
								LibC: Rewrite environ handling  
							
							... 
							
							
							
							environ is only allocated on heap when you insert new variables.
environment variables are only `free`'d if they are `malloc`'d by libc 
							
						 
						
							2025-04-16 21:08:01 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ee9e941a56 
								
							 
						 
						
							
							
								
								LibC: Implement getitimer  
							
							
							
						 
						
							2025-04-15 23:35:25 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ac90800c3c 
								
							 
						 
						
							
							
								
								Kernel/LibC/DynamicLoader: Implement thread local storage  
							
							... 
							
							
							
							For some reason this does not work on 32 bit version, so it is disabled
on that platform. I'll have to look into it later to find the bug :) 
							
						 
						
							2025-04-15 23:33:39 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								08f5833ca8 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement pthread_attr_init  
							
							
							
						 
						
							2025-04-15 23:31:17 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4bcd3ed86f 
								
							 
						 
						
							
							
								
								Kernel: Start working on TLS, add SYS_{SET,GET}_TLS  
							
							
							
						 
						
							2025-04-15 23:31:17 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								254fd80088 
								
							 
						 
						
							
							
								
								DynamicLoader: Cleanup and prepare for TLS  
							
							
							
						 
						
							2025-04-15 23:31:17 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								d7e6df1e44 
								
							 
						 
						
							
							
								
								LibELF: Add definitions for ELF TLS values  
							
							
							
						 
						
							2025-04-15 23:31:17 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								36baf7b0af 
								
							 
						 
						
							
							
								
								Kernel/LibC/DynamicLoader: Update process start ABI  
							
							... 
							
							
							
							We now use SysV abi for process startup 
							
						 
						
							2025-04-15 23:05:52 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e6026cb0b8 
								
							 
						 
						
							
							
								
								DynamicLoader: Handle circular dependencies  
							
							
							
						 
						
							2025-04-15 23:05:52 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								cc2b4967ea 
								
							 
						 
						
							
							
								
								LibC: Make malloc thread safe with pthread_spinlock  
							
							
							
						 
						
							2025-04-15 23:05:52 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								cf59f89bfb 
								
							 
						 
						
							
							
								
								LibC: Rework constructor/destructor calling  
							
							... 
							
							
							
							constructors are now called in _init_libc instead of crt0
destructors are now registered with atexit() instead of called manually 
							
						 
						
							2025-04-15 23:05:52 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								066ed7e4a1 
								
							 
						 
						
							
							
								
								LibC: merge atexit and __cxa_atexit into common function  
							
							
							
						 
						
							2025-04-15 23:05:52 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4f49d60e4a 
								
							 
						 
						
							
							
								
								DynamicLoader/LibC: lazy malloc environ  
							
							... 
							
							
							
							This allows DynamicLoader to just set the value of global environ symbol
without libc needing to malloc it at startup 
							
						 
						
							2025-04-15 23:05:52 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3721dadd72 
								
							 
						 
						
							
							
								
								LibC: Make stdio and malloc initialization constructors  
							
							
							
						 
						
							2025-04-15 22:01:57 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5539d5eed0 
								
							 
						 
						
							
							
								
								LibC: Implement pthread_cleanup_{pop,push}  
							
							
							
						 
						
							2025-04-15 21:48:38 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								64002626b9 
								
							 
						 
						
							
							
								
								LibC: Add h_addr definition for hostent backwards compatibility  
							
							
							
						 
						
							2025-04-15 21:39:50 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b418683337 
								
							 
						 
						
							
							
								
								LibELF: Add definition and values for auxiliary vectors  
							
							
							
						 
						
							2025-04-15 21:31:02 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								be786be67d 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement pthread_join  
							
							
							
						 
						
							2025-04-02 12:58:39 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e85b18e206 
								
							 
						 
						
							
							
								
								LibC: Fix pthread stack alignment  
							
							
							
						 
						
							2025-04-02 12:58:39 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f32f62dfc1 
								
							 
						 
						
							
							
								
								LibC: Implement pthread_spin_* functions  
							
							
							
						 
						
							2025-04-02 12:58:39 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								28392050bf 
								
							 
						 
						
							
							
								
								LibC: Make pthread_t pid_t  
							
							
							
						 
						
							2025-04-02 12:58:39 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b9cc6063ff 
								
							 
						 
						
							
							
								
								LibC: Implement stdio FILE locking  
							
							
							
						 
						
							2025-04-02 12:58:39 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								9066e62a97 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement sched_yield  
							
							
							
						 
						
							2025-04-02 12:58:39 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5549696c3a 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement pthread_self  
							
							
							
						 
						
							2025-04-02 02:39:29 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								691c9fe8e0 
								
							 
						 
						
							
							
								
								LibC: Fix bsearch  
							
							... 
							
							
							
							bsearch had unsigned integer underflow which was UB and returned false
positives 
							
						 
						
							2025-04-02 00:03:50 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								04463675c0 
								
							 
						 
						
							
							
								
								LibC: Lock file during gets  
							
							
							
						 
						
							2025-04-01 23:26:13 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b9da6a4a5d 
								
							 
						 
						
							
							
								
								LibC: Implement getdelim and getline  
							
							
							
						 
						
							2025-04-01 23:26:13 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2ba25b4c28 
								
							 
						 
						
							
							
								
								LibC: Add non standard types/values used by ports  
							
							
							
						 
						
							2025-04-01 23:26:13 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c1618e2b5d 
								
							 
						 
						
							
							
								
								Kernel/LibC: Add basic support for pthread_{create,exit}  
							
							
							
						 
						
							2025-04-01 23:26:13 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								788f5429e1 
								
							 
						 
						
							
							
								
								LibC: Implement spec compliant abort()  
							
							
							
						 
						
							2025-04-01 23:09:30 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								d8bb0b53f8 
								
							 
						 
						
							
							
								
								LibImage: Fix PNG palette decoding  
							
							... 
							
							
							
							I was only loading third of the palette to wrong indices :D 
							
						 
						
							2025-02-12 10:09:03 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								17014bb8de 
								
							 
						 
						
							
							
								
								LibC: Fix strndup  
							
							... 
							
							
							
							I did not null terminate short strndup copies :D 
							
						 
						
							2025-01-28 22:40:06 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								7fedd94cc5 
								
							 
						 
						
							
							
								
								ln: Don't require link target to exist for symlinks  
							
							
							
						 
						
							2025-01-28 17:46:36 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								48eca3d031 
								
							 
						 
						
							
							
								
								LibC: Make libc usable with tcc  
							
							... 
							
							
							
							tcc does not provide its own stdint.h but defines everything in
stddef.h. Also tcc does not support [[noreturn]] attribute syntax. 
							
						 
						
							2025-01-28 17:27:41 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								21d3cf91a0 
								
							 
						 
						
							
							
								
								LibC: Implement some missing signal.h functions  
							
							
							
						 
						
							2025-01-28 17:27:41 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								7c57d736c6 
								
							 
						 
						
							
							
								
								Kernel/LibC: Fix dirent functions  
							
							... 
							
							
							
							dirent functions used to fail if a directory contained more than 128
files :D 
							
						 
						
							2025-01-28 17:15:11 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								cbe3f2a4ac 
								
							 
						 
						
							
							
								
								BuildSystem: Cleanup and fix cmake files  
							
							... 
							
							
							
							I now set library SONAME so i don't have to build them in build root.
Creating font now makes sure the install directory exists. This allows
building using make files.
LibC now links agains ligcc 
							
						 
						
							2025-01-28 17:11:21 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								caa8c1da90 
								
							 
						 
						
							
							
								
								LibC: Add stub implementations for set{rlimit,priority}  
							
							
							
						 
						
							2025-01-25 18:15:50 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								60bffb5f49 
								
							 
						 
						
							
							
								
								LibC: Implement `clock` in terms of `clock_gettime`  
							
							... 
							
							
							
							This allows clock to "just work" after I update clock_gettime to support
CLOCK_PROCESS_CPUTIME_ID. 
							
						 
						
							2025-01-24 19:58:44 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c6cd185cb5 
								
							 
						 
						
							
							
								
								DynamicLoader: Fix copy relocations  
							
							... 
							
							
							
							Weak symbols are now actually resolved to the same strong symbol between
shared objects and copy relocations now work! 
							
						 
						
							2025-01-24 19:23:33 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b6455e0661 
								
							 
						 
						
							
							
								
								LibC: Implement stub for clock  
							
							
							
						 
						
							2025-01-24 19:23:33 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								15021b442c 
								
							 
						 
						
							
							
								
								LibC: Fix memchr and memcmp assembly implementations  
							
							... 
							
							
							
							These functions did not work with size 0 :D 
							
						 
						
							2025-01-23 21:55:26 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								9893c90e74 
								
							 
						 
						
							
							
								
								Kernel: Remove SYS_DUP and implement it using fcntl F_DUPFD  
							
							
							
						 
						
							2025-01-17 19:29:47 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								766b8cd62e 
								
							 
						 
						
							
							
								
								LibC: Fix stdio FILE operations  
							
							... 
							
							
							
							Mixing read/write/ungetc was broken. This mostly fixes everything. There
might still be some problems that have to be fixed 
							
						 
						
							2025-01-16 14:57:58 +02:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								72059a9441 
								
							 
						 
						
							
							
								
								LibC: Redefine SEEK_* macros to match common systems  
							
							... 
							
							
							
							some ports written in assembly seem to depend on this 
							
						 
						
							2025-01-14 22:52:13 +02:00