Sanny Builder Bug Tracker - Sanny Builder
View Issue Details
0000036Sanny Builder[All Projects] compilerpublic2016-04-10 19:182019-10-14 02:16
Windows 7 64bit
0000036: SannyBuilder crashes when compiling a big file.
I have extended main.scm from gta SA with approximately 60000 LOC of automatically generated code. SannyBuilder is capable of compiling the code with the following statistics: MAIN size is 728958; Largest mission: 68445; largest script 35122.

When I increase the size of additional code, for example 70000 LOC, then I get the following crash:

"Sanny Builder 3 - application error: Access violation at address 00405474 in module 'sanny.exe'. Read of address 000000C7."
The main.txt with the extended code can be downloaded here: [^]

The extended code has been generated using this Python script:

def generatedFileWithStatements():
    outfile = open(pathToMain + "\\statements.txt",'w')
    outfile.write("//This file was generated to test the size of main.scm that SannyBuilder can compile.\n")
    for i in range(0,70000):
        #outfile.write('0662: write_debug_message "Test %d"\n'%i)
        outfile.write('0004: $1515 = %d\n'%i)
        if j>500:
            outfile.write('0001: wait 0 \n')


And is added to main.txt using {$INCLUDE statements.txt} before Mission 0.

Please note, the problem occurs also when the maximum size of each mission is not execeeded. For this simply use a smaller number of statements in the Python loop (e.g. 30000) and add {$INCLUDE statements.txt} in several missions. Now the size of the missions is not too big, but the compiler still crashes.
Please help, because this issue is an urgent problem for me. I want to compile a main.scm which is much bigger than the normal main.scm from GTA SA. The reason is that I'm merging the main.scm from SA, VC, and LC into one using some advanced SCM refactoring tools that I'm developing. Using fastman92limitadjuster the game will be able to handle the code at runtime. The problem is really that SB cannot compile it.

I have reported this issue already here: [^]
No tags attached.
Issue History
2016-04-10 19:18goodidea82New Issue
2016-04-10 19:18goodidea82Statusnew => assigned
2016-04-10 19:18goodidea82Assigned To => Seemann
2016-04-27 23:23goodidea82Note Added: 0000038
2017-04-09 22:24goodidea82Note Added: 0000039
2017-04-10 22:11SeemannNote Added: 0000040
2017-04-10 22:11SeemannStatusassigned => confirmed
2017-04-11 20:42goodidea82Note Added: 0000041
2019-09-24 01:08SeemannNote Added: 0000053
2019-09-24 01:08SeemannStatusconfirmed => acknowledged
2019-10-14 02:16SeemannStatusacknowledged => resolved
2019-10-14 02:16SeemannFixed in Version => 3.3.2

2016-04-27 23:23   
Sorry for the mess with multiple copies of this bug report.
2017-04-09 22:24   
Updated link: [^]
2017-04-10 22:11   
Bug is reproducible on v3.2.2 with the given file. Program crashes when trying to sort labels collected during the compilation process.

I assume it's something with an index out of range corrupts the memory in the sorter routine but at the moment I can't find the exact reason. The bug is floating.
2017-04-11 20:42   
Thanks for looking into it.
2019-09-24 01:08   
the issue caused by memory overflow due to a limit set to 4194304 bytes of code