Commit graph

11 commits

Author SHA1 Message Date
Tim Eves
a441321cf5 Newer compilers are complaining about catching std::exception derived class by value, this fixes that. 2019-01-14 09:44:43 +07:00
Tim Eves
2f2254ddca km_kbp_state_options_update should set the persisted cache copy as well. 2018-12-19 12:35:08 +07:00
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
6c98983155 Implement keyboard option saving test case 2018-12-18 10:16:59 +07:00
Tim Eves
0bf44af891 Whitespace, warnings and header tidy ups 2018-12-17 23:28:59 +07:00
Tim Eves
fbecf51a1a Refactor direct access to actions context lists with objects and smart push methods 2018-12-17 23:21:38 +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
e19cf983cb Merge branch 'master' into windows-refactor-kmprocess-for-kpapi 2018-11-26 11:56:52 +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