2018-01-03 Fred Gleason <fredg@paravelsystems.com>

* Fixed races in creation of new carts.
This commit is contained in:
Fred Gleason
2018-01-03 15:36:45 -05:00
parent d60b138629
commit c63ae45991
30 changed files with 238 additions and 145 deletions

View File

@@ -977,6 +977,8 @@ MainObject::Result MainObject::ImportFile(const QString &filename,
RDGroup *effective_group=new RDGroup(import_group->name());
RDWaveData *wavedata=new RDWaveData();
RDWaveFile *wavefile=new RDWaveFile(filename);
QString err_msg;
if(wavefile->openWave(wavedata)) {
effective_filename=filename;
}
@@ -1112,11 +1114,9 @@ MainObject::Result MainObject::ImportFile(const QString &filename,
if(import_delete_cuts) {
DeleteCuts(import_cart_number);
}
cart_created=
RDCart::create(effective_group->name(),RDCart::Audio,&err_msg,*cartnum)!=0;
RDCart *cart=new RDCart(*cartnum);
if(!cart->exists()) {
cart->create(effective_group->name(),RDCart::Audio);
cart_created=true;
}
int cutnum=
cart->addCut(import_format,import_bitrate,import_channels);
if(cutnum<0) {