Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						2ed3c82de0 
					 
					
						
						
							
							[common] provide debug print methods for dependent libraries to use  
						
						
						
						
					 
					
						2021-12-29 16:01:42 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						d99ec3e9c0 
					 
					
						
						
							
							[common] ringbuffer: remove exta locking and add append/consume funcs  
						
						... 
						
						
						
						As the ringbuffer is now in use for audio it makes sense to provide bulk
append and consume functions that are thread safe instead of adding
locking over all of the functions. This partially reverts the prior
commit that added the extra locking. 
						
						
					 
					
						2021-12-26 11:09:42 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						8ba4b56dba 
					 
					
						
						
							
							[common] ringbuffer: added shift and locking for thread safety  
						
						
						
						
					 
					
						2021-12-26 11:09:42 +11:00 
						 
				 
			
				
					
						
							
							
								vmfortress 
							
						 
					 
					
						
						
							
						
						7075fe2c54 
					 
					
						
						
							
							[common] time: fixed time values in nsleep  
						
						... 
						
						
						
						Time values of scientific notation replaced with expanded values
and `tv_nsec` simplified with modulo 
						
						
					 
					
						2021-11-01 20:58:42 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						affc3f51f8 
					 
					
						
						
							
							[common] rects: fix error introduced in cosmetics patch  
						
						... 
						
						
						
						`x2` and `y2` are required here as they need to operate on the original
x & y before they are clamped. Can't believe I missed this *facepalm* 
						
						
					 
					
						2021-10-26 23:35:09 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						6078b11200 
					 
					
						
						
							
							Revert "[common] rects: fix damage regression introduced in the cosmetics patch"  
						
						... 
						
						
						
						This was correct, brainfart moment 
						
						
					 
					
						2021-10-26 22:26:20 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						68a9504366 
					 
					
						
						
							
							[common] rects: fix damage regression introduced in the cosmetics patch  
						
						
						
						
					 
					
						2021-10-26 22:15:54 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						9d71655273 
					 
					
						
						
							
							[common] rects: fix return value of removeRects  
						
						
						
						
					 
					
						2021-10-24 22:22:13 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						2f0b97a487 
					 
					
						
						
							
							[common] rects: de-dup code and don't needlessly copy rect over itself  
						
						
						
						
					 
					
						2021-10-24 22:19:28 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						f69b869282 
					 
					
						
						
							
							[common] rects: cosmetics  
						
						
						
						
					 
					
						2021-10-24 22:05:30 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						bc7cbf1173 
					 
					
						
						
							
							[common] fix out by one error in rectsIntersect  
						
						
						
						
					 
					
						2021-10-24 13:31:41 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						edf1e341da 
					 
					
						
						
							
							[common] rects: fix rectIntersects  
						
						
						
						
					 
					
						2021-10-20 16:32:41 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						dca5da02a0 
					 
					
						
						
							
							[client] egl: fix undefined behaviour with zero size array  
						
						
						
						
					 
					
						2021-10-20 13:34:16 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						778d27f08a 
					 
					
						
						
							
							[common] debug: fix incorrect use of #elif defined  
						
						
						
						
					 
					
						2021-09-29 17:48:03 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						57d220a43b 
					 
					
						
						
							
							[common] open: detach xdg-open instead of waiting for it  
						
						... 
						
						
						
						Sometimes, e.g. when xdg-open has to start the browser, the xdg-open
process can stay around until the browser exits, which freezes the
client. Instead, we should not wait for xdg-open to exit.
However, we can't simply not call wait, as that would leave the
xdg-open process around as a zombie. We could turn off the SIGCHLD
handler, but that's a global solution to a local problem. Instead, we
call setsid and fork again to detach the xdg-open process as if it's a
daemon, and let init take care of the reaping process.
Co-Authored-By: Tudor Brindus <me@tbrindus.ca > 
						
						
					 
					
						2021-09-27 13:35:08 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						2aa236e1f9 
					 
					
						
						
							
							[common] options: check for realloc failure  
						
						
						
						
					 
					
						2021-09-11 10:38:07 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						43b0e80f93 
					 
					
						
						
							
							[common] ivshmem: use e.g. instead of incorrect ie for example  
						
						
						
						
					 
					
						2021-09-04 13:28:34 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						ab033d84b1 
					 
					
						
						
							
							[common] cpuinfo: handle more than 64 threads on Windows  
						
						... 
						
						
						
						The old code will not correctly report the number of threads on CPUs with
