mirror of
https://github.com/cookiengineer/audacity
synced 2025-06-21 14:50:06 +02:00
Buig1307: Misbehavior posting mono into stereo
This commit is contained in:
parent
c703631b8c
commit
4d2f4bbd69
@ -3982,7 +3982,7 @@ void AudacityProject::OnPaste()
|
||||
Track *c = clipIter.First();
|
||||
if (c == NULL)
|
||||
return;
|
||||
Track *f = NULL;
|
||||
Track *ff = NULL;
|
||||
Track *tmpSrc = NULL;
|
||||
Track *tmpC = NULL;
|
||||
Track *prev = NULL;
|
||||
@ -3994,7 +3994,8 @@ void AudacityProject::OnPaste()
|
||||
while (n && c) {
|
||||
if (n->GetSelected()) {
|
||||
bAdvanceClipboard = true;
|
||||
if (tmpC) c = tmpC;
|
||||
if (tmpC)
|
||||
c = tmpC;
|
||||
if (c->GetKind() != n->GetKind()) {
|
||||
if (!bTrackTypeMismatch) {
|
||||
tmpSrc = prev;
|
||||
@ -4023,7 +4024,8 @@ void AudacityProject::OnPaste()
|
||||
}
|
||||
n = iter.Next();
|
||||
}
|
||||
if (!n) c = NULL;
|
||||
if (!n)
|
||||
c = NULL;
|
||||
}
|
||||
|
||||
// The last possible case for cross-type pastes: triggered when we try to
|
||||
@ -4048,8 +4050,8 @@ void AudacityProject::OnPaste()
|
||||
break;
|
||||
}
|
||||
|
||||
if (!f)
|
||||
f = n;
|
||||
if (!ff)
|
||||
ff = n;
|
||||
|
||||
if (msClipProject != this && c->GetKind() == Track::Wave)
|
||||
((WaveTrack *) c)->Lock();
|
||||
@ -4083,11 +4085,7 @@ void AudacityProject::OnPaste()
|
||||
n = iter.Next();
|
||||
|
||||
if (n->GetKind() == Track::Wave) {
|
||||
//printf("Checking to see if we need to pre-clear the track\n");
|
||||
if (!((WaveTrack *) n)->IsEmpty(t0, t1)) {
|
||||
((WaveTrack *) n)->Clear(t0, t1);
|
||||
}
|
||||
bPastedSomething |= ((WaveTrack *)n)->Paste(t0, c);
|
||||
bPastedSomething |= ((WaveTrack *)n)->ClearAndPaste(t0, t1, c, true, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -4126,7 +4124,8 @@ void AudacityProject::OnPaste()
|
||||
if (c && c->GetKind() == Track::Wave) {
|
||||
bPastedSomething |=
|
||||
((WaveTrack *)n)->ClearAndPaste(t0, t1, (WaveTrack *)c, true, true);
|
||||
}else{
|
||||
}
|
||||
else {
|
||||
WaveTrack *tmp;
|
||||
tmp = mTrackFactory->NewWaveTrack( ((WaveTrack*)n)->GetSampleFormat(), ((WaveTrack*)n)->GetRate());
|
||||
bool bResult = tmp->InsertSilence(0.0, msClipT1 - msClipT0); // MJS: Is this correct?
|
||||
@ -4166,8 +4165,8 @@ void AudacityProject::OnPaste()
|
||||
|
||||
RedrawProject();
|
||||
|
||||
if (f)
|
||||
mTrackPanel->EnsureVisible(f);
|
||||
if (ff)
|
||||
mTrackPanel->EnsureVisible(ff);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user