Tim Eves
da815eb92e
Fix use-after0free in abstract_processor::lookup_option() design
...
Since option was not assigned to non temporary storage the string was deleted and caused the API to return freed memory.
2018-12-19 12:15:24 +07:00
Tim Eves
f8f1407fb8
Rfactor options out of class state into virtual methods on abstract_processor
2018-12-19 11:20:28 +07:00
Tim Eves
18ce72e7c8
Refactor keyboard processor initialisation code.
...
Turn the keyboard class backing the km_kbp_keyboard and km_kbp_keyboard_attr objects into just keyboard_attributes.
Move the abstract_processor and sublcasses as the objects that back km_kbp_keyboard and make keyboard_attrs a member of the asbtract_processor.
Move kmx_processor and mock_processor declarations into their own headers.
Make all vector<km_kbp_option_item> into vector<option> to handle memory management, moving and copying correctly.
Update test cases accordingly
2018-12-17 06:02:22 +07:00
Marc Durdin
9c460e680d
[common] Resolve g++ warnings
2018-11-24 12:31:54 +11:00
Marc Durdin
50e5a0d3b4
[common] renaming and cleanup
2018-11-24 12:04:09 +11:00
Marc Durdin
aa418517f0
[common] Address review comment -- move kmx processor into km::kbp::kmx namespace
2018-11-24 11:51:35 +11:00
Marc Durdin
b99cd600f6
[common] Full support for environment. Some refactoring of how environment options are set
2018-11-23 10:12:11 +11:00
Marc Durdin
37f424f090
[common] Working options model. Introduces some gunk around state and options which should be reviewed with TSE
2018-11-20 12:19:43 +11:00
Marc Durdin
09620cb311
[common] Basic options functionality (rework to match api model)
2018-11-20 10:00:29 +11:00
Marc Durdin
bb9a8fb5ee
[common] Resolve some Linux build errors
2018-11-19 06:39:22 +11:00
Marc Durdin
646c322b4c
[Common] First kmx test case (currently fails, as it should) and KMX integration started
2018-11-16 11:12:56 +11:00
Marc Durdin
ac4448f350
[Common] Refactor KPAPI to support multiple processors (kmx, mock, ldml?)
2018-11-14 11:58:44 +11:00