Geoffrey McRae
3a8cb6a613
[client/common] fixes for issues detected through static analysis.
2022-03-07 10:14:52 +11:00
Geoffrey McRae
35bf30910b
Revert "[common] option: fix bounds check in the argument parser."
...
This reverts commit db78c8e468
.
I need some sleep, this was already fine as it was...
2022-01-30 20:25:02 +11:00
Geoffrey McRae
db78c8e468
[common] option: fix bounds check in the argument parser.
...
The recent `pwnkit` exploit brought this to my attention, not that we
are a setuid process we should still do this properly... who knows where
this code might get used in the future.
2022-01-30 19:56:06 +11:00
Geoffrey McRae
952ebea2c5
[all] refresh copyright dates
2022-01-05 19:42:46 +11:00
Geoffrey McRae
2aa236e1f9
[common] options: check for realloc failure
2021-09-11 10:38:07 +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
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
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
2de9e3e9be
[common] remove all casts around malloc
2021-08-16 16:26:58 +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
Geoffrey McRae
e41cbf5f32
[common] option: option_get_float should return a float
2021-08-10 01:36:12 +10:00
Geoffrey McRae
88eada3494
[common] option: add support for float option types
2021-08-10 01:09:40 +10:00
Quantum
51b9cd4e5a
[all] copyright: use unicode copyright sign ©
...
This is done for consistency with the license strings in appstrings.c.
2021-08-04 21:16:35 +10:00
Quantum
1104bd821b
[common] option: make options case insensitive
...
It is not obvious that [DXGI] and [dxgi] are different sections in the ini file,
and only the latter works. We should just eliminate the difference.
2021-07-31 15:00:49 +10:00
Quantum
7300d00f66
[common] option: handle ini lines without trailing newline
...
Before, if the last line of an ini file has no trailing \n, it is ignored.
This commit changes the parser to process such lines.
2021-06-07 18:22:19 +10:00
Geoffrey McRae
21d86dd31d
[common] option: prevent ascii filter from eating newlines
2021-06-07 11:29:17 +10:00
Geoffrey McRae
44bff58aa8
[common] option: ignore non-typeable ascii characters
...
Under windows text editors like to default to saving in UTF8 with a byte
order mask prefix preventing proper parsing of any option that is on the
first line of the file. Since the configuration file is only intended to
be plain ascii this change ignores all non-ascii characters solving this
issue.
2021-06-07 11:25:35 +10:00
Quantum
24d0aa0c18
[all] normalize copyright on all source files
2021-06-06 11:53:05 +10:00
Jonathan Rubenstein
c6d7fb8dd0
[common] option: Reformat help and support rST tables
...
Corners of table have '+' added, and adds new command line flag --rst-help,
which adds some extra formatting to the make it an rST compliant table for the
in-line docs.
2021-05-06 22:32:36 +10:00
Geoffrey McRae
4c1893fe20
[all] fix numerous memory leaks at application shutdown
2021-01-24 21:47:53 +11:00
Tudor Brindus
a46a3a2668
[all] use explicit void parameter lists
...
This makes it a compile-time error to call a function that semantically
takes no parameters with a nonzero number of arguments.
Previously, such code would still compile, but risk blowing up the stack
if a compiler chose to use something other than caller-cleanup calling
conventions.
2021-01-14 17:29:37 +11:00
Geoffrey McRae
c7aa8871e4
[common] fixed improper comment parsing, fixes #233
2020-01-21 16:35:21 +11:00
Geoffrey McRae
6aeafc6651
[common] add comment support to the ini parser
2020-01-12 22:44:41 +11:00
Geoffrey McRae
22f04a926f
[common] numerious bad usage bug fixes
2020-01-10 18:04:22 +11:00
Geoffrey McRae
438e9e0969
[common] option: fixed missing null terminator
2019-05-27 01:56:55 +10:00
Geoffrey McRae
db0d966102
[common] option: add debug errors for invalid options
2019-05-21 14:58:11 +10:00
Geoffrey McRae
a29639fceb
[common] option: fix another invalid usage of an unset variable
2019-05-21 13:24:28 +10:00
Geoffrey McRae
0605b7df8c
[common] option: allow short options to toggle boolean values
2019-05-21 12:58:53 +10:00
Geoffrey McRae
51ca08719e
[common] option: trim whitespace from option names and values
2019-05-21 12:34:41 +10:00
Geoffrey McRae
ce9b94e93d
[common] option: fix crash on failure to parse invalid config file
2019-05-21 12:28:13 +10:00
Geoffrey McRae
7cc0f7cb99
[common] option: fix incorrect column header padding
2019-05-21 11:38:40 +10:00
Geoffrey McRae
06c229dfd4
[common] option: fix invalid access of null/invalid options
2019-05-21 11:34:50 +10:00
Geoffrey McRae
2d5f6d65ce
[common] option: added shortopt support and pretty help print
2019-05-21 11:31:31 +10:00
Geoffrey McRae
a7daeb2a12
[c-host] option: fix memory corruption due to usage of old pointers
2019-05-17 09:25:57 +10:00
Geoffrey McRae
2fe9dc7ca1
[common] track if option set failed and print help if so
2019-05-12 16:51:37 +10:00
Geoffrey McRae
e22f33a44b
[common] add getValues callback for options
2019-05-12 16:13:50 +10:00
Geoffrey McRae
538a6dc08e
[common] rework option API to allow for custom types
2019-05-11 20:58:49 +10:00
Geoffrey McRae
5b199d8f25
[common] make local struct local
2019-05-11 19:07:10 +10:00
Geoffrey McRae
785bc33192
[common] added config file loading capability
2019-05-11 18:22:01 +10:00
Geoffrey McRae
cf030f6f0c
[common] remove "Option" from the option help output
2019-05-11 11:51:29 +10:00
Geoffrey McRae
823164a924
[common] further option help cleanup
2019-05-11 11:50:26 +10:00
Geoffrey McRae
86c7286aad
[common] seperate validator and clean up output
2019-05-11 11:35:17 +10:00
Geoffrey McRae
32d5f1db85
[common] validate all options including defaults
2019-05-11 11:21:00 +10:00
Geoffrey McRae
53ade56b4e
[common] fix option parser memory leak
2019-05-09 23:05:33 +10:00
Geoffrey McRae
247e92937c
[common] match the correct option
2019-05-09 22:47:48 +10:00
Geoffrey McRae
e7345b9711
[c-host] initial agnostic option api and parser
2019-05-09 22:06:58 +10:00