move mark service as new code to better position
authorAndreas Monzner <andreas.monzner@multimedia-labs.de>
Tue, 9 May 2006 15:00:28 +0000 (15:00 +0000)
committerAndreas Monzner <andreas.monzner@multimedia-labs.de>
Tue, 9 May 2006 15:00:28 +0000 (15:00 +0000)
lib/dvb/db.cpp
lib/dvb/scan.cpp

index c0064071a75ba42e4deb22db5b2b88629583117c..65b378627dae0b9a914fa0fe933cc685877e58d9 100644 (file)
@@ -855,12 +855,7 @@ RESULT eDVBDB::addService(const eServiceReferenceDVB &serviceref, eDVBService *s
 {
        std::map<eServiceReferenceDVB, ePtr<eDVBService> >::iterator it(m_services.find(serviceref));
        if (it == m_services.end())
-       {
-               service->m_flags |= eDVBService::dxNewFound;
                m_services.insert(std::pair<eServiceReferenceDVB, ePtr<eDVBService> >(serviceref, service));
-       }
-       else
-               it->second->m_flags &= ~eDVBService::dxNewFound;
        return 0;
 }
 
index 605128e7c8670caa6674aa81425840183d8a3bbb..d0949a970ecc66a8d9cae261a1ba03f42e451737 100644 (file)
@@ -512,9 +512,15 @@ void eDVBScan::insertInto(iDVBChannelList *db)
        {
                ePtr<eDVBService> dvb_service;
                if (!db->getService(service->first, dvb_service))
+               {
                        *dvb_service = *service->second;
+                       dvb_service->m_flags &= ~eDVBService::dxNewFound;
+               }
                else
+               {
                        db->addService(service->first, service->second);
+                       service->second->m_flags |= eDVBService::dxNewFound;
+               }
        }
 }