Zinggi/UnrealScriptIDE

Script compilation fails if compiling_configurations settings only have one parameter

Closed this issue · 1 comments

To repro:

Open UnrealScriptIDE.sublime-settings and modify the following:

"Standard 32bit":
[
"Win32\UDK.com",
"-unattended"
],

to:

"Standard 32bit":
[
"Win32\UDK.com"
],

When you compile this configuration you should fail with the following error:

Exception in thread Thread-8476:
Traceback (most recent call last):
File ".\threading.py", line 532, in __bootstrap_inner
File ".\UnrealBuildSystem.py", line 489, in run
IndexError: list index out of range

Looking at the Python script it appears this is happening in the print statement as it expects multiple entries in the array or so I'm guessing since I don't know Python ;)

    print "compiling with: " + self._collector.compile_settings[0] + " and " + self._collector.compile_settings[1]

If that's the case, then I would imagine the next line of code would fail as well as it references the same array/list index.

Also, I see that the Python script appends "-unattended". Why is this necessary since you could just define this in the settings file? It seems like this should be removed.

Thanks again for all the time and effort you have put into this!

-scottv

Well my plugin assumes that this array has 2 entries. Fewer enteries makes no sense anyway, you probably just want to do:
"name": ["Path", ""]

Basically this setting should be a tuple, but json can't store tuples, so I used an array instead.
I thought that was clear given the comment above this setting:
"Please fallow the given structure carefully. "name": ["Path", "-YourSettings"]"

"Also, I see that the Python script appends "-unattended". Why is this necessary since you could just define this in the settings file? It seems like this should be removed."

It did append -unattended maybe two weeks ago, but it doesn't append it anymore based on your last suggestion.
You probalby mean this line:

args = " /C " + self.exe_path + " " + args  # + " -unattended"

but the + " -unattended" is commented out.