Modify

Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

#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

Change History (8)

comment:1 follow-up: Changed 13 years ago by trancexx

Issue is introduced by revision [5885].

comment:2 in reply to: ↑ 1 Changed 13 years ago by Jpm

Replying to trancexx:

Issue is introduced by revision [5885].

In fact something else as this rev has been reverted by Jon rev 6138
perhaps the duplicate of 1485
Edited
Just forget I confuse 5825 with 5885

Last edited 13 years ago by Jpm (previous) (diff)

comment:3 follow-up: 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.

Add Comment

Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.