Jag tog bort alla rader som ändrar på den variabel, men utan skillnad.
nu spårade jag ner problemet till denna if-sats, ( jag har tagit bort alla andra referenser till variabeln i koden innan jag hitta vart felet uppstår )
Kod: Markera allt
// Master Area ( the hole thing)
if((MasterWorkArea_AnyOutputActive_Counter =! 0) || (MasterWorkArea_AnyOutputActive != 0))
{
// yeep, some output is enabled , so SET this output if any other output is enabled
AreaInternal_ChainStatus = true;
}
MasterWorkArea_AnyOutputActive_Counter = 0
MasterWorkArea_AnyOutputActive = 0
och när den kollar villkoren så ändras MasterWorkArea_AnyOutputActive_Counter till 1 och if-satsen anses vara true
så frågan är nu, är jag bara helt dum i huvudet eller är det något som är tok galet ??
jag har flyttat på variabelns adress i minnet, så det verkar inte som att den skrivs över av någon annan variabel som kommer utanför sitt skriv område
och värdet sätts alltid till 1, om jag återställer variablen så sätts den bara tillbaka till 1 när den går in i if-satsen igen
någon ?
