LiveSplit / LiveSplit/LiveSplit
Bug Report: LiveSplit won't open because I'm using a new PC Screen
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 1.9k
- Forks
- 815
- Avg merge
- 4d 17h
- Merged PRs (30d)
- 3
Description
When I try opening LiveSplit (Up-to-date), it would open, but its window doesn't display anything, it's not even offscreen, so I cannot Shift + Right Click it in the Taskbar to move it, rendering it unusable, and I receive the following error in Event Viewer whenever I open it;
> HRESULT: [0x8007001E], Module: [SharpDX.DirectInput], ApiCode: [DIERR_INPUTLOST/InputLost], Message: The system cannot read from the specified device.
>
>
> at SharpDX.Result.CheckError()
> at SharpDX.DirectInput.Device.GetDeviceData(Int32 arg0, IntPtr arg1, Int32& arg2, Int32 arg3)
> at SharpDX.DirectInput.CustomDevice`3.GetBufferedData()
> at LiveSplit.Model.Input.GamepadHook.Poll()
This is the exact same message as these two;
https://github.com/LiveSplit/LiveSplit/issues/1889
https://github.com/LiveSplit/LiveSplit/issues/2017
It seems to me the problem is recurrent without a clear fix or explanation, but I've figured why _**in my case**_ it happens;
I had tried using a Fresh Install, and yes, it gives me an usable LiveSplit again, but when I put back my "settings.cfg" file in, LiveSplit again doesn't work anymore, so I found the source of my problem.
But it goes deeper than that; before this happened, I got a new screen whose Refresh Rate is 165 Hz (it's listed as 164.999 Hz in my Display Settings), and my previous screens were 60 Hz and which were what I used all the time when I was using LiveSplit last year. The thing that happen is, without even changing "settings.cfg", if the 165 Hz Screen is my Main according to Windows' Display Settings, then LiveSplit doesn't work, however when I switch the Main Screen to my older, 60 Hz one, without having to unplug anything, then LiveSplit successfully displays its window.
My problem appears to relate to the hardware & my Config remembering my previous Main Screen.
Even if I could be using a Fresh LiveSplit if I want, that would mean I have to set my Configs manually again. Nonetheless, I felt the need to share what I had found here.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the issue with the reported settings.cfg and a 165 Hz display set as the Windows main screen, then compare it with the 60 Hz configuration. Use the Event Viewer SharpDX.DirectInput trace and LiveSplit.Model.Input.GamepadHook.Poll entry point to investigate why the window fails to display. Done means LiveSplit opens normally while preserving the existing settings.cfg.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100