From 3bebeee9061d5c470b86aa40891ae3a53e9b2382 Mon Sep 17 00:00:00 2001 From: Fred Gleason Date: Thu, 26 Jan 2023 11:16:08 -0500 Subject: [PATCH] 2023-01-26 Fred Gleason * Fixed a bug in rdlogmanager(1) that caused the slop factors for inline traffic events to fail to be applied when importing a traffic log. Signed-off-by: Fred Gleason --- ChangeLog | 4 ++++ lib/rdevent_line.cpp | 34 ++++++++++++++++++++++++++++++++-- 2 files changed, 36 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 342cac8c..c275e053 100644 --- a/ChangeLog +++ b/ChangeLog @@ -23948,3 +23948,7 @@ 2023-01-24 Fred Gleason * Added more detail to data transfer errors generated by the podcasting subsystem. +2023-01-26 Fred Gleason + * Fixed a bug in rdlogmanager(1) that caused the slop factors for + inline traffic events to fail to be applied when importing a traffic + log. diff --git a/lib/rdevent_line.cpp b/lib/rdevent_line.cpp index d881181a..6be22b19 100644 --- a/lib/rdevent_line.cpp +++ b/lib/rdevent_line.cpp @@ -963,6 +963,7 @@ void RDEventLine::linkLog(RDLogModel *e,RDLog *log,const QString &svcname, { QString sql; RDSqlQuery *q; + RDSqlQuery *q1; RDLogLine *logline=NULL; RDLog::Source log_src=RDLog::SourceMusic; @@ -990,6 +991,35 @@ void RDEventLine::linkLog(RDLogModel *e,RDLog *log,const QString &svcname, int grace_time=link_logline->graceTime(); QTime time=link_logline->startTime(RDLogLine::Logged); + // + // Get slop factors for inline traffic breaks + // + int inline_start_slop=0; + int inline_end_slop=0; + if(event_import_source==RDEventLine::Music) { + sql=QString("select ")+ + "`NESTED_EVENT` "+ // 00 + "from `EVENTS` where "+ + "`NAME`='"+RDEscapeString(event_name)+"'"; + q=new RDSqlQuery(sql); + if(q->first()) { + if(!q->value(0).toString().trimmed().isEmpty()) { + sql=QString("select ")+ + "`START_SLOP`,"+ // 00 + "`END_SLOP` "+ // 01 + "from `EVENTS` where "+ + "`NAME`='"+RDEscapeString(q->value(0).toString().trimmed())+"'"; + q1=new RDSqlQuery(sql); + if(q1->first()) { + inline_start_slop=q1->value(0).toInt(); + inline_end_slop=q1->value(1).toInt(); + } + delete q1; + } + } + delete q; + } + // // Insert Parent Link // @@ -1079,8 +1109,8 @@ void RDEventLine::linkLog(RDLogModel *e,RDLog *log,const QString &svcname, logline->setLinkEventName(event_nested_event); logline->setLinkStartTime(q->value(9).toTime()); logline->setLinkLength(q->value(10).toInt()); - logline->setLinkStartSlop(link_logline->linkStartSlop()); - logline->setLinkEndSlop(link_logline->linkEndSlop()); + logline->setLinkStartSlop(inline_start_slop); + logline->setLinkEndSlop(inline_end_slop); logline->setLinkId(link_logline->linkId()); logline->setLinkEmbedded(true); }