ID:104744
 
BYOND Version:479
Operating System:Windows 7 Pro 64-bit
Web Browser:Firefox 3.6.12
Applies to:Dream Maker
Status: Deferred

This issue may be low priority or very difficult to fix, and has been put on the back burner for the time being.
Descriptive Problem Summary:
After a few times compiling GOA in DM, it appears to go insane and start throwing random errors.

I've tested my RAM a few times since this started happening and it doesn't seem to be unstable, and it only occurs when compiling from within DreamMaker, using dm.exe never has errors.

The error that shows up varies, but usually something like this:

(random included code file):(random line):error: /textlength/_dm_icon_getpixel/ //////////////////////////////////////////////////////////// client//////////UnrealHospital//textlength//textlength/ //////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////// tv1//fridge_top//Window//ch//ch//ch//ch//sideltop/silent/ sps//sps//sps//sps//sps//sps//sps//sps//WillFit// Supplyscroll//Supplyscroll//Supplyscroll//Supplyscroll// Supplyscroll//Supplyscroll//Supplyscroll//

After shutting down DreamMaker when it is in this state, it crashes, here's a report from WinDbg:

First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
eax=0000005c ebx=76c79894 ecx=05795c10 edx=00000320 esi=c400884c edi=0000005c
eip=00290c9b esp=0018dacc ebp=00000000 iopl=0 nv up ei ng nz na po nc
cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010282
*** WARNING: Unable to verify checksum for C:\Program Files (x86)\BYOND\bin\byondcore.dll
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Program Files (x86)\BYOND\bin\byondcore.dll -
byondcore!DungBuilder::DungBuilder+0x1b79b:
00290c9b 8b16 mov edx,dword ptr [esi] ds:002b:c400884c=????????

Numbered Steps to Reproduce Problem:
1) Open up GOA's main file in DreamMaker
2) Work on it for a bit, while compiling
3) Somewhere around the 6th-10th time compiling watch as it starts failing for no reason.

Code Snippet (if applicable) to Reproduce Problem:


Expected Results:

Actual Results:

Does the problem occur:
Every time? Or how often? Every time I'm in DM long enough.
In other games?
In other user accounts?
On other computers?

When does the problem NOT occur?

Did the problem NOT occur in any earlier versions? If so, what was the last version that worked? (Visit http://www.byond.com/download/build to download old versions for testing.)

Workarounds:
Periodically restart DreamMaker
I've gotten this a few times myself. Seems to pop up after you've compiled the project multiple times. Definitely seems to be related to Windows 7.
This happend to me aswell.
Destroy, I haven't seen this issue occur yet, but I'll try to duplicate it to see if I get it too.

(On a site note, can you please add me through pager so I can talk to you for a minute?)
This is going to be very difficult to diagnose unless we can be supplied with some source that consistently causes the problem, as well as associated platform info. I don't think it's a minor enough to defer for now.
Ok, I did some further testing (It doesn't seem to trigger on plain compiles, only if the code changes -- I went through the file list and started unincluding different files to trigger it.)

This time I had windbg running the whole time, which seems to have let me catch the first error that leads to this.

HEAP[dreammaker.exe]: HEAP: Free Heap block e5b6168 modified at e5f24c8 after it was freed
(1e7c.22ac): WOW64 breakpoint - code 4000001f (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
ntdll32!RtlpBreakPointHeap+0x23:
7734fabc cc int 3

Directly after that (and an error at the same location in every subsequent compile):
(1e7c.22ac): Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
*** WARNING: Unable to verify checksum for C:\Program Files (x86)\BYOND\bin\byondcore.dll
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Program Files (x86)\BYOND\bin\byondcore.dll -
byondcore!PixBits::~PixBits+0x5a3:
00591813 66837e0600 cmp word ptr [esi+6],0 ds:002b:feeefef4=????

Which also causes the error at exit:
(1e7c.22ac): Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
byondcore!DungBuilder::DungBuilder+0x1b79b:
00590c9b 8b16 mov edx,dword ptr [esi] ds:002b:baadf00d=????????

I have minidump files from each time it stopped in this process if those will help.

Stack trace from the first error:
0018cf78 7730d664 ntdll_77280000!RtlpBreakPointHeap+0x23
0018cfac 772c2699 ntdll_77280000!RtlpGrowBlockInPlace+0x26d
0018d0cc 772c23bf ntdll_77280000!RtlpReAllocateHeap+0x785
0018d140 77350817 ntdll_77280000!RtlReAllocateHeap+0x2c5
0018d190 7730d9b8 ntdll_77280000!RtlDebugReAllocateHeap+0x23f
0018d2ac 772c23bf ntdll_77280000!RtlpReAllocateHeap+0x233
0018d320 7577b169 ntdll_77280000!RtlReAllocateHeap+0x2c5
0018d374 00590da4 msvcrt!realloc+0x35f
WARNING: Stack unwind information not available. Following frames may be wrong.
0018d380 6daaa7b0 byondcore+0x70da4
0018d380 00000000 mfc42!CWinApp::SetDialogBkColor+0x64
This has happened to me multiple times.I try fixing it but it crashed my computer when i ran dreammaker for like the 4th time
Just bumping to say it still seems to happen in 481 -- at least my test of 'keep changing the included files and recompile a bunch' triggered something:

(14f8.4c0): Access violation - code c0000005 (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
*** WARNING: Unable to verify checksum for byondcore.dll
*** ERROR: Symbol file could not be found. Defaulted to export symbols for byondcore.dll -
byondcore!DungBuilder::DungBuilder+0x1b8be:
0083181e 89348a mov dword ptr [edx+ecx*4],esi ds:002b:03d54540=????????


Stack trace:
WARNING: Stack unwind information not available. Following frames may be wrong.
0018d34c 008326b3 byondcore!DungBuilder::DungBuilder+0x1b8be
00000000 00000000 byondcore!DungBuilder::DungBuilder+0x1c753

Leading into something pretty much the same as the last test if I let it continue and try to close DM:
(14f8.4c0): Access violation - code c0000005 (!!! second chance !!!)
byondcore!DungBuilder::DungBuilder+0x1b79b:
008316fb 8b16 mov edx,dword ptr [esi] ds:002b:1600786e=????????


(I didn't see any strange error messages from DM specifically, but there's definitely some sort of crash here.)
Which 481 build was it? There was a change to Dream Maker in a later minor build.
The about window says 481.1090, which is the same as the one currently listed on the download page. I can re-download it and try again if you want.
No need; knowing it's 1090 is enough for me to work with.