#2073 closed Bug (Fixed)
ContinueLoop crashes script if nothing to jump
Reported by: | Melba23 | Owned by: | trancexx |
---|---|---|---|
Milestone: | 3.3.9.0 | Component: | AutoIt |
Version: | 3.3.8.0 | Severity: | None |
Keywords: | ContinueLoop | Cc: |
Description (last modified by Melba23)
Using ContinueLoop without a following statement to jump over to reach Next crashes AutoIt with:
"ContinueLoop" statement with no matching "While", "Do" or "For" statement.:
The Help file states:
ContinueLoop will continue execution of the loop at the expression testing statement (that is the While, Until or Next statement).
Code:
; Works For $i = 1 To 3 If $i = 2 Then ContinueLoop EndIf Next ; Works For $i = 1 To 3 If $i = 2 Then ContinueLoop Sleep(10) Next ; Crashes For $i = 1 To 3 If $i = 2 Then ContinueLoop Next
Au3Check passes all 3 versions. I realise the final loop is badly coded, but I feel it should not crash AutoIt.
According to the original thread http://www.autoitscript.com/forum/topic/135947-bug/
it does not crash in v3.3.6.1.
M23
Attachments (0)
Change History (8)
comment:1 follow-up: ↓ 2 Changed 13 years ago by trancexx
comment:2 in reply to: ↑ 1 Changed 13 years ago by Jpm
comment:3 follow-up: ↓ 8 Changed 13 years ago by jchd
Another instance of a highly related issue:
{{{#include <GuiListView.au3>
#include <SQLite.au3>}}}
due to the "final" ExitLoop at line 7112 of first include.
Temporary ugly workaround seems to work: insert dummy instruction after offending ExitLoop, ContinueLoop, ContinueCase, like "Local $Dummy".
comment:4 Changed 13 years ago by trancexx
- Milestone set to 3.3.9.0
- Owner set to trancexx
- Resolution set to Fixed
- Status changed from new to closed
Fixed by revision [6668] in version: 3.3.9.0
comment:5 Changed 13 years ago by Melba23
- Description modified (diff)
comment:6 Changed 13 years ago by Melba23
- Description modified (diff)
comment:7 Changed 13 years ago by Melba23
- Description modified (diff)
comment:8 in reply to: ↑ 3 Changed 13 years ago by BrewManNH
Replying to jchd:
Another instance of a highly related issue:
{{{#include <GuiListView.au3>
#include <SQLite.au3>}}}
due to the "final" ExitLoop at line 7112 of first include.
Temporary ugly workaround seems to work: insert dummy instruction after offending ExitLoop, ContinueLoop, ContinueCase, like "Local $Dummy".
I tested this by adding a line after line #7114 in GUIListView.au3, I just put $hWnd += 1 in that line, and this error went away. I'm not sure if it's related to the issue with ContinueLoop or not but it seems similar.
Guidelines for posting comments:
- You cannot re-open a ticket but you may still leave a comment if you have additional information to add.
- In-depth discussions should take place on the forum.
For more information see the full version of the ticket guidelines here.
Issue is introduced by revision [5885].