mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
The function cEpgHandlers::BeginSegmentTransfer() is now boolean
This commit is contained in:
parent
112bfa5897
commit
d6f57259fa
@ -2618,6 +2618,7 @@ J
|
|||||||
for adding HandledExternally() to the EPG handler interface
|
for adding HandledExternally() to the EPG handler interface
|
||||||
for adding IsUpdate() to the EPG handler interface
|
for adding IsUpdate() to the EPG handler interface
|
||||||
for adding Begin/EndSegmentTransfer() to the EPG handler interface
|
for adding Begin/EndSegmentTransfer() to the EPG handler interface
|
||||||
|
for making cEpgHandlers::BeginSegmentTransfer() boolean
|
||||||
|
|
||||||
Peter Pinnau <vdr@unterbrecher.de>
|
Peter Pinnau <vdr@unterbrecher.de>
|
||||||
for reporting that 'uint32_t' requires including stdint.h in font.h on some systems
|
for reporting that 'uint32_t' requires including stdint.h in font.h on some systems
|
||||||
|
4
HISTORY
4
HISTORY
@ -8925,8 +8925,10 @@ Video Disk Recorder Revision History
|
|||||||
- Now stopping any ongoing recordings before stopping the plugins, to avoid
|
- Now stopping any ongoing recordings before stopping the plugins, to avoid
|
||||||
a crash when stopping VDR while recording.
|
a crash when stopping VDR while recording.
|
||||||
|
|
||||||
2017-03-30: Version 2.3.4
|
2017-03-31: Version 2.3.4
|
||||||
|
|
||||||
- The functionality of HandleRemoteModifications(), which synchronizes changes to
|
- The functionality of HandleRemoteModifications(), which synchronizes changes to
|
||||||
timers between peer VDR machines, has been moved to timers.[ch] and renamed to
|
timers between peer VDR machines, has been moved to timers.[ch] and renamed to
|
||||||
HandleRemoteTimerModifications(). It now also handles deleting remote timers.
|
HandleRemoteTimerModifications(). It now also handles deleting remote timers.
|
||||||
|
- The function cEpgHandlers::BeginSegmentTransfer() is now boolean (thanks to
|
||||||
|
Jörg Wendel). See the description in epg.h for the meaning of the return value.
|
||||||
|
9
eit.c
9
eit.c
@ -8,7 +8,7 @@
|
|||||||
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
|
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
|
||||||
* Adapted to 'libsi' for VDR 1.3.0 by Marcel Wiesweg <marcel.wiesweg@gmx.de>.
|
* Adapted to 'libsi' for VDR 1.3.0 by Marcel Wiesweg <marcel.wiesweg@gmx.de>.
|
||||||
*
|
*
|
||||||
* $Id: eit.c 4.1 2015/08/23 10:43:36 kls Exp $
|
* $Id: eit.c 4.2 2017/03/31 15:16:46 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "eit.h"
|
#include "eit.h"
|
||||||
@ -67,8 +67,13 @@ cEIT::cEIT(cSectionSyncerHash &SectionSyncerHash, int Source, u_char Tid, const
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!EpgHandlers.BeginSegmentTransfer(Channel)) {
|
||||||
|
SchedulesStateKey.Remove(false);
|
||||||
|
ChannelsStateKey.Remove(false);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
bool ChannelsModified = false;
|
bool ChannelsModified = false;
|
||||||
EpgHandlers.BeginSegmentTransfer(Channel);
|
|
||||||
bool handledExternally = EpgHandlers.HandledExternally(Channel);
|
bool handledExternally = EpgHandlers.HandledExternally(Channel);
|
||||||
cSchedule *pSchedule = (cSchedule *)Schedules->GetSchedule(Channel, true);
|
cSchedule *pSchedule = (cSchedule *)Schedules->GetSchedule(Channel, true);
|
||||||
|
|
||||||
|
9
epg.c
9
epg.c
@ -7,7 +7,7 @@
|
|||||||
* Original version (as used in VDR before 1.3.0) written by
|
* Original version (as used in VDR before 1.3.0) written by
|
||||||
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
|
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
|
||||||
*
|
*
|
||||||
* $Id: epg.c 4.2 2015/09/10 10:58:19 kls Exp $
|
* $Id: epg.c 4.3 2017/03/31 15:16:46 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "epg.h"
|
#include "epg.h"
|
||||||
@ -1527,12 +1527,13 @@ void cEpgHandlers::DropOutdated(cSchedule *Schedule, time_t SegmentStart, time_t
|
|||||||
Schedule->DropOutdated(SegmentStart, SegmentEnd, TableID, Version);
|
Schedule->DropOutdated(SegmentStart, SegmentEnd, TableID, Version);
|
||||||
}
|
}
|
||||||
|
|
||||||
void cEpgHandlers::BeginSegmentTransfer(const cChannel *Channel)
|
bool cEpgHandlers::BeginSegmentTransfer(const cChannel *Channel)
|
||||||
{
|
{
|
||||||
for (cEpgHandler *eh = First(); eh; eh = Next(eh)) {
|
for (cEpgHandler *eh = First(); eh; eh = Next(eh)) {
|
||||||
if (eh->BeginSegmentTransfer(Channel, false))
|
if (!eh->BeginSegmentTransfer(Channel, false))
|
||||||
return;
|
return false;
|
||||||
}
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void cEpgHandlers::EndSegmentTransfer(bool Modified)
|
void cEpgHandlers::EndSegmentTransfer(bool Modified)
|
||||||
|
7
epg.h
7
epg.h
@ -7,7 +7,7 @@
|
|||||||
* Original version (as used in VDR before 1.3.0) written by
|
* Original version (as used in VDR before 1.3.0) written by
|
||||||
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
|
* Robert Schneider <Robert.Schneider@web.de> and Rolf Hakenes <hakenes@hippomi.de>.
|
||||||
*
|
*
|
||||||
* $Id: epg.h 4.1 2015/08/09 11:25:04 kls Exp $
|
* $Id: epg.h 4.2 2017/03/31 15:24:35 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __EPG_H
|
#ifndef __EPG_H
|
||||||
@ -284,6 +284,9 @@ public:
|
|||||||
virtual bool BeginSegmentTransfer(const cChannel *Channel, bool Dummy) { return false; } // TODO remove obsolete Dummy
|
virtual bool BeginSegmentTransfer(const cChannel *Channel, bool Dummy) { return false; } // TODO remove obsolete Dummy
|
||||||
///< Called directly after IgnoreChannel() before any other handler method is called.
|
///< Called directly after IgnoreChannel() before any other handler method is called.
|
||||||
///< Designed to give handlers the possibility to prepare a database transaction.
|
///< Designed to give handlers the possibility to prepare a database transaction.
|
||||||
|
///< If any EPG handler returns false in this function, it is assumed that
|
||||||
|
///< the EPG for the given Channel has to be handled later due to some transaction problems,
|
||||||
|
///> therefore the processing will aborted.
|
||||||
///< Dummy is for backward compatibility and may be removed in a future version.
|
///< Dummy is for backward compatibility and may be removed in a future version.
|
||||||
virtual bool EndSegmentTransfer(bool Modified, bool Dummy) { return false; } // TODO remove obsolete Dummy
|
virtual bool EndSegmentTransfer(bool Modified, bool Dummy) { return false; } // TODO remove obsolete Dummy
|
||||||
///< Called after the segment data has been processed.
|
///< Called after the segment data has been processed.
|
||||||
@ -311,7 +314,7 @@ public:
|
|||||||
void HandleEvent(cEvent *Event);
|
void HandleEvent(cEvent *Event);
|
||||||
void SortSchedule(cSchedule *Schedule);
|
void SortSchedule(cSchedule *Schedule);
|
||||||
void DropOutdated(cSchedule *Schedule, time_t SegmentStart, time_t SegmentEnd, uchar TableID, uchar Version);
|
void DropOutdated(cSchedule *Schedule, time_t SegmentStart, time_t SegmentEnd, uchar TableID, uchar Version);
|
||||||
void BeginSegmentTransfer(const cChannel *Channel);
|
bool BeginSegmentTransfer(const cChannel *Channel);
|
||||||
void EndSegmentTransfer(bool Modified);
|
void EndSegmentTransfer(bool Modified);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user