Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #4803

    Vlad
    Member

    This macro:

    #language="Python"
    Window.alert('ok')

    results in error after successful alert display:

    Traceback (most recent call last):
    File "<Script Block >", line 2, in <module>
    d
    NameError: name 'd' is not defined

    The macro file has Windows line endings and ends with a single newline (rn).

    There is no error if the macro ends with two newlines.
    If the macro has three newlines at the end, the error is:

    Traceback (most recent call last):
    File "<Script Block >", line 4, in <module>
    c
    NameError: name 'c' is not defined

    Convert the last macro to Unix line endings. It ends with 3 newlines (n). Error:

    Traceback (most recent call last):
    File "<Script Block >", line 4, in <module>
    d
    NameError: name 'd' is not defined
    #4811

    Yutaka Emura
    Keymaster

    Vlad wrote:
    This macro:

    #language="Python"
    Window.alert('ok')

    results in error after successful alert display:

    Traceback (most recent call last):
    File "<Script Block >", line 2, in <module>
    d
    NameError: name 'd' is not defined

    The macro file has Windows line endings and ends with a single newline (rn).

    There is no error if the macro ends with two newlines.
    If the macro has three newlines at the end, the error is:

    Traceback (most recent call last):
    File "<Script Block >", line 4, in <module>
    c
    NameError: name 'c' is not defined

    Convert the last macro to Unix line endings. It ends with 3 newlines (n). Error:

    Traceback (most recent call last):
    File "<Script Block >", line 4, in <module>
    d
    NameError: name 'd' is not defined

    Is this a new bug only in version 7, or existed from version 6?

    #4812

    Vlad
    Member

    This is a new bug only in version 7.
    My actual script, which was ok with version 6, looks like this:

    #language="Python"
    if 0:
    pass
    else:
    Window.alert('ok')


    It has windows line endings and ends with 3 newlines

    Now this gives error message:
    invalid syntax
    Line 8

    Line 8 is the end of file. Remove the last line and it runs fine. Other variations of the number of trailing line endings and indents give errors similar to the first post. This is quite mysterious.

    #4819

    Yutaka Emura
    Keymaster

    Vlad wrote:
    This is a new bug only in version 7.
    My actual script, which was ok with version 6, looks like this:

    #language="Python"
    if 0:
    pass
    else:
    Window.alert('ok')


    It has windows line endings and ends with 3 newlines

    Now this gives error message:
    invalid syntax
    Line 8

    Line 8 is the end of file. Remove the last line and it runs fine. Other variations of the number of trailing line endings and indents give errors similar to the first post. This is quite mysterious.

    I reproduced this bug, and it will be fixed on beta 20. There was a bug where dealing with the end of file in macros. Thanks!

Viewing 4 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic.

Share with friends... Tweet about this on TwitterShare on FacebookShare on Google+Email this to someone