mirror of
https://github.com/cookiengineer/audacity
synced 2025-10-26 15:23:48 +01:00
Bug1603, speculative fix: AUNBandEQ crashes Audacity...
... I can't reproduce the symptoms on my Mac, but the stack trace supplied by
Gale shows an infinite recursion overflowing the stack.
I see that at commit d1f66d768f "Updates for wx3"
by Leland, he saw the need to set a guard against infinite recursion in another
window resizing callback. He tested that guard, but did not set it, in two
other places. I speculate that the cycle can be entered from those other
places, bypassing where the guard was set. So I set the guard in more places.
This commit is contained in:
@@ -199,7 +199,7 @@ void AUControl::OnSize(wxSizeEvent & evt)
|
||||
{
|
||||
return;
|
||||
}
|
||||
mSettingSize = true;
|
||||
auto vr = valueRestorer( mSettingSize, true );
|
||||
|
||||
wxSize sz = GetSize();
|
||||
|
||||
@@ -250,8 +250,6 @@ void AUControl::OnSize(wxSizeEvent & evt)
|
||||
}
|
||||
#endif
|
||||
|
||||
mSettingSize = false;
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -418,6 +416,7 @@ void AUControl::CocoaViewResized()
|
||||
{
|
||||
return;
|
||||
}
|
||||
auto vr = valueRestorer( mSettingSize, true );
|
||||
|
||||
NSSize viewSize = [mView frame].size;
|
||||
NSSize frameSize = [mAUView frame].size;
|
||||
@@ -624,7 +623,8 @@ void AUControl::CarbonViewResized()
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
auto vr = valueRestorer( mSettingSize, true );
|
||||
|
||||
// resize and move window
|
||||
HIRect rect;
|
||||
HIViewGetFrame(mHIView, &rect);
|
||||
|
||||
Reference in New Issue
Block a user