Hello, all. I'm working on a new project now that I can talk about.
I've been hired to fix code that performs frame capture and magnetic sensor telemetry.
I haven't worked in C# before this, but it is similar enough to the work I was doing when I last frequented these boards that I can get by.
However, I've got a real doozy of a problem.
In order to try to restore the company-provided frame capture code (Birdman) into the much more functional GUI that was written by another temp. employee... Who also claimed that Birdman was 'not going about it the right way', and reworked the frame capture into something functional, but unable to perform as well.
For example, Birdman can capture at 15 frames/second on all of the systems that it ran on, but Ubird (the modified version) does not. Ubird also cannot capture 30 frames/second on any system.
There's a lot of strange stuff going on in my attempts to get Ubird operational, but this is the strangest.
It makes initialization seemingly have a 'goto line number' command, causing repeated calls of 'new' until a stack overflow exception occurs.
During the initialization process, the following code appears.
private (some.data.type) setup=new frmSetup();
//Other initializations here
public frmSetup()
{
InitializeComponent();
}
When frmSetup is called and I track it through debug, it only gets as far as the frmSetup() function, but then does not enter the function. It returns to the 'new frmSetup()' and tries to enter the function again.
If I move 'new frmSetup()' down the list of initializations, it behaves the same way, but the control returns to where 'new frmSetup()' originally resided, and runs through all the initializations between its original and new location, then loops until the exception is called.
I have NO clue what is causing this. Has anyone else encountered this behavior, and if so, how can I fix it?