n = new_passes_counter;
counter += new_passes_counter;
new_passes_counter -= n;
а и еще вот такие конструкции периодически встречаю:
for(i=0; i < N; i++){
foo();
if(i < N && !p){
bar();
}
blabla();
if(i < N){
blablabla();
}
}
это пиздец, товарищи. и эти люди работают в конторе с мировым именем.
у меня это этого начинается стресс и депрессия.
щетаю, что надо читать курсы про инварианты циклов.