2017-12-22 Fred Gleason <fredg@paravelsystems.com>

* Added a lock check for before deleting logs in rdclilogedit(1).
This commit is contained in:
Fred Gleason 2017-12-22 16:25:52 -05:00
parent 606816591e
commit afa98a737f
2 changed files with 13 additions and 3 deletions

View File

@ -16539,3 +16539,5 @@
* Added log locking logic to rdlogmanager(1).
2017-12-22 Fred Gleason <fredg@paravelsystems.com>
* Added a lock check for before deleting logs in rdlogedit(1).
2017-12-22 Fred Gleason <fredg@paravelsystems.com>
* Added a lock check for before deleting logs in rdclilogedit(1).

View File

@ -107,16 +107,24 @@ void MainObject::Deletelog(QString logname)
delete q;
if((edit_log==NULL)||(edit_log->name()!=logname)) {
RDLogLock *log_lock=new RDLogLock(logname,edit_user,edit_station,this);
QString err_msg;
RDLog *log=new RDLog(logname);
if(log->exists()) {
if(!log->remove(edit_station,edit_user,edit_config)) {
fprintf(stderr,"deletelog: audio deletion error, log not deleted\n");
if(TryLock(log_lock,logname)) {
if(!log->remove(edit_station,edit_user,edit_config)) {
fprintf(stderr,
"deletelog: audio deletion error, log not deleted\n");
}
}
else {
delete log_lock;
}
delete log;
}
else {
fprintf(stderr,"deletelog: no such log\n");
}
delete log;
}
else {
fprintf(stderr,"deletelog: log currently loaded (try \"unload\" first)\n");