ID:121082
 
BYOND Version:493
Operating System:Windows Vista Home Premium
Web Browser:Chrome 15.0.874.120
Applies to:DM Language
Status: Unverified

Thus far we've been unable to verify or reproduce this bug. Or, it has been observed but it cannot be triggered with a reliable test case. You can help us out by editing your report or adding a comment with more information.
Descriptive Problem Summary:
I'm reporting this for a player, so, I can't give a whole lot of information, but I can provide what I think might be happening.

I think every time you change a window/child's position or size or visibility or something, it creates an entire new window/child and just hides the old one or something (other changes might do it as well, I just can't see the results because they're on top of eachother). I don't even know. All I know is, in this screenshot the same window/child is visible multiple times.

When you close a project or it crashes, sometimes hidden interfaces show up before it closes. So you see a ton of hidden windows in the above screenshot, even though new windows aren't created from the game.

The crash that brought this interface issue to my attention, I'm not sure where it is from, but I think maybe after awhile there's just too much information and the game crashes.

I haven't had the crash, but many players have. So sorry for lack of information, but something is going on with interfaces. Which probably has something to do with memory and lag issues I've reported/had trouble with in the past. And it sort of makes sense since most performance issues I've had came after switching to heavy interface-based projects.

Numbered Steps to Reproduce Problem:
Sadly I do not know.

When does the problem NOT occur?
Not sure.

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.)
Not sure.

Workarounds:
Don't use interfaces.

Resizing or changing visibility does not create a new window. Hooking on-size however could be causing the game to do something that makes it spawn more windows due to a bug in the game code. That is, if you're using a dynamic interface and creating windows or controls at runtime, then the game source is the place to look for any issue.

Lummox JR wrote:
Resizing or changing visibility does not create a new window. Hooking on-size however could be causing the game to do something that makes it spawn more windows due to a bug in the game code. That is, if you're using a dynamic interface and creating windows or controls at runtime, then the game source is the place to look for any issue.

There's not a single winclone or any methods of creating new windows in the source. Everything is premade and just changed during runtime.
But are you hooking on-size? It's possible one of your winset calls is doing something unexpected and that's the issue. The one thing I can tell you with complete certainty is that there is no code going around spawning new windows during a resize.
Lummox JR wrote:
But are you hooking on-size? It's possible one of your winset calls is doing something unexpected and that's the issue. The one thing I can tell you with complete certainty is that there is no code going around spawning new windows during a resize.

On-size is not used anywhere in the game.

After further investigation I have come to the conclusion that changing Child.left just hides the old content that was in it, which results in what is happening.

I don't know how much that helps you, but I am 99% sure it is changing child.left that does this. It's possible changing it to the value it already is does it, or just changing it in general, I do not know.