Ticket #4327: eitfixup5.patch

File eitfixup5.patch, 3.2 KB (added by John {at} Pullan {dot} {org}, 13 years ago)

Yet another update

  • libs/libmythtv/eitfixup.cpp

     
    3636      m_ukBBC7rpt("\\[Rptd?[^]]+\\d{1,2}\\.\\d{1,2}[ap]m\\]\\."),
    3737      m_ukCBBC("^CBBC."),
    3838      m_ukCBeebies("^CBeebies."),
    39       m_ukStarring1("star(ring)"),
     39      m_ukStarring1("star(ring|s)"),
    4040      m_ukDoubleDotEnd("\\.\\.+$"),
    4141      m_ukDoubleDotStart("^\\.\\.+"),
    4242      m_ukDotSpaceStart("^\\. "),
     43      m_ukTime("\\d{1,2}[\\.:]\\d{1,2}\\s*(am|pm|)"),
    4344      m_comHemCountry("^(\\(.+\\))?\\s?([^ ]+)\\s([^\\.0-9]+)"
    4445                      "(?:\\sfrån\\s([0-9]{4}))(?:\\smed\\s([^\\.]+))?\\.?"),
    4546      m_comHemDirector("[Rr]egi"),
     
    360361    // BBC 7 [Rpt of ...] case.
    361362    event.description = event.description.remove(m_ukBBC7rpt);
    362363
     364    event.title = event.title.stripWhiteSpace();
     365    event.description = event.description.stripWhiteSpace();
     366
    363367    QRegExp tmp24ep = m_uk24ep;
    364368    if (!event.title.startsWith("CSI:") && !event.title.startsWith("CD:"))
    365369    {
     
    385389                    event.description = event.title.mid(position1);
    386390                    event.title = event.title.left(position1);
    387391                }
    388             }
     392            } 
    389393        }
    390394        else if ((position1 = tmp24ep.search(event.description)) != -1)
    391395        {
     
    395399                                tmp24ep.cap(0).length() - 2);
    396400            event.description = event.description.remove(tmp24ep.cap(0));
    397401        }
    398         else if (((position1 = event.title.find(m_ukColonHyphen)) != -1) &&
    399             (event.description.find(":") < 0 ))
     402        else if ((position1 = event.description.find(m_ukTime)) == -1)
    400403        {
    401             if ((uint)position1 < SUBTITLE_MAX_LEN)
     404            if (((position1 = event.title.find(m_ukColonHyphen)) != -1) &&
     405                (event.description.find(":") < 0 ))
    402406            {
    403                 event.subtitle = event.title.mid(position1 + 1);
    404                 event.title = event.title.left(position1);
     407                if ((uint)position1 < SUBTITLE_MAX_LEN)
     408                {
     409                    event.subtitle = event.title.mid(position1 + 1);
     410                    event.title = event.title.left(position1);
     411                }
    405412            }
     413            else
     414                SetUKSubtitle(event);
    406415        }
    407         else
    408             SetUKSubtitle(event);
    409416    }
    410417
    411     if (event.subtitle.isEmpty())
     418    if ((event.description.find(m_ukTime) == -1) && (event.subtitle.isEmpty()))
    412419    {
    413420       QStringList strList1 = QStringList::split(".",event.description,TRUE);
    414421       QStringList strList2 = QStringList::split("?",event.description,TRUE);
  • libs/libmythtv/eitfixup.h

     
    103103    const QRegExp m_ukDoubleDotEnd;
    104104    const QRegExp m_ukDoubleDotStart;
    105105    const QRegExp m_ukDotSpaceStart;
     106    const QRegExp m_ukTime;
    106107    const QRegExp m_comHemCountry;
    107108    const QRegExp m_comHemDirector;
    108109    const QRegExp m_comHemActor;