Announcement

Collapse
No announcement yet.

Switch Layer OutOfRangeException crash

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Switch Layer OutOfRangeException crash

    Hey all.

    I just came across an issue and figured out the cause and thought I'd post it here, though due to time restraints I've not been able to do much research as to what I might have to include with a bug report such as this.

    Today I added a 5th Shift Layer and found that pressing the button, the processes in the tray crashed. And whether I had 5 or 6 layers, anything outside of the first 4 would crash the tray processes.

    The Event Viewer gave me:
    Application: reWASDEngine.exe
    Framework Version: v4.0.30319
    Description: The process was terminated due to an unhandled exception.
    Exception Info: System.ArgumentOutOfRangeException
    at System.ThrowHelper.ThrowArgumentOutOfRangeExceptio n(System.ExceptionArgument, System.ExceptionResource)
    at XBEliteWPF.Infrastructure.LED.ILEDSettingsPerColle ctionContainerExtensions.GetShiftSettings(XBEliteW PF.Infrastructure.LED.ILEDSettingsPerCollectionCon tainer, Int32)
    at XBEliteWPF.Services.LEDService+<ApplyLEDsToControl lerAccordingToSettings>d__12.MoveNext()
    at System.Runtime.CompilerServices.TaskAwaiter.ThrowF orNonSuccess(System.Threading.Tasks.Task)
    at System.Runtime.CompilerServices.TaskAwaiter.Handle NonSuccessAndDebuggerNotification(System.Threading .Tasks.Task)
    at XBEliteWPF.Services.EventProcessor+<ProcessLEDReac tionRequiredCommand>d__19.MoveNext()
    at System.Runtime.CompilerServices.AsyncMethodBuilder Core+<>c.<ThrowAsync>b__6_0(System.Object)
    at System.Windows.Threading.ExceptionWrapper.Internal RealCall(System.Delegate, System.Object, Int32)
    at System.Windows.Threading.ExceptionWrapper.TryCatch When(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
    at System.Windows.Threading.DispatcherOperation.Invok eImpl()
    at System.Windows.Threading.DispatcherOperation.Invok eInSecurityContext(System.Object)
    at MS.Internal.CulturePreservingExecutionContext.Call backWrapper(System.Object)
    at System.Threading.ExecutionContext.RunInternal(Syst em.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
    at System.Threading.ExecutionContext.Run(System.Threa ding.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
    at System.Threading.ExecutionContext.Run(System.Threa ding.ExecutionContext, System.Threading.ContextCallback, System.Object)
    at MS.Internal.CulturePreservingExecutionContext.Run( MS.Internal.CulturePreservingExecutionContext, System.Threading.ContextCallback, System.Object)
    at System.Windows.Threading.DispatcherOperation.Invok e()
    at System.Windows.Threading.Dispatcher.ProcessQueue()
    at System.Windows.Threading.Dispatcher.WndProcHook(In tPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
    at MS.Win32.HwndWrapper.WndProc(IntPtr, Int32, IntPtr, IntPtr, Boolean ByRef)
    at MS.Win32.HwndSubclass.DispatcherCallbackOperation( System.Object)
    at System.Windows.Threading.ExceptionWrapper.Internal RealCall(System.Delegate, System.Object, Int32)
    at System.Windows.Threading.ExceptionWrapper.TryCatch When(System.Object, System.Delegate, System.Object, Int32, System.Delegate)
    at System.Windows.Threading.Dispatcher.LegacyInvokeIm pl(System.Windows.Threading.DispatcherPriority, System.TimeSpan, System.Delegate, System.Object, Int32)
    at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr, Int32, IntPtr, IntPtr)
    at MS.Win32.UnsafeNativeMethods.DispatchMessage(Syste m.Windows.Interop.MSG ByRef)
    at System.Windows.Threading.Dispatcher.PushFrameImpl( System.Windows.Threading.DispatcherFrame)
    at System.Windows.Threading.Dispatcher.PushFrame(Syst em.Windows.Threading.DispatcherFrame)
    at System.Windows.Application.RunDispatcher(System.Ob ject)
    at System.Windows.Application.RunInternal(System.Wind ows.Window)
    at System.Windows.Application.Run(System.Windows.Wind ow)
    at reWASDEngine.Engine.Main()
    Since it mentioned LEDs I looked around and in the Settings. Under LED Settings found the option "Enable LED on Remap and Shift changing" and disabled it. This fixed the problem and I no longer experience the crash. Its weird that I got an issue about LEDs because my controller is not an Elite but a simple Xbox Series X | S.

    I'm gonna assume as the preferences menu only takes the LED options for the default 5 layers (default + 4 switch layers) into account, and whenever you access a 6th and beyond, it attempts to check which LED "effect" to apply and throws an out of range exception?

    Either way! The crash happened on both the LB button and Share button, I've tried to attach what I did to fix the problem at least temporarily and attached the generated logs. I figured it was worth reporting it in case anyone was having the same issue.
    Attached Files

  • #2
    Thanks for your observation. We will check this on our side and let you know if we find a solution or another reason why this could happen.

    Comment


    • #3
      I'm kindly asking you to collect more logs. Please follow the steps below:
      1. Exit reWASD from tray agent
      2. Download and start this registry-file to enable reWASD logging.
      3. Open reWASD again
      4. Wait a bit while it tries to initialize the devices and your license info
      5. Exit reWASD from the tray agent again
      6. Open File explorer, go to C:\Users\Public\Documents\reWASD\Logs folder and send us its contents ('reWASD engine TextTrace' text file would be the most important)
      7. Download and start this registry-file to stop reWASD from logging.‚Äč

      Comment


      • #4
        I'll try and get this done today. Thank you for the instructions!

        Comment


        • #5
          Originally Posted by 1ncorrect View Post
          Thanks for your observation. We will check this on our side and let you know if we find a solution or another reason why this could happen.
          There we go, sorry for the delay. I reverted the initial disabling of the "LED on Remap and Shift changing" I did to circumvent it from crashing before doing the logging. Not sure if that was a needed step or not but thought I'd do it just in case.

          I hope this helps!
          Attached Files

          Comment


          • #6
            Hello! The crash of the engine process is not visible in the log. Please try to record the issue on video if possible.

            Comment


            • #7
              Oh, my apologies! I wasn't sure if I had to recreate the crash or not, or if that would interrupt the logging process. I've caused it to crash and included the new logs. Let me know if you still need a recording of it happening.
              Attached Files

              Comment


              • #8
                Video is not required, as we were able to reproduce this issue on our side.

                Thank you!

                Comment

                Working...
                X