diff options
author | 2024-03-07 03:10:27 +1100 | |
---|---|---|
committer | 2024-03-07 03:10:27 +1100 | |
commit | 2c40cf660e2c69e6856d182fed1ce15338f45b91 (patch) | |
tree | e962e91ececea0d87f728aa1f8ee5746f7f450d0 /src/osd/modules/input/input_rawinput.cpp | |
parent | 9fa38080b16f1298de1029906f0affbdffbe6de6 (diff) |
-input/input_rawinput.cpp: Properly align buffers for RAWINPUT header
-jaleco/megasys1.cpp: Clarified comment about MCU program used for chimerab.
Diffstat (limited to 'src/osd/modules/input/input_rawinput.cpp')
-rw-r--r-- | src/osd/modules/input/input_rawinput.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/osd/modules/input/input_rawinput.cpp b/src/osd/modules/input/input_rawinput.cpp index 3b5491fd09d..d6b99649c4a 100644 --- a/src/osd/modules/input/input_rawinput.cpp +++ b/src/osd/modules/input/input_rawinput.cpp @@ -608,7 +608,7 @@ private: //============================================================ -// rawinput_module - base class for rawinput modules +// rawinput_module - base class for RawInput modules //============================================================ class rawinput_module : public wininput_module<rawinput_device> @@ -726,9 +726,9 @@ protected: { HRAWINPUT const rawinputdevice = *static_cast<HRAWINPUT *>(eventdata); - BYTE small_buffer[4096]; + union { RAWINPUT r; BYTE b[4096]; } small_buffer; std::unique_ptr<BYTE []> larger_buffer; - LPBYTE data = small_buffer; + LPVOID data = &small_buffer; UINT size; // determine the size of data buffer we need @@ -738,7 +738,7 @@ protected: // if necessary, allocate a temporary buffer and fetch the data if (size > sizeof(small_buffer)) { - larger_buffer.reset(new (std::nothrow) BYTE [size]); + larger_buffer.reset(new (std::align_val_t(alignof(RAWINPUT)), std::nothrow) BYTE [size]); data = larger_buffer.get(); if (!data) return false; @@ -843,7 +843,7 @@ protected: //============================================================ -// keyboard_input_rawinput - rawinput keyboard module +// keyboard_input_rawinput - RawInput keyboard module //============================================================ class keyboard_input_rawinput : public rawinput_module @@ -870,7 +870,7 @@ protected: //============================================================ -// mouse_input_rawinput - rawinput mouse module +// mouse_input_rawinput - RawInput mouse module //============================================================ class mouse_input_rawinput : public rawinput_module @@ -897,7 +897,7 @@ protected: //============================================================ -// lightgun_input_rawinput - rawinput lightgun module +// lightgun_input_rawinput - RawInput lightgun module //============================================================ class lightgun_input_rawinput : public rawinput_module |