more than one processor group, i.e. when there are more than 64 logical
processors (threads). 
						
						
					 
					
						2021-09-04 13:25:24 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						ffabdd348c 
					 
					
						
						
							
							[common] cpuinfo: trim trailing whitespace from model name on Windows  
						
						
						
						
					 
					
						2021-08-31 20:57:34 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						5fc561fa63 
					 
					
						
						
							
							[common] cpuinfo: trim any trailing whitespace from CPU model  
						
						
						
						
					 
					
						2021-08-31 20:20:11 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						8514f35474 
					 
					
						
						
							
							[common] windebug: handle FormatMessage failure  
						
						
						
						
					 
					
						2021-08-31 20:14:29 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						0faafbff47 
					 
					
						
						
							
							[common] cpuinfo: implement for Windows  
						
						
						
						
					 
					
						2021-08-31 20:14:10 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						34fb2f9076 
					 
					
						
						
							
							[common] cpuinfo: implement lgDebugCPU  
						
						... 
						
						
						
						This is a helper function that can be run at startup to quickly generate
a debug print containing CPU information. 
						
						
					 
					
						2021-08-31 20:14:10 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						a6112feddb 
					 
					
						
						
							
							[common] cpuinfo: implement for linux by parsing /proc/cpuinfo  
						
						
						
						
					 
					
						2021-08-31 20:14:10 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						815aac28fb 
					 
					
						
						
							
							[common] cpuinfo: add common library  
						
						
						
						
					 
					
						2021-08-31 20:14:10 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						39e42ba735 
					 
					
						
						
							
							[common] option: change option_dump to option_dump_preset  
						
						... 
						
						
						
						This new function dumps all options marked as preset instead of dumping
individual sections. This should allow filter options to not be all grouped
into the [eglFilter] section. 
						
						
					 
					
						2021-08-30 18:32:16 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						44850f1699 
					 
					
						
						
							
							[common] option: add preset-only options that don't show up in help  
						
						
						
						
					 
					
						2021-08-30 18:21:54 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						e11246d46e 
					 
					
						
						
							
							[common] stringlist: implement item removal  
						
						
						
						
					 
					
						2021-08-30 18:21:54 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						f0beedb5ba 
					 
					
						
						
							
							[common] vector: implement item removal  
						
						
						
						
					 
					
						2021-08-30 18:21:54 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						bbd39b8185 
					 
					
						
						
							
							[common] option: implement the ability to set option values  
						
						... 
						
						
						
						This can then be used to update the options from EGL filters, and then
dumping them to files. 
						
						
					 
					
						2021-08-30 18:21:54 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						f0624ccf89 
					 
					
						
						
							
							[common] option: implement ability to dump config into ini  
						
						... 
						
						
						
						This is intended to be used for saving filter options into an ini file. 
						
						
					 
					
						2021-08-30 18:21:54 +10:00 
						 
				 
			
				
					
						
							
							
								Tudor Brindus 
							
						 
					 
					
						
						
							
						
						e22a070dd3 
					 
					
						
						
							
							[common] appstrings: add blurb for xyene  
						
						
						
						
					 
					
						2021-08-30 17:46:24 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						0c27111260 
					 
					
						
						
							
							[common] option: return NAN when float option doesn't exist  
						
						... 
						
						
						
						false is not a float value. 
						
						
					 
					
						2021-08-30 17:40:35 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						e5f2b3079e 
					 
					
						
						
							
							[common] stringlist: use vector for storage  
						
						
						
						
					 
					
						2021-08-28 19:17:15 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						e6df0acad9 
					 
					
						
						
							
							[common] vector: eliminate double allocation when possible  
						
						... 
						
						
						
						This commit creates two constructor/destructor pairs for vector:
* vector_alloc/vector_free dynamically allocates the vector itself
* vector_create/vector_destroy uses existing Vector objects 
						
						
					 
					
						2021-08-28 19:17:15 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						ba527761ef 
					 
					
						
						
							
							[common] vector: inline common operations  
						
						
						
						
					 
					
						2021-08-28 19:17:15 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						e040b88bf0 
					 
					
						
						
							
							[common] ivshmem: switch to using vectors  
						
						
						
						
					 
					
						2021-08-24 22:10:36 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						377757e743 
					 
					
						
						
							
							[common] vector: add indexed iteration modes  
						
						
						
						
					 
					
						2021-08-24 22:10:36 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						53b4b4818b 
					 
					
						
						
							
							[common] vector: allow inplace construction with vector_push  
						
						... 
						
						
						
						This makes vector_push return a pointer to the pushed element.
It also allows the user to push a NULL pointer, which means allocating the
memory for the element but do not copy anything into it. 
						
						
					 
					
						2021-08-24 22:10:36 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						07d3d6cbe7 
					 
					
						
						
							
							[common] vector: implement a clear operation  
						
						
						
						
					 
					
						2021-08-24 22:10:36 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						b71838a530 
					 
					
						
						
							
							[common] vector: allow vector_free to be used with NULL  
						
						... 
						
						
						
						This is done for consistency with free. 
						
						
					 
					
						2021-08-24 22:10:36 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						24e0343156 
					 
					
						
						
							
							[common] vector: add new data structure  
						
						
						
						
					 
					
						2021-08-22 21:36:13 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						164dd00490 
					 
					
						
						
							
							[common] rects: fix typo in rectContains  
						
						
						
						
					 
					
						2021-08-20 17:13:04 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						ccda264648 
					 
					
						
						
							
							[common] windebug: pass FORMAT_MESSAGE_IGNORE_INSERTS to FormatMessage  
						
						... 
						
						
						
						This avoids problems when the error message we are told to format contains
inserts like %1.
See https://devblogs.microsoft.com/oldnewthing/20071128-00/?p=24353  for
details (or for fun). 
						
						
					 
					
						2021-08-17 19:07:41 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						2de9e3e9be 
					 
					
						
						
							
							[common] remove all casts around malloc  
						
						
						
						
					 
					
						2021-08-16 16:26:58 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						4d907cecab 
					 
					
						
						
							
							[common] use correct argument order for calloc  
						
						... 
						
						
						
						The signature for calloc is void *calloc(size_t num, size_t size), where num
is the number of elements to allocate, and size is the size. Therefore, to
allocate a single struct, we should pass 1 for num and the size of the struct
as size.
In some places, we use the opposite order, and we should flip it. 
						
						
					 
					
						2021-08-16 16:25:59 +10:00 
						 
				 
			
				
					
						
							
							
								Tudor Brindus 
							
						 
					 
					
						
						
							
						
						1c5620ba25 
					 
					
						
						
							
							[common] use variable-relative sizeof where possible  
						
						
						
						
					 
					
						2021-08-16 16:22:55 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						c89518ead4 
					 
					
						
						
							
							[common] option: use isspace from <ctype.h>  
						
						
						
						
					 
					
						2021-08-15 18:00:52 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						b2630024a7 
					 
					
						
						
							
							[common] all: switch asserts to DEBUG_ASSERT  
						
						
						
						
					 
					
						2021-08-14 12:19:07 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						a9241f6710 
					 
					
						
						
							
							[common] debug: add DEBUG_UNREACHABLE() macro  
						
						... 
						
						
						
						This lets us mark code as unreachable and signals the compiler that this
is the case with __builtin_unreachable().
We also mark DEBUG_FATAL as unreachable. 
						
						
					 
					
						2021-08-14 12:19:07 +10:00