mirror of
https://github.com/keymanapp/keyman.git
synced 2026-08-05 00:15:32 +00:00
chore(mac): change bitmapoffset + bitmapsize to prevent buffer problems
This commit is contained in:
parent
dd0ebc4325
commit
23c66922ce
3 changed files with 9 additions and 3 deletions
|
|
@ -303,7 +303,6 @@ KMX_DWORD mac_KMX_get_KeyVal_From_KeyCode_dk(const UCKeyboardLayout* keyboard_la
|
|||
* or else the keyval obtained from Keycode and shiftstate and caps;
|
||||
*/
|
||||
KMX_DWORD mac_KMX_get_KeyValUnderlying_From_KeyCodeUnderlying(const UCKeyboardLayout* keyboard_layout, KMX_DWORD kc_underlying, KMX_DWORD vk_ShiftState, PKMX_WCHAR deadKey) {
|
||||
PKMX_WCHAR dky = NULL;
|
||||
UInt32 isdk = 0;
|
||||
KMX_DWORD keyV;
|
||||
int caps = 0;
|
||||
|
|
@ -315,7 +314,9 @@ KMX_DWORD mac_KMX_get_KeyValUnderlying_From_KeyCodeUnderlying(const UCKeyboardLa
|
|||
|
||||
// if there was a deadkey return 0xFFFF and copy deadkey into dky; else return the keyvalue
|
||||
if (isdk != 0) {
|
||||
dky = (PKMX_WCHAR)(std::u16string(1, keyV)).c_str();
|
||||
PKMX_WCHAR dky = NULL;
|
||||
std::u16string keyVS(1, keyV);
|
||||
dky = (PKMX_WCHAR) keyVS.c_str();
|
||||
*deadKey = *dky;
|
||||
return 0xFFFF;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -285,6 +285,9 @@ LPKMX_KEYBOARD KMX_CopyKeyboard(PKMX_BYTE bufp, PKMX_BYTE base) {
|
|||
kbp->dwFlags = ckbp->dwFlags;
|
||||
kbp->dwHotKey = ckbp->dwHotKey;
|
||||
|
||||
kbp->dpBitmapOffset = ckbp->dpBitmapOffset;
|
||||
kbp->dwBitmapSize = ckbp->dwBitmapSize;
|
||||
|
||||
kbp->dpStoreArray = (LPKMX_STORE)bufp;
|
||||
bufp += sizeof(KMX_STORE) * kbp->cxStoreArray;
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,9 @@ project('mcompile', 'c', 'cpp',
|
|||
meson_version: '>=1.0')
|
||||
|
||||
# see https://github.com/keymanapp/keyman/pull/11334#issuecomment-2290784399
|
||||
add_project_arguments('-O0', language : 'cpp')
|
||||
add_project_arguments('-O1', language : 'cpp')
|
||||
|
||||
// _S2 was // add_project_arguments('-O0', language : 'cpp')
|
||||
|
||||
carbon = dependency('Carbon')
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue