Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Crashes on if 0 then in interactive mode #201

Open
Unknown6656 opened this issue May 4, 2024 · 1 comment
Open

[BUG] Crashes on if 0 then in interactive mode #201

Unknown6656 opened this issue May 4, 2024 · 1 comment
Assignees
Labels

Comments

@Unknown6656
Copy link
Owner

Bug Description

Crashes with the following stack trace:

[System.ArgumentOutOfRangeException] "Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index')":
   at System.Collections.Generic.List`1.get_Item(Int32 index)
   at Unknown6656.AutoIt3.Runtime.AU3CallFrame.get_CurrentLineContent() in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\CallFrame.cs:line 343
   at Unknown6656.AutoIt3.Runtime.AU3CallFrame.MoveToEndOf(BlockStatementType type) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\CallFrame.cs:line 644
   at Unknown6656.AutoIt3.Runtime.AU3CallFrame.<>c__DisplayClass77_0.<ProcessStatement>b__38(Variant condition) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\CallFrame.cs:line 1008
   at Unknown6656.AutoIt3.Runtime.FunctionReturnValue.<>c__DisplayClass12_0.<IfNonFatal>b__0(ValueTuple`3 t) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\FunctionReturnValue.cs:line 80
   at Unknown6656.Union`2.Case1.Match[T](Func`2 func0, Func`2 func1)
   at Unknown6656.AutoIt3.Runtime.FunctionReturnValue.IfNonFatal(Func`2 function) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\FunctionReturnValue.cs:line 80
   at Unknown6656.AutoIt3.Runtime.AU3CallFrame.<>c__DisplayClass77_0.<ProcessStatement>b__15(Match m) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\CallFrame.cs:line 1002
   at Unknown6656.Common.StringExtensions.Match[T](String input, T default, ValueTuple`2[] patterns)
   at Unknown6656.Common.StringExtensions.Match[T](String input, T default, Dictionary`2 patterns)
   at Unknown6656.AutoIt3.Runtime.AU3CallFrame.<>c__DisplayClass77_0.<ProcessStatement>b__0() in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\CallFrame.cs:line 705
   at Unknown6656.AutoIt3.Telemetry.Measure[T](TelemetryCategory category, Func`1 function) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Telemetry.cs:line 136
   at Unknown6656.AutoIt3.Runtime.AU3CallFrame.ProcessStatement(String line) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\CallFrame.cs:line 703
   at Unknown6656.AutoIt3.Runtime.AU3CallFrame.<>c__DisplayClass74_0.<ParseCurrentLine>g__TryDo|1(Func`2 func) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\CallFrame.cs:line 564
   at Unknown6656.AutoIt3.Runtime.AU3CallFrame.<>c__DisplayClass74_0.<ParseCurrentLine>b__0() in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\CallFrame.cs:line 567
   at Unknown6656.AutoIt3.Telemetry.<>c__DisplayClass19_0.<Measure>b__0() in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Telemetry.cs:line 125
   at Unknown6656.AutoIt3.Telemetry.Measure[T](TelemetryCategory category, Func`1 function) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Telemetry.cs:line 136
   at Unknown6656.AutoIt3.Telemetry.Measure(TelemetryCategory category, Action function) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Telemetry.cs:line 123
   at Unknown6656.AutoIt3.Runtime.AU3CallFrame.ParseCurrentLine() in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\CallFrame.cs:line 562
   at Unknown6656.AutoIt3.Runtime.AU3CallFrame.<>c__DisplayClass64_0.<InternalExec>b__0() in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\CallFrame.cs:line 407
   at Unknown6656.AutoIt3.Telemetry.Measure[T](TelemetryCategory category, Func`1 function) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Telemetry.cs:line 136
   at Unknown6656.AutoIt3.Runtime.AU3CallFrame.InternalExec(Variant[] args) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\CallFrame.cs:line 402
   at Unknown6656.AutoIt3.Runtime.CallFrame.<>c__DisplayClass26_0.<Execute>b__2() in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\CallFrame.cs:line 143
   at Unknown6656.AutoIt3.Telemetry.Measure[T](TelemetryCategory category, Func`1 function) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Telemetry.cs:line 136
   at Unknown6656.AutoIt3.Runtime.CallFrame.Execute(Variant[] args) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\CallFrame.cs:line 143
   at Unknown6656.AutoIt3.Runtime.AU3Thread.Call(ScriptFunction function, Variant[] args, InterpreterRunContext context) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\AU3Thread.cs:line 150
   at Unknown6656.AutoIt3.Runtime.AU3Thread.<>c__DisplayClass30_0.<Run>b__0() in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\AU3Thread.cs:line 105
   at Unknown6656.AutoIt3.Telemetry.Measure[T](TelemetryCategory category, Func`1 function) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Telemetry.cs:line 136
   at Unknown6656.AutoIt3.Runtime.AU3Thread.Run(ScriptFunction function, Variant[] args, InterpreterRunContext context) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\AU3Thread.cs:line 98
   at Unknown6656.AutoIt3.Runtime.Interpreter.Run(ScriptFunction entry_point, Variant[] args, InterpreterRunContext context) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\Interpreter.cs:line 366
   at Unknown6656.AutoIt3.Runtime.Interpreter.Run(ScannedScript script, InterpreterRunContext context) in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\Runtime\Interpreter.cs:line 390
   at Unknown6656.AutoIt3.CLI.InteractiveShell.ProcessInput() in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\CommandLineInterface\InteractiveShell.cs:line 987
   at Unknown6656.AutoIt3.CLI.InteractiveShell.HandleKeyPress() in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\CommandLineInterface\InteractiveShell.cs:line 467
   at Unknown6656.AutoIt3.CLI.InteractiveShell.MainLoop() in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\CommandLineInterface\InteractiveShell.cs:line 282
   at Unknown6656.AutoIt3.CLI.InteractiveShell.Run() in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\CommandLineInterface\InteractiveShell.cs:line 208
   at Unknown6656.AutoIt3.CLI.MainProgram.Run() in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\CommandLineInterface\MainProgram.cs:line 332
   at Unknown6656.AutoIt3.CLI.MainProgram.<>c__DisplayClass42_0.<Start>b__0() in D:\DEV\AutoIt-Interpreter\src\AutoItInterpreter\CommandLineInterface\MainProgram.cs:line 139
If you believe that this is a bug, please report it to https://github.com/Unknown6656/AutoIt-Interpreter/issues/new?assignees=Unknown6656&labels=bug&projects=Unknown6656%2F2&template=bug_report.yml&title=%5BBUG%5D+.

Steps to reproduce the Bug

  1. Run autoit3 -mi
  2. Type if 0 then
  3. Press Enter

Expected Behavior

No crash, only a syntax error message

Operating System Type

Windows, MacOS, Linux, Other POSIX compliant OS, Other non-POSIX compliant OS

Operating System Architecture

x86, x64, arm, arm64, Other

Operating System Descriptor

Microsoft Windows [Version 10.0.22631.3447]

AutoIt Interpreter Version

+-----------------+
|.. B**           |   AUTOIT3 INTERPRETER
| +*.= o          |     Written by Unknown6656, 2018 - 2024
|..==E. .         |
|.++. ..          |   https://github.com/Unknown6656/AutoIt-Interpreter/
|.o. .  .S        |
|.. .  o.         |   Version 0.12.2466.8669, c94261c5816f150e0db43bd84555b6af69cd3a15
|. +. o.o.        |   B8AAEE301592B51451FBBAF12E21BF1AC2B2C89B8F4611A556C38657220E73F4
|==oo+.+.         |
|B=*B++..         |   Use this image to compare whether two AutoIt versions are equal.
+-----------------+

Additional Information

No response

@Unknown6656 Unknown6656 self-assigned this May 4, 2024
@Unknown6656
Copy link
Owner Author

Unknown6656 commented May 4, 2024

same happens with

  • while 0Enter
  • doEnter

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: ToDo - Backlog
Development

No branches or pull requests

1 participant