Hallo,
ich möchte gerade den aktuellen permashift patch in yavdr integrieren.
Ich starte mit einem
apt-get source vdr
cd vdr-2.0.6
dpkg-buildpackage -uc -us
--> klappt
Dann entferne ich aus ./debian/patches/series den alten permashift patch.
Wenn ich jetzt den dpkg-buildpackage -uc -us starte, schlägt dies fehl:
Code
root@vdr:~/vdr/vdr-2.0.6# dpkg-buildpackage -uc -us
dpkg-buildpackage: Quellpaket vdr
dpkg-buildpackage: Quellversion 2.0.6-6yavdr1
dpkg-buildpackage: Quellen geändert durch Alexander Grothe <seahawk1986@hotmail.com>
dpkg-buildpackage: Host-Architektur amd64
dpkg-source --before-build vdr-2.0.6
dpkg-source: Information: Optionen aus vdr-2.0.6/debian/source/options werden verwendet: --compression=bzip2
debian/rules clean
dh clean
dh_testdir
debian/rules override_dh_auto_clean
make[1]: Betrete Verzeichnis '/root/vdr/vdr-2.0.6'
dh_auto_clean
make[2]: Betrete Verzeichnis '/root/vdr/vdr-2.0.6'
make[2]: Verlasse Verzeichnis '/root/vdr/vdr-2.0.6'
rm -f debian/vdr-shutdown.wrapper
rm -f debian/plugin-loader2
make[1]: Verlasse Verzeichnis '/root/vdr/vdr-2.0.6'
dh_clean
dpkg-source -b vdr-2.0.6
dpkg-source: Information: Optionen aus vdr-2.0.6/debian/source/options werden verwendet: --compression=bzip2
dpkg-source: Information: Quellformat »3.0 (quilt)« wird verwendet
dpkg-source: Information: vdr wird unter Benutzung des existierenden ./vdr_2.0.6.orig.tar.bz2 gebaut
dpkg-source: Information: lokale Änderungen erkannt, die veränderten Dateien sind:
vdr-2.0.6/dvbplayer.c
vdr-2.0.6/dvbplayer.h
vdr-2.0.6/menu.c
vdr-2.0.6/menu.h
vdr-2.0.6/po/ar.po
vdr-2.0.6/po/ca_ES.po
vdr-2.0.6/po/cs_CZ.po
vdr-2.0.6/po/da_DK.po
vdr-2.0.6/po/de_DE.po
vdr-2.0.6/po/el_GR.po
vdr-2.0.6/po/es_ES.po
vdr-2.0.6/po/et_EE.po
vdr-2.0.6/po/fi_FI.po
vdr-2.0.6/po/fr_FR.po
vdr-2.0.6/po/hr_HR.po
vdr-2.0.6/po/hu_HU.po
vdr-2.0.6/po/it_IT.po
vdr-2.0.6/po/lt_LT.po
vdr-2.0.6/po/mk_MK.po
vdr-2.0.6/po/nl_NL.po
vdr-2.0.6/po/nn_NO.po
vdr-2.0.6/po/pl_PL.po
vdr-2.0.6/po/pt_PT.po
vdr-2.0.6/po/ro_RO.po
vdr-2.0.6/po/ru_RU.po
vdr-2.0.6/po/sk_SK.po
vdr-2.0.6/po/sl_SI.po
vdr-2.0.6/po/sr_RS.po
vdr-2.0.6/po/sv_SE.po
vdr-2.0.6/po/tr_TR.po
vdr-2.0.6/po/uk_UA.po
vdr-2.0.6/po/zh_CN.po
vdr-2.0.6/shutdown.c
vdr-2.0.6/timers.c
vdr-2.0.6/timers.h
dpkg-source: Information: Sie können die lokalen Änderungen mit dpkg-source --commit integrieren
dpkg-source: Fehler: Abbruch aufgrund unerwarteter Änderungen in den Originalquellen, siehe /tmp/vdr_2.0.6-6yavdr1.diff.7HSV3k
dpkg-buildpackage: Fehler: Fehler-Exitstatus von dpkg-source -b vdr-2.0.6 war 2
Alles anzeigen
Das verstehe ich nicht. Wenn jetzt nach dem permashift-patch folgende patches fehlschlagen würden, ok. Aber dies verstehe ich nicht.
Hier mal der Beginn der genannten Datei:
Diff
more /tmp/vdr_2.0.6-6yavdr1.diff.7HSV3k
Description: <short summary of the patch>
TODO: Put a short summary on the line above and replace this paragraph
with a longer explanation of this change. Complete the meta-information
with other relevant fields (see below for details). To make it easier, the
information below has been extracted from the changelog. Adjust it or drop
it.
.
vdr (2.0.6-6yavdr1) precise; urgency=medium
.
* automatic rebuild
Author: Alexander Grothe <seahawk1986@hotmail.com>
---
The information above should follow the Patch Tagging Guidelines, please
checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
are templates for supplementary fields that you might want to add:
Origin: <vendor|upstream|other>, <url of original patch>
Bug: <url in upstream bugtracker>
Bug-Debian: http://bugs.debian.org/<bugnumber>
Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
Forwarded: <no|not-needed|url proving that it has been forwarded>
Reviewed-By: <name and email of someone who approved the patch>
Last-Update: <YYYY-MM-DD>
--- vdr-2.0.6.orig/timers.c
+++ vdr-2.0.6/timers.c
@@ -789,12 +789,12 @@ cTimer *cTimers::GetMatch(const cEvent *
return t;
}
-cTimer *cTimers::GetNextActiveTimer(void)
+cTimer *cTimers::GetNextActiveTimer(int minimumPriority /* = MINPRIORITY */)
{
cTimer *t0 = NULL;
for (cTimer *ti = First(); ti; ti = Next(ti)) {
ti->Matches();
- if ((ti->HasFlags(tfActive)) && (!t0 || ti->StopTime() > time(NULL) && ti->Compare(*t0) < 0))
+ if ((ti->HasFlags(tfActive)) && (!t0 || ti->StopTime() > time(NULL) && ti->Compare(*t0) < 0) && ti->Priority() >= minimumPriority)
t0 = ti;
}
return t0;
--- vdr-2.0.6.orig/dvbplayer.h
+++ vdr-2.0.6/dvbplayer.h
@@ -19,7 +19,7 @@ class cDvbPlayerControl : public cContro
private:
cDvbPlayer *player;
public:
- cDvbPlayerControl(const char *FileName, bool PauseLive = false);
+ cDvbPlayerControl(const char *FileName, bool PauseLive = false, bool ReusedPauseLive = false);
// Sets up a player for the given file.
// If PauseLive is true, special care is taken to make sure the index
// file of the recording is long enough to allow the player to display
--- vdr-2.0.6.orig/timers.h
+++ vdr-2.0.6/timers.h
@@ -120,7 +120,7 @@ public:
cTimer *GetTimer(cTimer *Timer);
cTimer *GetMatch(time_t t);
cTimer *GetMatch(const cEvent *Event, eTimerMatch *Match = NULL);
- cTimer *GetNextActiveTimer(void);
+ cTimer *GetNextActiveTimer(int minimumPriority = MINPRIORITY);
int BeingEdited(void) { return beingEdited; }
void IncBeingEdited(void) { beingEdited++; }
void DecBeingEdited(void) { if (!--beingEdited) lastSetEvents = 0; }
--- vdr-2.0.6.orig/menu.h
+++ vdr-2.0.6/menu.h
@@ -246,8 +246,11 @@ class cRecordControls {
private:
static cRecordControl *RecordControls[];
static int state;
+ static bool TryReuseRecording(bool Pause);
+ ///< Tries to reuse an existing recording instead of creating a second one in parallel.
+ ///< Returns true if successful.
public:
- static bool Start(cTimer *Timer = NULL, bool Pause = false);
+ static bool Start(cTimer *Timer = NULL, bool Pause = false, bool* reused = NULL);
static void Stop(const char *InstantId);
static bool PauseLiveVideo(void);
static const char *GetInstantId(const char *LastInstantId);
@@ -255,9 +258,14 @@ public:
static cRecordControl *GetRecordControl(const cTimer *Timer);
///< Returns the cRecordControl for the given Timer.
///< If there is no cRecordControl for Timer, NULL is returned.
+ static cRecordControl *GetRecordControl(int channelNo);
+ ///< Returns the cRecordControl for the given channel number.
+ ///< If there is no cRecordControl, NULL is returned.
Alles anzeigen
Woran liegt das?
Gruß,
Hendrik