https://bugs.winehq.org/show_bug.cgi?id=43313
Bug ID: 43313 Summary: valgrind shows several uninitialized writes in dlls/dinput/tests/device.c Product: Wine Version: 2.12 Hardware: x86 OS: Linux Status: NEW Keywords: download, source, testcase, valgrind Severity: normal Priority: P2 Component: directx-dinput Assignee: wine-bugs@winehq.org Reporter: austinenglish@gmail.com CC: 00cpxxx@gmail.com Distribution: Gentoo
==21119== Syscall param write(buf) points to uninitialised byte(s) ==21119== at 0x424DE7F: ??? (syscall-template.S:84) ==21119== by 0x52A6DAE: JoystickWImpl_Acquire (joystick_linuxinput.c:718) ==21119== by 0x52A6F15: JoystickAImpl_Acquire (joystick_linuxinput.c:736) ==21119== by 0x48783BA: test_object_info (device.c:118) ==21119== by 0x4878BBB: enum_devices (device.c:194) ==21119== by 0x5295DD3: ??? (dinput_main.c:351) ==21119== by 0x5296011: IDirectInputAImpl_EnumDevices (dinput_main.c:419) ==21119== by 0x4878EF8: device_tests (device.c:241) ==21119== by 0x4879050: func_device (device.c:266) ==21119== by 0x48822E7: run_test (test.h:603) ==21119== by 0x4882739: main (test.h:687) ==21119== Address 0x4b0f68c is on thread 1's stack ==21119== in frame #1, created by JoystickWImpl_Acquire (joystick_linuxinput.c:684) ==21119== Uninitialised value was created by a stack allocation ==21119== at 0x52A6B64: JoystickWImpl_Acquire (joystick_linuxinput.c:684) ==21119== ==21119== Syscall param write(buf) points to uninitialised byte(s) ==21119== at 0x424DE7F: ??? (syscall-template.S:84) ==21119== by 0x52A700D: JoystickWImpl_Unacquire (joystick_linuxinput.c:762) ==21119== by 0x52A70F0: JoystickAImpl_Unacquire (joystick_linuxinput.c:774) ==21119== by 0x4878441: test_object_info (device.c:121) ==21119== by 0x4878BBB: enum_devices (device.c:194) ==21119== by 0x5295DD3: ??? (dinput_main.c:351) ==21119== by 0x5296011: IDirectInputAImpl_EnumDevices (dinput_main.c:419) ==21119== by 0x4878EF8: device_tests (device.c:241) ==21119== by 0x4879050: func_device (device.c:266) ==21119== by 0x48822E7: run_test (test.h:603) ==21119== by 0x4882739: main (test.h:687) ==21119== Address 0x4b0f68c is on thread 1's stack ==21119== in frame #1, created by JoystickWImpl_Unacquire (joystick_linuxinput.c:743) ==21119== Uninitialised value was created by a stack allocation ==21119== at 0x52A6F36: JoystickWImpl_Unacquire (joystick_linuxinput.c:743) ==21119== ==21119== Syscall param write(buf) points to uninitialised byte(s) ==21119== at 0x424DE7F: ??? (syscall-template.S:84) ==21119== by 0x52A6DAE: JoystickWImpl_Acquire (joystick_linuxinput.c:718) ==21119== by 0x52A6F15: JoystickAImpl_Acquire (joystick_linuxinput.c:736) ==21119== by 0x48785AF: test_object_info (device.c:131) ==21119== by 0x4878BBB: enum_devices (device.c:194) ==21119== by 0x5295DD3: ??? (dinput_main.c:351) ==21119== by 0x5296011: IDirectInputAImpl_EnumDevices (dinput_main.c:419) ==21119== by 0x4878EF8: device_tests (device.c:241) ==21119== by 0x4879050: func_device (device.c:266) ==21119== by 0x48822E7: run_test (test.h:603) ==21119== by 0x4882739: main (test.h:687) ==21119== Address 0x4b0f68c is on thread 1's stack ==21119== in frame #1, created by JoystickWImpl_Acquire (joystick_linuxinput.c:684) ==21119== Uninitialised value was created by a stack allocation ==21119== at 0x52A6B64: JoystickWImpl_Acquire (joystick_linuxinput.c:684) ==21119== ==21119== Syscall param write(buf) points to uninitialised byte(s) ==21119== at 0x424DE7F: ??? (syscall-template.S:84) ==21119== by 0x52A700D: JoystickWImpl_Unacquire (joystick_linuxinput.c:762) ==21119== by 0x52A70F0: JoystickAImpl_Unacquire (joystick_linuxinput.c:774) ==21119== by 0x4878683: test_object_info (device.c:136) ==21119== by 0x4878BBB: enum_devices (device.c:194) ==21119== by 0x5295DD3: ??? (dinput_main.c:351) ==21119== by 0x5296011: IDirectInputAImpl_EnumDevices (dinput_main.c:419) ==21119== by 0x4878EF8: device_tests (device.c:241) ==21119== by 0x4879050: func_device (device.c:266) ==21119== by 0x48822E7: run_test (test.h:603) ==21119== by 0x4882739: main (test.h:687) ==21119== Address 0x4b0f68c is on thread 1's stack ==21119== in frame #1, created by JoystickWImpl_Unacquire (joystick_linuxinput.c:743) ==21119== Uninitialised value was created by a stack allocation ==21119== at 0x52A6F36: JoystickWImpl_Unacquire (joystick_linuxinput.c:743) ==21119== ==21119== Syscall param write(buf) points to uninitialised byte(s) ==21119== at 0x424DE7F: ??? (syscall-template.S:84) ==21119== by 0x52A6DAE: JoystickWImpl_Acquire (joystick_linuxinput.c:718) ==21119== by 0x52A6F15: JoystickAImpl_Acquire (joystick_linuxinput.c:736) ==21119== by 0x48788F9: test_object_info (device.c:161) ==21119== by 0x4878BBB: enum_devices (device.c:194) ==21119== by 0x5295DD3: ??? (dinput_main.c:351) ==21119== by 0x5296011: IDirectInputAImpl_EnumDevices (dinput_main.c:419) ==21119== by 0x4878EF8: device_tests (device.c:241) ==21119== by 0x4879050: func_device (device.c:266) ==21119== by 0x48822E7: run_test (test.h:603) ==21119== by 0x4882739: main (test.h:687) ==21119== Address 0x4b0f68c is on thread 1's stack ==21119== in frame #1, created by JoystickWImpl_Acquire (joystick_linuxinput.c:684) ==21119== Uninitialised value was created by a stack allocation ==21119== at 0x52A6B64: JoystickWImpl_Acquire (joystick_linuxinput.c:684) ==21119== ==21119== Syscall param write(buf) points to uninitialised byte(s) ==21119== at 0x424DE7F: ??? (syscall-template.S:84) ==21119== by 0x52A700D: JoystickWImpl_Unacquire (joystick_linuxinput.c:762) ==21119== by 0x52A70F0: JoystickAImpl_Unacquire (joystick_linuxinput.c:774) ==21119== by 0x48789BD: test_object_info (device.c:166) ==21119== by 0x4878BBB: enum_devices (device.c:194) ==21119== by 0x5295DD3: ??? (dinput_main.c:351) ==21119== by 0x5296011: IDirectInputAImpl_EnumDevices (dinput_main.c:419) ==21119== by 0x4878EF8: device_tests (device.c:241) ==21119== by 0x4879050: func_device (device.c:266) ==21119== by 0x48822E7: run_test (test.h:603) ==21119== by 0x4882739: main (test.h:687) ==21119== Address 0x4b0f68c is on thread 1's stack ==21119== in frame #1, created by JoystickWImpl_Unacquire (joystick_linuxinput.c:743) ==21119== Uninitialised value was created by a stack allocation ==21119== at 0x52A6F36: JoystickWImpl_Unacquire (joystick_linuxinput.c:743) ==21119== ==21119== Syscall param write(buf) points to uninitialised byte(s) ==21119== at 0x424DE7F: ??? (syscall-template.S:84) ==21119== by 0x52A6DAE: JoystickWImpl_Acquire (joystick_linuxinput.c:718) ==21119== by 0x48783BA: test_object_info (device.c:118) ==21119== by 0x4878C4C: enum_devices (device.c:200) ==21119== by 0x5295DD3: ??? (dinput_main.c:351) ==21119== by 0x5296011: IDirectInputAImpl_EnumDevices (dinput_main.c:419) ==21119== by 0x4878EF8: device_tests (device.c:241) ==21119== by 0x4879050: func_device (device.c:266) ==21119== by 0x48822E7: run_test (test.h:603) ==21119== by 0x4882739: main (test.h:687) ==21119== Address 0x4b0f6cc is on thread 1's stack ==21119== in frame #1, created by JoystickWImpl_Acquire (joystick_linuxinput.c:684) ==21119== Uninitialised value was created by a stack allocation ==21119== at 0x52A6B64: JoystickWImpl_Acquire (joystick_linuxinput.c:684) ==21119== ==21119== Syscall param write(buf) points to uninitialised byte(s) ==21119== at 0x424DE7F: ??? (syscall-template.S:84) ==21119== by 0x52A700D: JoystickWImpl_Unacquire (joystick_linuxinput.c:762) ==21119== by 0x4878441: test_object_info (device.c:121) ==21119== by 0x4878C4C: enum_devices (device.c:200) ==21119== by 0x5295DD3: ??? (dinput_main.c:351) ==21119== by 0x5296011: IDirectInputAImpl_EnumDevices (dinput_main.c:419) ==21119== by 0x4878EF8: device_tests (device.c:241) ==21119== by 0x4879050: func_device (device.c:266) ==21119== by 0x48822E7: run_test (test.h:603) ==21119== by 0x4882739: main (test.h:687) ==21119== Address 0x4b0f6cc is on thread 1's stack ==21119== in frame #1, created by JoystickWImpl_Unacquire (joystick_linuxinput.c:743) ==21119== Uninitialised value was created by a stack allocation ==21119== at 0x52A6F36: JoystickWImpl_Unacquire (joystick_linuxinput.c:743) ==21119== ==21119== Syscall param write(buf) points to uninitialised byte(s) ==21119== at 0x424DE7F: ??? (syscall-template.S:84) ==21119== by 0x52A6DAE: JoystickWImpl_Acquire (joystick_linuxinput.c:718) ==21119== by 0x48785AF: test_object_info (device.c:131) ==21119== by 0x4878C4C: enum_devices (device.c:200) ==21119== by 0x5295DD3: ??? (dinput_main.c:351) ==21119== by 0x5296011: IDirectInputAImpl_EnumDevices (dinput_main.c:419) ==21119== by 0x4878EF8: device_tests (device.c:241) ==21119== by 0x4879050: func_device (device.c:266) ==21119== by 0x48822E7: run_test (test.h:603) ==21119== by 0x4882739: main (test.h:687) ==21119== Address 0x4b0f6cc is on thread 1's stack ==21119== in frame #1, created by JoystickWImpl_Acquire (joystick_linuxinput.c:684) ==21119== Uninitialised value was created by a stack allocation ==21119== at 0x52A6B64: JoystickWImpl_Acquire (joystick_linuxinput.c:684) ==21119== ==21119== Syscall param write(buf) points to uninitialised byte(s) ==21119== at 0x424DE7F: ??? (syscall-template.S:84) ==21119== by 0x52A700D: JoystickWImpl_Unacquire (joystick_linuxinput.c:762) ==21119== by 0x4878683: test_object_info (device.c:136) ==21119== by 0x4878C4C: enum_devices (device.c:200) ==21119== by 0x5295DD3: ??? (dinput_main.c:351) ==21119== by 0x5296011: IDirectInputAImpl_EnumDevices (dinput_main.c:419) ==21119== by 0x4878EF8: device_tests (device.c:241) ==21119== by 0x4879050: func_device (device.c:266) ==21119== by 0x48822E7: run_test (test.h:603) ==21119== by 0x4882739: main (test.h:687) ==21119== Address 0x4b0f6cc is on thread 1's stack ==21119== in frame #1, created by JoystickWImpl_Unacquire (joystick_linuxinput.c:743) ==21119== Uninitialised value was created by a stack allocation ==21119== at 0x52A6F36: JoystickWImpl_Unacquire (joystick_linuxinput.c:743) ==21119==
wine-2.12.
Note: I had a Sony DS4 plugged in via USB when the tests were run, which may be related
https://bugs.winehq.org/show_bug.cgi?id=43313
--- Comment #1 from Austin English austinenglish@gmail.com --- Also affects dlls/dinput/tests/joystick.c (looks the same to me), and dlls/dinput8/tests/device.c, which has a slightly different stacktrace:
../../../tools/runtest -q -P wine -T ../../.. -M dinput8.dll -p dinput8_test.exe.so device && touch device.ok ==27741== Syscall param write(buf) points to uninitialised byte(s) ==27741== at 0x424DE7F: ??? (syscall-template.S:84) ==27741== by 0x5CBDDAE: JoystickWImpl_Acquire (joystick_linuxinput.c:718) ==27741== by 0x5CBDF15: JoystickAImpl_Acquire (joystick_linuxinput.c:736) ==27741== by 0x4877F5D: enumeration_callback (device.c:273) ==27741== by 0x5CAEFEA: IDirectInput8AImpl_EnumDevicesBySemantics (dinput_main.c:1049) ==27741== by 0x487839A: test_action_mapping (device.c:329) ==27741== by 0x4879561: func_device (device.c:552) ==27741== by 0x487CFC4: run_test (test.h:603) ==27741== by 0x487D416: main (test.h:687) ==27741== Address 0x4b0f01c is on thread 1's stack ==27741== in frame #1, created by JoystickWImpl_Acquire (joystick_linuxinput.c:684) ==27741== Uninitialised value was created by a stack allocation ==27741== at 0x5CBDB64: JoystickWImpl_Acquire (joystick_linuxinput.c:684) ==27741==