r6952 - in /vdr/vdr/trunk/debian: changelog control debugvdr patches/00list patches/opt-20_liemikuutio.dpatch patches/opt-39_noepg.dpatch patches/opt-48-x_pin.dpatch patches/opt-49-x_pvrinput.dpatch patches/patchtest rules vdrdbg-buildpackage vdrleaktest
tiber-guest at users.alioth.debian.org
tiber-guest at users.alioth.debian.org
Wed May 21 09:24:10 UTC 2008
Author: tiber-guest
Date: Wed May 21 09:24:10 2008
New Revision: 6952
URL: http://svn.debian.org/wsvn/pkg-vdr-dvb/?sc=1&rev=6952
Log:
* Modified opt-49-x_pvrinput.dpatch: Added CA-Id's 0xA1 and 0xA2, required by
pvrusb2 as suggested by Christian Jarczyk
* Using txt2man for manpages that used docbook before
* Upgraded opt-21_liemikuutio.dpatch to version 1.21
* Updated opt-48_pin.dpatch
* Upgraded extensions patch to version 61
* Upgraded opt-39_noepg.dpatch to the patch taken from the vdr-noepgmenu
plugin 0.0.6.beta3
* Added opt-52_hard_link_cutter.dpatch
Modified:
vdr/vdr/trunk/debian/changelog
vdr/vdr/trunk/debian/control
vdr/vdr/trunk/debian/debugvdr
vdr/vdr/trunk/debian/patches/00list
vdr/vdr/trunk/debian/patches/opt-20_liemikuutio.dpatch
vdr/vdr/trunk/debian/patches/opt-39_noepg.dpatch
vdr/vdr/trunk/debian/patches/opt-48-x_pin.dpatch
vdr/vdr/trunk/debian/patches/opt-49-x_pvrinput.dpatch
vdr/vdr/trunk/debian/patches/patchtest
vdr/vdr/trunk/debian/rules
vdr/vdr/trunk/debian/vdrdbg-buildpackage
vdr/vdr/trunk/debian/vdrleaktest
Modified: vdr/vdr/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-vdr-dvb/vdr/vdr/trunk/debian/changelog?rev=6952&op=diff
==============================================================================
--- vdr/vdr/trunk/debian/changelog (original)
+++ vdr/vdr/trunk/debian/changelog Wed May 21 09:24:10 2008
@@ -1,3 +1,17 @@
+vdr (1.6.0-3) UNRELEASED; urgency=low
+
+ * Modified opt-49-x_pvrinput.dpatch: Added CA-Id's 0xA1 and 0xA2, required by
+ pvrusb2 as suggested by Christian Jarczyk
+ * Using txt2man for manpages that used docbook before
+ * Upgraded opt-21_liemikuutio.dpatch to version 1.21
+ * Updated opt-48_pin.dpatch
+ * Upgraded extensions patch to version 61
+ * Upgraded opt-39_noepg.dpatch to the patch taken from the vdr-noepgmenu
+ plugin 0.0.6.beta3
+ * Added opt-52_hard_link_cutter.dpatch
+
+ -- Tobias Grimm <tg at e-tobi.net> Mon, 12 May 2008 18:29:55 +0200
+
vdr (1.6.0-2) unstable; urgency=low
[ Tobias Grimm ]
Modified: vdr/vdr/trunk/debian/control
URL: http://svn.debian.org/wsvn/pkg-vdr-dvb/vdr/vdr/trunk/debian/control?rev=6952&op=diff
==============================================================================
--- vdr/vdr/trunk/debian/control (original)
+++ vdr/vdr/trunk/debian/control Wed May 21 09:24:10 2008
@@ -3,8 +3,9 @@
Priority: extra
Maintainer: Debian VDR Team <pkg-vdr-dvb-devel at lists.alioth.debian.org>
Uploaders: Thomas Schmidt <tschmidt at debian.org>, Tobias Grimm <tg at e-tobi.net>, Thomas Günther <tom at toms-cafe.de>
-Build-Depends: debhelper (>= 5), dpatch, xsltproc, docbook-xsl, libjpeg62-dev, libcap-dev,
- libncursesw5-dev, libfreetype6-dev, libfontconfig-dev, gettext
+Build-Depends: debhelper (>= 5), dpatch, libjpeg62-dev, libcap-dev,
+ libncursesw5-dev, libfreetype6-dev, libfontconfig-dev, gettext,
+ txt2man
Standards-Version: 3.7.3
Vcs-Svn: svn://svn.debian.org/pkg-vdr-dvb/vdr/vdr/trunk/
Vcs-Browser: http://svn.debian.org/wsvn/pkg-vdr-dvb/vdr/vdr/trunk/
Modified: vdr/vdr/trunk/debian/debugvdr
URL: http://svn.debian.org/wsvn/pkg-vdr-dvb/vdr/vdr/trunk/debian/debugvdr?rev=6952&op=diff
==============================================================================
--- vdr/vdr/trunk/debian/debugvdr (original)
+++ vdr/vdr/trunk/debian/debugvdr Wed May 21 09:24:10 2008
@@ -1,24 +1,54 @@
-#! /bin/bash
-#
-# Start debug version of vdr with the same options as the normal vdr daemon
-#
-# Options:
-# -r <port> Start with gdbserver host:<port> instead of gdb.
-# (Default port is 1000)
-#
+#!/bin/bash
-. /usr/lib/vdr/config-loader.sh
+# We need bash here, because of the *-loader.sh scripts containing bashisms!
-GDB_SERVER="no"
-GDB_SERVER_PORT="1000"
+## NAME
+## debugvdr - Runs the VDR debugging binary with the GDB debugger.
+##
+## SYNOPSIS
+## debugvdr [-r]
+##
+## DESCRIPTION
+## debugvdr will start VDR with the GDB debugger with the same command line
+## arguments as the VDR daemon. This means, all installed plugins will be
+## loaded. If VDR is still running, it will be automatically stopped before
+## starting the debugging version.
+##
+## OPTIONS
+## -r Start VDR with the GDB Server on port 1000 for remote debugging.
+##
+## SEE ALSO
+## vdr(1), gdb(1)
+##
+## AUTHOR
+## This manual page was written by Tobias Grimm <tg at e-tobi.net>
+##
+### txt2man -s 1 -t DEBUGVDR -v "Start VDR with the GDB debugger"
-if [ "$1" = "-r" ] ; then
- GDB_SERVER="yes" ;
- [ -x $2 ] || GDB_SERVER_PORT="$2"
-fi
+usage()
+{
+ local HELPCOMMENTPATTERN="^## "
+ cat "$0" | grep "$HELPCOMMENTPATTERN" | sed "s/$HELPCOMMENTPATTERN//"
+}
+
+
+while getopts hr opt
+do
+ case $opt in
+ r)
+ GDB_SERVER="yes"
+ [ -x $2 ] || GDB_SERVER_PORT="$2"
+ ;;
+ *)
+ usage
+ exit
+ ;;
+ esac
+done
PLUGINS=""
+. /usr/lib/vdr/config-loader.sh
. /usr/lib/vdr/commands-loader.sh
. /usr/lib/vdr/plugin-loader.sh
@@ -37,7 +67,7 @@
else
GDB_COMMANDS_FILE=/tmp/gdbcommands
-
+
echo "set args $VDRCOMMANDLINE" >$GDB_COMMANDS_FILE
echo "echo -----------------------\n" >>$GDB_COMMANDS_FILE
echo "echo ---- VDR-Debugging ----\n" >>$GDB_COMMANDS_FILE
Modified: vdr/vdr/trunk/debian/patches/00list
URL: http://svn.debian.org/wsvn/pkg-vdr-dvb/vdr/vdr/trunk/debian/patches/00list?rev=6952&op=diff
==============================================================================
--- vdr/vdr/trunk/debian/patches/00list (original)
+++ vdr/vdr/trunk/debian/patches/00list Wed May 21 09:24:10 2008
@@ -84,3 +84,6 @@
# Modifies the start time of recordings to the first cutting mark
# (disabled by default - enable in VDR's recording setup)
# opt-51_cuttime
+
+# Records into smaller files and uses hardlinks to speed up cutting
+# opt-52_hard_link_cutter
Modified: vdr/vdr/trunk/debian/patches/opt-20_liemikuutio.dpatch
URL: http://svn.debian.org/wsvn/pkg-vdr-dvb/vdr/vdr/trunk/debian/patches/opt-20_liemikuutio.dpatch?rev=6952&op=diff
==============================================================================
--- vdr/vdr/trunk/debian/patches/opt-20_liemikuutio.dpatch (original)
+++ vdr/vdr/trunk/debian/patches/opt-20_liemikuutio.dpatch Wed May 21 09:24:10 2008
@@ -1,6 +1,6 @@
#! /bin/sh /usr/share/dpatch/dpatch-run
## opt-20_liemikuutio.dpatch by Rolf Ahrenberg <Rolf.Ahrenberg AT sci.fi>
-## http://www.saunalahti.fi/~rahrenbe/vdr/patches/vdr-1.6.0-liemikuutio-1.19.diff.gz
+## http://www.saunalahti.fi/~rahrenbe/vdr/patches/vdr-1.6.0-liemikuutio-1.21.diff.gz
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Patch collection - see HISTORY-liemikuutio for details.
@@ -8,8 +8,8 @@
@DPATCH@
diff -Nru vdr-1.6.0-vanilla/HISTORY-liemikuutio vdr-1.6.0-liemikuutio/HISTORY-liemikuutio
--- vdr-1.6.0-vanilla/HISTORY-liemikuutio 1970-01-01 02:00:00.000000000 +0200
-+++ vdr-1.6.0-liemikuutio/HISTORY-liemikuutio 2008-03-27 21:47:57.000000000 +0200
-@@ -0,0 +1,97 @@
++++ vdr-1.6.0-liemikuutio/HISTORY-liemikuutio 2008-05-08 22:47:59.000000000 +0300
+@@ -0,0 +1,108 @@
+-----------------------------------
+Liemikuutio for Video Disc Recorder
+
@@ -107,6 +107,17 @@
+- Modified binary skip to use kPrev and kNext keys and the skip is now
+ always shortened after a direction change (Thanks to Timo Eskola).
+- Readded k1_k3_jumps_20s patch.
++
++2008-04-04: Version 1.20
++
++- Added bitrate information into rename menu.
++- Readded the path editing support of rename recordings patch (Thanks
++ to Firefly).
++
++2008-05-08: Version 1.21
++
++- Fixed rename recordings (Thanks to Firefly).
++- Added a DVB subtitles hack for old recordings (Thanks to Anssi Hannula).
diff -Nru vdr-1.6.0-vanilla/config.c vdr-1.6.0-liemikuutio/config.c
--- vdr-1.6.0-vanilla/config.c 2008-03-27 21:43:25.000000000 +0200
+++ vdr-1.6.0-liemikuutio/config.c 2008-03-27 21:47:57.000000000 +0200
@@ -148,12 +159,12 @@
diff -Nru vdr-1.6.0-vanilla/config.h vdr-1.6.0-liemikuutio/config.h
--- vdr-1.6.0-vanilla/config.h 2008-03-27 21:43:25.000000000 +0200
-+++ vdr-1.6.0-liemikuutio/config.h 2008-03-27 21:47:57.000000000 +0200
++++ vdr-1.6.0-liemikuutio/config.h 2008-04-26 23:23:40.000000000 +0300
@@ -36,6 +36,8 @@
// plugins to work with newer versions of the core VDR as long as no
// VDR header files have changed.
-+#define LIEMIKUUTIO 119
++#define LIEMIKUUTIO 121
+
#define MAXPRIORITY 99
#define MAXLIFETIME 99
@@ -166,9 +177,22 @@
int __EndData__;
cSetup(void);
cSetup& operator= (const cSetup &s);
+diff -Nru vdr-1.6.0-vanilla/device.c vdr-1.6.0-liemikuutio/device.c
+--- vdr-1.6.0-vanilla/device.c 2008-03-27 21:43:25.000000000 +0200
++++ vdr-1.6.0-liemikuutio/device.c 2008-05-08 22:50:10.000000000 +0300
+@@ -1100,7 +1100,8 @@
+ int LanguagePreference = INT_MAX; // higher than the maximum possible value
+ for (int i = ttSubtitleFirst; i <= ttSubtitleLast; i++) {
+ const tTrackId *TrackId = GetTrack(eTrackType(i));
+- if (TrackId && TrackId->id && I18nIsPreferredLanguage(Setup.SubtitleLanguages, TrackId->language, LanguagePreference))
++ if (TrackId && TrackId->id && (I18nIsPreferredLanguage(Setup.SubtitleLanguages, TrackId->language, LanguagePreference) ||
++ ((i == ttSubtitleFirst + 8) && !(*TrackId->language) && (LanguagePreference == INT_MAX))))
+ PreferredTrack = eTrackType(i);
+ }
+ // Make sure we're set to an available subtitle track:
diff -Nru vdr-1.6.0-vanilla/menu.c vdr-1.6.0-liemikuutio/menu.c
--- vdr-1.6.0-vanilla/menu.c 2008-03-27 21:43:25.000000000 +0200
-+++ vdr-1.6.0-liemikuutio/menu.c 2008-03-27 21:47:57.000000000 +0200
++++ vdr-1.6.0-liemikuutio/menu.c 2008-04-04 00:23:09.000000000 +0300
@@ -13,6 +13,7 @@
#include <stdio.h>
#include <stdlib.h>
@@ -177,7 +201,42 @@
#include "channels.h"
#include "config.h"
#include "cutter.h"
-@@ -1048,7 +1049,8 @@
+@@ -705,7 +706,22 @@
+ Add(new cMenuEditBitItem( tr("VPS"), &data.flags, tfVps));
+ Add(new cMenuEditIntItem( tr("Priority"), &data.priority, 0, MAXPRIORITY));
+ Add(new cMenuEditIntItem( tr("Lifetime"), &data.lifetime, 0, MAXLIFETIME));
+- Add(new cMenuEditStrItem( tr("File"), data.file, sizeof(data.file)));
++
++ char* p = strrchr(data.file, '~');
++ if (p) {
++ p++;
++ Utf8Strn0Cpy(name, p, sizeof(name));
++ Utf8Strn0Cpy(path, data.file, sizeof(path));
++ p = strrchr(path, '~');
++ if (p)
++ p[0] = 0;
++ }
++ else {
++ Utf8Strn0Cpy(name, data.file, sizeof(name));
++ Utf8Strn0Cpy(path, "", sizeof(path));
++ }
++ Add(new cMenuEditStrItem( tr("File"), name, sizeof(name), tr(FileNameChars)));
++ Add(new cMenuEditRecPathItem(tr("Path"), path, sizeof(path)));
+ SetFirstDayItem();
+ }
+ Timers.IncBeingEdited();
+@@ -745,6 +761,10 @@
+ Skins.Message(mtError, tr("*** Invalid Channel ***"));
+ break;
+ }
++ if(strlen(path))
++ snprintf(data.file, sizeof(data.file), "%s~%s", path, name);
++ else
++ snprintf(data.file, sizeof(data.file), "%s", name);
+ if (!*data.file)
+ strcpy(data.file, data.Channel()->ShortName(true));
+ if (timer) {
+@@ -1048,7 +1068,8 @@
const cChannel *channel;
bool withDate;
int timerMatch;
@@ -187,7 +246,7 @@
static void SetSortMode(eScheduleSortMode SortMode) { sortMode = SortMode; }
static void IncSortMode(void) { sortMode = eScheduleSortMode((sortMode == ssmAllAll) ? ssmAllThis : sortMode + 1); }
static eScheduleSortMode SortMode(void) { return sortMode; }
-@@ -1058,12 +1060,13 @@
+@@ -1058,12 +1079,13 @@
cMenuScheduleItem::eScheduleSortMode cMenuScheduleItem::sortMode = ssmAllThis;
@@ -202,7 +261,7 @@
Update(true);
}
-@@ -1080,6 +1083,17 @@
+@@ -1080,6 +1102,17 @@
static const char *TimerMatchChars = " tT";
@@ -220,7 +279,7 @@
bool cMenuScheduleItem::Update(bool Force)
{
bool result = false;
-@@ -1095,7 +1109,14 @@
+@@ -1095,7 +1128,14 @@
if (channel && withDate)
buffer = cString::sprintf("%d\t%.*s\t%.*s\t%s\t%c%c%c\t%s", channel->Number(), Utf8SymChars(csn, 6), csn, Utf8SymChars(eds, 6), *eds, *event->GetTimeString(), t, v, r, event->Title());
else if (channel)
@@ -236,7 +295,7 @@
else
buffer = cString::sprintf("%.*s\t%s\t%c%c%c\t%s", Utf8SymChars(eds, 6), *eds, *event->GetTimeString(), t, v, r, event->Title());
SetText(buffer);
-@@ -1129,7 +1150,7 @@
+@@ -1129,7 +1169,7 @@
const cEvent *cMenuWhatsOn::scheduleEvent = NULL;
cMenuWhatsOn::cMenuWhatsOn(const cSchedules *Schedules, bool Now, int CurrentChannelNr)
@@ -245,7 +304,7 @@
{
now = Now;
helpKeys = -1;
-@@ -1141,7 +1162,7 @@
+@@ -1141,7 +1181,7 @@
if (Schedule) {
const cEvent *Event = Now ? Schedule->GetPresentEvent() : Schedule->GetFollowingEvent();
if (Event)
@@ -254,7 +313,7 @@
}
}
}
-@@ -1883,7 +1904,7 @@
+@@ -1883,7 +1923,7 @@
fileName = strdup(Recording->FileName());
name = NULL;
totalEntries = newEntries = 0;
@@ -263,7 +322,7 @@
if (*Text() == '\t')
name = strdup(Text() + 2); // 'Text() + 2' to skip the two '\t'
}
-@@ -1899,13 +1920,133 @@
+@@ -1899,13 +1939,155 @@
totalEntries++;
if (New)
newEntries++;
@@ -292,6 +351,7 @@
+ int lifetime;
+ int priority;
+ char name[MaxFileName];
++ char path[MaxFileName];
+ cOsdItem *marksItem, *resumeItem;
+ bool isResume, isMarks;
+ cRecording *recording;
@@ -308,9 +368,22 @@
+ recording = Recording;
+ priority = recording->priority;
+ lifetime = recording->lifetime;
-+ Utf8Strn0Cpy(name, recording->Name(), sizeof(name));
-+
-+ Add(new cMenuEditStrItem(tr("File"), name, sizeof(name), tr(FileNameChars)));
++
++ char* p = strrchr(recording->Name(), '~');
++ if (p) {
++ p++;
++ Utf8Strn0Cpy(name, p, sizeof(name));
++ Utf8Strn0Cpy(path, recording->Name(), sizeof(path));
++ p = strrchr(path, '~');
++ if (p)
++ p[0] = 0;
++ }
++ else {
++ Utf8Strn0Cpy(name, recording->Name(), sizeof(name));
++ Utf8Strn0Cpy(path, "", sizeof(path));
++ }
++ Add(new cMenuEditStrItem(tr("Name"), name, sizeof(name), tr(FileNameChars)));
++ Add(new cMenuEditRecPathItem(tr("Path"), path, sizeof(path) ));
+ Add(new cMenuEditIntItem(tr("Priority"), &priority, 0, MAXPRIORITY ));
+ Add(new cMenuEditIntItem(tr("Lifetime"), &lifetime, 0, MAXLIFETIME ));
+
@@ -323,13 +396,16 @@
+ Add(new cOsdItem(cString::sprintf("%s:\t%s", tr("Channel"), *ChannelString(channel, 0)), osUnknown, false));
+
+ cIndexFile *index = new cIndexFile(recording->FileName(), false);
++ int recLen = 0;
+ if (index) {
++ recLen = index->Last() / FRAMESPERSEC;
+ Add(new cOsdItem(cString::sprintf("%s:\t%s", tr("Length"), *IndexToHMSF(index->Last())), osUnknown, false));
+ delete index;
+ }
+
+ int dirSize = DirSizeMB(recording->FileName());
-+ Add(new cOsdItem((dirSize > 9999) ? cString::sprintf("%s:\t%.2f GB", tr("Size"), dirSize / 1024.0) : cString::sprintf("%s:\t%d MB", tr("Size"), dirSize), osUnknown, false));
++ cString bitRate = recLen ? cString::sprintf(" (%.2f MBit/s)", 8.0 * dirSize / recLen) : cString("");
++ Add(new cOsdItem((dirSize > 9999) ? cString::sprintf("%s:\t%.2f GB%s", tr("Size"), dirSize / 1024.0, *bitRate) : cString::sprintf("%s:\t%d MB%s", tr("Size"), dirSize, *bitRate), osUnknown, false));
+
+ Add(new cOsdItem("", osUnknown, false));
+
@@ -349,7 +425,12 @@
+
+ if (state == osUnknown) {
+ if (Key == kOk) {
-+ if (recording->Rename(name, &priority, &lifetime)) {
++ char buffer[MaxFileName];
++ if (Utf8StrLen(path))
++ snprintf(buffer, sizeof(buffer), "%s~%s", path, name);
++ else
++ snprintf(buffer, sizeof(buffer), "%s", name);
++ if (recording->Rename(buffer, &priority, &lifetime)) {
+ Recordings.ChangeState();
+ Recordings.TouchUpdate();
+ return osRecordings;
@@ -399,7 +480,7 @@
{
base = Base ? strdup(Base) : NULL;
level = Setup.RecordingDirs ? Level : -1;
-@@ -2136,6 +2277,19 @@
+@@ -2136,6 +2318,19 @@
return osContinue;
}
@@ -419,7 +500,7 @@
eOSState cMenuRecordings::ProcessKey(eKeys Key)
{
bool HadSubMenu = HasSubMenu();
-@@ -2150,7 +2304,12 @@
+@@ -2150,7 +2345,12 @@
case kYellow: return Delete();
case kInfo:
case kBlue: return Info();
@@ -433,7 +514,7 @@
case kNone: if (Recordings.StateChanged(recordingsState))
Set(true);
break;
-@@ -2276,6 +2435,7 @@
+@@ -2276,6 +2476,7 @@
Add(new cMenuEditBoolItem(tr("Setup.OSD$Scroll wraps"), &data.MenuScrollWrap));
Add(new cMenuEditBoolItem(tr("Setup.OSD$Menu key closes"), &data.MenuKeyCloses));
Add(new cMenuEditBoolItem(tr("Setup.OSD$Recording directories"), &data.RecordingDirs));
@@ -441,7 +522,7 @@
SetCurrent(Get(current));
Display();
}
-@@ -2380,6 +2540,7 @@
+@@ -2380,6 +2581,7 @@
Add(new cMenuEditIntItem( tr("Setup.EPG$EPG scan timeout (h)"), &data.EPGScanTimeout));
Add(new cMenuEditIntItem( tr("Setup.EPG$EPG bugfix level"), &data.EPGBugfixLevel, 0, MAXEPGBUGFIXLEVEL));
Add(new cMenuEditIntItem( tr("Setup.EPG$EPG linger time (min)"), &data.EPGLinger, 0));
@@ -449,7 +530,7 @@
Add(new cMenuEditBoolItem(tr("Setup.EPG$Set system time"), &data.SetSystemTime));
if (data.SetSystemTime)
Add(new cMenuEditTranItem(tr("Setup.EPG$Use time from transponder"), &data.TimeTransponder, &data.TimeSource));
-@@ -2758,6 +2919,9 @@
+@@ -2758,6 +2960,9 @@
Add(new cMenuEditIntItem( tr("Setup.Recording$Instant rec. time (min)"), &data.InstantRecordTime, 1, MAXINSTANTRECTIME));
Add(new cMenuEditIntItem( tr("Setup.Recording$Max. video file size (MB)"), &data.MaxVideoFileSize, MINVIDEOFILESIZE, MAXVIDEOFILESIZE));
Add(new cMenuEditBoolItem(tr("Setup.Recording$Split edited files"), &data.SplitEditedFiles));
@@ -459,7 +540,7 @@
}
// --- cMenuSetupReplay ------------------------------------------------------
-@@ -3045,6 +3209,7 @@
+@@ -3045,6 +3250,7 @@
// Replay control:
if (replaying && !stopReplayItem)
// TRANSLATORS: note the leading blank!
@@ -467,7 +548,7 @@
Add(stopReplayItem = new cOsdItem(tr(" Stop replaying"), osStopReplay));
else if (stopReplayItem && !replaying) {
Del(stopReplayItem->Index());
-@@ -3059,6 +3224,7 @@
+@@ -3059,6 +3265,7 @@
bool CutterActive = cCutter::Active();
if (CutterActive && !cancelEditingItem) {
// TRANSLATORS: note the leading blank!
@@ -475,7 +556,7 @@
Add(cancelEditingItem = new cOsdItem(tr(" Cancel editing"), osCancelEdit));
result = true;
}
-@@ -3079,6 +3245,7 @@
+@@ -3079,6 +3286,7 @@
while ((s = cRecordControls::GetInstantId(s)) != NULL) {
cOsdItem *item = new cOsdItem(osStopRecord);
item->SetText(cString::sprintf("%s%s", tr(STOP_RECORDING), s));
@@ -483,7 +564,7 @@
Add(item);
if (!stopRecordingItem)
stopRecordingItem = item;
-@@ -4059,6 +4226,10 @@
+@@ -4059,6 +4267,10 @@
// --- cReplayControl --------------------------------------------------------
@@ -494,7 +575,7 @@
cReplayControl *cReplayControl::currentReplayControl = NULL;
char *cReplayControl::fileName = NULL;
char *cReplayControl::title = NULL;
-@@ -4072,6 +4243,9 @@
+@@ -4072,6 +4284,9 @@
lastCurrent = lastTotal = -1;
lastPlay = lastForward = false;
lastSpeed = -2; // an invalid value
@@ -504,7 +585,7 @@
timeoutShow = 0;
timeSearchActive = false;
marks.Load(fileName);
-@@ -4435,6 +4609,32 @@
+@@ -4435,6 +4650,32 @@
case kGreen: SkipSeconds(-60); break;
case kYellow|k_Repeat:
case kYellow: SkipSeconds( 60); break;
@@ -537,7 +618,7 @@
case kStop:
case kBlue: Hide();
Stop();
-@@ -4444,12 +4644,8 @@
+@@ -4444,12 +4685,8 @@
switch (Key) {
// Editing:
case kMarkToggle: MarkToggle(); break;
@@ -552,16 +633,17 @@
case kMarkMoveBack|k_Repeat:
diff -Nru vdr-1.6.0-vanilla/menu.h vdr-1.6.0-liemikuutio/menu.h
--- vdr-1.6.0-vanilla/menu.h 2008-03-27 21:43:25.000000000 +0200
-+++ vdr-1.6.0-liemikuutio/menu.h 2008-03-27 21:47:56.000000000 +0200
-@@ -35,6 +35,7 @@
++++ vdr-1.6.0-liemikuutio/menu.h 2008-04-03 23:24:39.000000000 +0300
+@@ -35,6 +35,8 @@
private:
cTimer *timer;
cTimer data;
+ char name[MaxFileName];
++ char path[MaxFileName];
int channel;
bool addIfConfirmed;
cMenuEditDateItem *firstday;
-@@ -163,6 +164,7 @@
+@@ -163,6 +165,7 @@
eOSState Delete(void);
eOSState Info(void);
eOSState Commands(eKeys Key = kNone);
@@ -569,7 +651,7 @@
protected:
cRecording *GetRecording(cMenuRecordingItem *Item);
public:
-@@ -217,6 +219,9 @@
+@@ -217,6 +220,9 @@
int lastCurrent, lastTotal;
bool lastPlay, lastForward;
int lastSpeed;
@@ -579,6 +661,237 @@
time_t timeoutShow;
bool timeSearchActive, timeSearchHide;
int timeSearchTime, timeSearchPos;
+diff -Nru vdr-1.6.0-vanilla/menuitems.c vdr-1.6.0-liemikuutio/menuitems.c
+--- vdr-1.6.0-vanilla/menuitems.c 2008-03-27 21:43:25.000000000 +0200
++++ vdr-1.6.0-liemikuutio/menuitems.c 2008-04-26 23:23:31.000000000 +0300
+@@ -619,6 +619,168 @@
+ return osContinue;
+ }
+
++// --- cMenuEditRecPathItem --------------------------------------------------
++
++cMenuEditRecPathItem::cMenuEditRecPathItem(const char* Name, char* Path,
++ int Length): cMenuEditStrItem(Name, Path, Length, tr(FileNameChars))
++{
++ SetBase(Path);
++}
++
++cMenuEditRecPathItem::~cMenuEditRecPathItem()
++{
++}
++
++void cMenuEditRecPathItem::SetBase(const char* Path)
++{
++ if (!Path)
++ base[0] = 0;
++ Utf8Strn0Cpy(base, Path, sizeof(base));
++ char* p = strrchr(base, '~');
++ if (p)
++ p[0] = 0;
++ else
++ base[0] = 0;
++}
++
++void cMenuEditRecPathItem::FindNextLevel()
++{
++ char item[MaxFileName];
++
++ for (cRecording *recording = Recordings.First(); recording; recording = Recordings.Next(recording))
++ {
++ char* p;
++ Utf8Strn0Cpy(item, recording->Name(), sizeof(item));
++ stripspace(value);
++ lengthUtf8 = Utf8ToArray(value, valueUtf8, length);
++ if (!lengthUtf8)
++ p = strchr(item, '~');
++ else {
++ if (strstr(item, value) != item)
++ continue;
++ if (item[strlen(value)] != '~')
++ continue;
++ p = strchr(item + strlen(value) + 1, '~');
++ }
++ if (!p)
++ continue;
++ p[0] = 0;
++ Utf8Strn0Cpy(base, value, length);
++ Utf8Strn0Cpy(value, item, length);
++ lengthUtf8 = Utf8ToArray(value, valueUtf8, length);
++ return;
++ }
++}
++
++void cMenuEditRecPathItem::Find(bool Next)
++{
++ char item[MaxFileName];
++ char lastItem[MaxFileName] = "";
++
++ for (cRecording *recording = Recordings.First(); recording; recording = Recordings.Next(recording))
++ {
++ const char* recName = recording->Name();
++ if (Utf8StrLen(base) && strstr(recName, base) != recName)
++ continue;
++ if (strlen(base) && recName[strlen(base)] != '~')
++ continue;
++ Utf8Strn0Cpy(item, recName, sizeof(item));
++ char* p = strchr(item + strlen(base) + 1, '~');
++ if (!p)
++ continue;
++ p[0] = 0;
++ if (!Next && (strcmp(item, value) == 0)) {
++ if (strlen(lastItem))
++ Utf8Strn0Cpy(value, lastItem, length);
++ lengthUtf8 = Utf8ToArray(value, valueUtf8, length);
++ return;
++ }
++ if (strcmp(lastItem, item) != 0) {
++ if(Next && Utf8StrLen(lastItem) && strcmp(lastItem, value) == 0) {
++ Utf8Strn0Cpy(value, item, length);
++ lengthUtf8 = Utf8ToArray(value, valueUtf8, length);
++ return;
++ }
++ Utf8Strn0Cpy(lastItem, item, sizeof(lastItem));
++ }
++ }
++}
++
++void cMenuEditRecPathItem::SetHelpKeys(void)
++{
++ cSkinDisplay::Current()->SetButtons(tr("Rename$Up"), tr("Rename$Down"), tr("Rename$Previous"), tr("Rename$Next"));
++}
++
++eOSState cMenuEditRecPathItem::ProcessKey(eKeys Key)
++{
++ switch (Key) {
++ case kLeft:
++ case kRed: // one level up
++ if (!InEditMode())
++ return cMenuEditItem::ProcessKey(Key);
++ Utf8Strn0Cpy(value, base, lengthUtf8);
++ lengthUtf8 = Utf8ToArray(value, valueUtf8, length);
++ SetBase(base);
++ pos = Utf8StrLen(base);
++ if (pos)
++ pos++;
++ if (!lengthUtf8) {
++ Utf8Strn0Cpy(value, " ", length);
++ lengthUtf8 = Utf8ToArray(value, valueUtf8, length);
++ }
++ break;
++ case kRight:
++ case kGreen: // one level down
++ if (InEditMode())
++ FindNextLevel();
++ else
++ EnterEditMode();
++ if (!lengthUtf8) {
++ Utf8Strn0Cpy(value, " ", length);
++ lengthUtf8 = Utf8ToArray(value, valueUtf8, length);
++ }
++ pos = Utf8StrLen(base);
++ if (pos)
++ pos++;
++ SetHelpKeys();
++ break;
++ case kUp|k_Repeat:
++ case kUp:
++ case kYellow|k_Repeat:
++ case kYellow: // previous directory in list
++ if (!InEditMode())
++ return cMenuEditItem::ProcessKey(Key);
++ Find(false);
++ pos = Utf8StrLen(base);
++ if (pos)
++ pos++;
++ break;
++ case kDown|k_Repeat:
++ case kDown:
++ case kBlue|k_Repeat:
++ case kBlue: // next directory in list
++ if (!InEditMode())
++ return cMenuEditItem::ProcessKey(Key);
++ Find(true);
++ pos = Utf8StrLen(base);
++ if (pos)
++ pos++;
++ break;
++ case kOk: // done
++ if (!InEditMode())
++ return cMenuEditItem::ProcessKey(Key);
++ stripspace(value);
++ lengthUtf8 = Utf8ToArray(value, valueUtf8, length);
++ cSkinDisplay::Current()->SetButtons(NULL);
++ LeaveEditMode(Key == kOk);
++ break;
++ default:
++ return cMenuEditItem::ProcessKey(Key);
++ }
++ Set();
++ return osContinue;
++}
++
+ // --- cMenuEditStraItem -----------------------------------------------------
+
+ cMenuEditStraItem::cMenuEditStraItem(const char *Name, int *Value, int NumStrings, const char * const *Strings)
+diff -Nru vdr-1.6.0-vanilla/menuitems.h vdr-1.6.0-liemikuutio/menuitems.h
+--- vdr-1.6.0-vanilla/menuitems.h 2008-03-27 21:43:25.000000000 +0200
++++ vdr-1.6.0-liemikuutio/menuitems.h 2008-04-03 23:24:39.000000000 +0300
+@@ -78,26 +78,27 @@
+
+ class cMenuEditStrItem : public cMenuEditItem {
+ private:
+- char *value;
+- int length;
+- const char *allowed;
+- int pos, offset;
++ int offset;
+ bool insert, newchar, uppercase;
+- int lengthUtf8;
+- uint *valueUtf8;
+ uint *allowedUtf8;
+ uint *charMapUtf8;
+ uint *currentCharUtf8;
+ eKeys lastKey;
+ cTimeMs autoAdvanceTimeout;
+- void SetHelpKeys(void);
+ uint *IsAllowed(uint c);
+ void AdvancePos(void);
+- virtual void Set(void);
+ uint Inc(uint c, bool Up);
+ void Insert(void);
+ void Delete(void);
+ protected:
++ char *value;
++ int length;
++ uint *valueUtf8;
++ int lengthUtf8;
++ const char *allowed;
++ int pos;
++ void SetHelpKeys(void);
++ virtual void Set(void);
+ void EnterEditMode(void);
+ void LeaveEditMode(bool SaveValue = false);
+ bool InEditMode(void) { return valueUtf8 != NULL; }
+@@ -107,6 +108,19 @@
+ virtual eOSState ProcessKey(eKeys Key);
+ };
+
++class cMenuEditRecPathItem : public cMenuEditStrItem {
++protected:
++ char base[MaxFileName];
++ virtual void SetHelpKeys(void);
++ void SetBase(const char* Path);
++ void FindNextLevel();
++ void Find(bool Next);
++public:
++ cMenuEditRecPathItem(const char* Name, char* Path, int Length);
++ ~cMenuEditRecPathItem();
++ virtual eOSState ProcessKey(eKeys Key);
++ };
++
+ class cMenuEditStraItem : public cMenuEditIntItem {
+ private:
+ const char * const *strings;
diff -Nru vdr-1.6.0-vanilla/osdbase.c vdr-1.6.0-liemikuutio/osdbase.c
--- vdr-1.6.0-vanilla/osdbase.c 2008-03-27 21:43:25.000000000 +0200
+++ vdr-1.6.0-liemikuutio/osdbase.c 2008-03-27 21:47:56.000000000 +0200
@@ -690,8 +1003,8 @@
cSkinDisplayMenu *DisplayMenu(void) { return displayMenu; }
diff -Nru vdr-1.6.0-vanilla/po/de_DE.po vdr-1.6.0-liemikuutio/po/de_DE.po
--- vdr-1.6.0-vanilla/po/de_DE.po 2008-03-27 21:43:25.000000000 +0200
-+++ vdr-1.6.0-liemikuutio/po/de_DE.po 2008-03-27 21:47:57.000000000 +0200
-@@ -998,3 +998,36 @@
++++ vdr-1.6.0-liemikuutio/po/de_DE.po 2008-04-03 23:31:27.000000000 +0300
+@@ -998,3 +998,51 @@
#, c-format
msgid "VDR will shut down in %s minutes"
msgstr "VDR wird in %s Minuten ausschalten"
@@ -707,6 +1020,21 @@
+
+msgid "Size"
+msgstr "Größe"
++
++msgid "Path"
++msgstr "Pfad"
++
++msgid "Rename$Up"
++msgstr "Höher"
++
++msgid "Rename$Down"
++msgstr "Tiefer"
++
++msgid "Rename$Previous"
++msgstr "Vorheriger"
++
++msgid "Rename$Next"
++msgstr "Nächster"
+
+msgid "Delete marks information?"
+msgstr "Marks löschen?"
@@ -730,8 +1058,8 @@
+msgstr "Länge der Aufnahme anzeigen"
diff -Nru vdr-1.6.0-vanilla/po/et_EE.po vdr-1.6.0-liemikuutio/po/et_EE.po
--- vdr-1.6.0-vanilla/po/et_EE.po 2008-03-27 21:43:25.000000000 +0200
-+++ vdr-1.6.0-liemikuutio/po/et_EE.po 2008-03-27 21:47:57.000000000 +0200
-@@ -998,3 +998,36 @@
++++ vdr-1.6.0-liemikuutio/po/et_EE.po 2008-04-03 23:38:43.000000000 +0300
+@@ -998,3 +998,51 @@
#, c-format
msgid "VDR will shut down in %s minutes"
msgstr "VDR lülitub välja %s minuti pärast"
@@ -747,6 +1075,21 @@
+
+msgid "Size"
+msgstr ""
++
++msgid "Path"
++msgstr ""
++
++msgid "Rename$Up"
++msgstr "Üles"
++
++msgid "Rename$Down"
++msgstr "Alla"
++
++msgid "Rename$Previous"
++msgstr "Eelmine"
++
++msgid "Rename$Next"
++msgstr "Järgmine"
+
+msgid "Delete marks information?"
+msgstr ""
@@ -770,8 +1113,8 @@
+msgstr "Salvestuse pikkus"
diff -Nru vdr-1.6.0-vanilla/po/fi_FI.po vdr-1.6.0-liemikuutio/po/fi_FI.po
--- vdr-1.6.0-vanilla/po/fi_FI.po 2008-03-27 21:43:25.000000000 +0200
-+++ vdr-1.6.0-liemikuutio/po/fi_FI.po 2008-03-27 21:47:57.000000000 +0200
-@@ -1001,3 +1001,36 @@
++++ vdr-1.6.0-liemikuutio/po/fi_FI.po 2008-04-03 23:34:26.000000000 +0300
+@@ -1001,3 +1001,51 @@
#, c-format
msgid "VDR will shut down in %s minutes"
msgstr "VDR sammuu %s minuutin kuluttua"
@@ -787,6 +1130,21 @@
+
+msgid "Size"
+msgstr "Koko"
++
++msgid "Path"
++msgstr "Polku"
++
++msgid "Rename$Up"
++msgstr "Ylemmäs"
++
++msgid "Rename$Down"
++msgstr "Alemmas"
++
++msgid "Rename$Previous"
++msgstr "Edellinen"
++
++msgid "Rename$Next"
++msgstr "Seuraava"
+
+msgid "Delete marks information?"
+msgstr "Poista tallenteen merkinnät?"
@@ -810,8 +1168,8 @@
+msgstr "Näytä tallenteen kesto"
diff -Nru vdr-1.6.0-vanilla/po/fr_FR.po vdr-1.6.0-liemikuutio/po/fr_FR.po
--- vdr-1.6.0-vanilla/po/fr_FR.po 2008-03-27 21:43:25.000000000 +0200
-+++ vdr-1.6.0-liemikuutio/po/fr_FR.po 2008-03-27 21:47:57.000000000 +0200
-@@ -1004,3 +1004,36 @@
++++ vdr-1.6.0-liemikuutio/po/fr_FR.po 2008-04-03 23:36:49.000000000 +0300
+@@ -1004,3 +1004,51 @@
#, c-format
msgid "VDR will shut down in %s minutes"
msgstr "VDR s'arrêtera dans %s minutes"
@@ -827,6 +1185,21 @@
+
+msgid "Size"
+msgstr "Taille"
++
++msgid "Path"
++msgstr ""
++
++msgid "Rename$Up"
++msgstr "Haut"
++
++msgid "Rename$Down"
++msgstr "Bas"
++
++msgid "Rename$Previous"
++msgstr "Précédent"
++
++msgid "Rename$Next"
++msgstr "Suivant"
+
+msgid "Delete marks information?"
+msgstr "Effacer les informations de marquage"
Modified: vdr/vdr/trunk/debian/patches/opt-39_noepg.dpatch
URL: http://svn.debian.org/wsvn/pkg-vdr-dvb/vdr/vdr/trunk/debian/patches/opt-39_noepg.dpatch?rev=6952&op=diff
==============================================================================
--- vdr/vdr/trunk/debian/patches/opt-39_noepg.dpatch (original)
+++ vdr/vdr/trunk/debian/patches/opt-39_noepg.dpatch Wed May 21 09:24:10 2008
@@ -1,69 +1,103 @@
#! /bin/sh /usr/share/dpatch/dpatch-run
-## opt-39_noepg.dpatch by Torsten/WarEagle at vdrportal.de
-## http://vdrportal.de/board/thread.php?postid=658080#post658080
-##
-## Thomas Günther <tom at toms-cafe.de>:
-## - solved conflicts with other patches
+## opt-39_noepg.dpatch from version the vdr-noepgmenu plugin 0.0.6.beta3
+## http://winni.vdr-developer.org/noepgmenu/downloads/beta
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: The patch allows to disable normal epg update for specified channels.
## DP: This is useful if you get epg data of the channels from external sources.
@DPATCH@
-diff -u -x '*~' -x runvdr -x Makefile vdr-1.5.9-org/config.c vdr-1.5.9+noEPG/config.c
---- vdr-1.5.9-org/config.c 2007-08-12 14:09:37.000000000 +0200
-+++ vdr-1.5.9+noEPG/config.c 2007-10-12 16:25:28.000000000 +0200
-@@ -286,1 +286,3 @@
-- InitialVolume = -1;
-+ InitialVolume = -1;
-+ noEPGMode = 0;
+diff -urNad vdr-1.6.0~/config.c vdr-1.6.0/config.c
+--- vdr-1.6.0~/config.c 2008-05-11 03:35:16.000000000 +0200
++++ vdr-1.6.0/config.c 2008-05-11 03:35:44.000000000 +0200
+@@ -339,11 +339,20 @@
+ ShowRecLength = 0;
+ ShowProgressBar = 0;
+ MenuCmdPosition = 0;
++ noEPGMode=0;
+ noEPGList=strdup("");
-@@ -450,1 +452,6 @@
-- else if (!strcasecmp(Name, "ShowReplayMode")) ShowReplayMode = atoi(Value);
-+ else if (!strcasecmp(Name, "ShowReplayMode")) ShowReplayMode = atoi(Value);
++}
++
++cSetup::~cSetup()
++{
++ free(noEPGList);
+ }
+
+ cSetup& cSetup::operator= (const cSetup &s)
+ {
+ memcpy(&__BeginData__, &s.__BeginData__, (char *)&s.__EndData__ - (char *)&s.__BeginData__);
++ free(noEPGList);
++ noEPGList = strdup(s.noEPGList);
+ return *this;
+ }
+
+@@ -504,6 +513,11 @@
+ else if (!strcasecmp(Name, "FontOsdSize")) FontOsdSize = atoi(Value);
+ else if (!strcasecmp(Name, "FontSmlSize")) FontSmlSize = atoi(Value);
+ else if (!strcasecmp(Name, "FontFixSize")) FontFixSize = atoi(Value);
+ else if (!strcasecmp(Name, "noEPGMode")) noEPGMode = atoi(Value);
-+ else if (!strcasecmp(Name, "noEPGList")){
++ else if (!strcasecmp(Name, "noEPGList")) {
+ free(noEPGList);
-+ noEPGList=strdup(Value);
++ noEPGList=strdup(Value ? Value : "");
+ }
-@@ -533,1 +540,3 @@
-- Store("InitialVolume", InitialVolume);
-+ Store("InitialVolume", InitialVolume);
+ else if (!strcasecmp(Name, "MaxVideoFileSize")) MaxVideoFileSize = atoi(Value);
+ else if (!strcasecmp(Name, "SplitEditedFiles")) SplitEditedFiles = atoi(Value);
+ else if (!strcasecmp(Name, "MinEventTimeout")) MinEventTimeout = atoi(Value);
+@@ -599,6 +613,8 @@
+ Store("FontOsd", FontOsd);
+ Store("FontSml", FontSml);
+ Store("FontFix", FontFix);
+ Store("noEPGMode", noEPGMode);
+ Store("noEPGList", noEPGList);
-diff -u -x '*~' -x runvdr -x Makefile vdr-1.5.9-org/config.h vdr-1.5.9+noEPG/config.h
---- vdr-1.5.9+jumpplay/config.h 2007-09-10 15:26:17.000000000 +0200
-+++ vdr-1.5.9+jumpplay+noepg/config.h 2007-10-13 18:18:37.000000000 +0200
-@@ -264,1 +264,3 @@
-- int InitialVolume;
-+ int InitialVolume;
-+ char *noEPGList;
+ Store("FontOsdSize", FontOsdSize);
+ Store("FontSmlSize", FontSmlSize);
+ Store("FontFixSize", FontFixSize);
+diff -urNad vdr-1.6.0~/config.h vdr-1.6.0/config.h
+--- vdr-1.6.0~/config.h 2008-05-11 03:35:16.000000000 +0200
++++ vdr-1.6.0/config.h 2008-05-11 03:35:16.000000000 +0200
+@@ -280,6 +280,7 @@
+ int FontOsdSize;
+ int FontSmlSize;
+ int FontFixSize;
+ int noEPGMode;
-diff -u -x '*~' -x runvdr -x Makefile vdr-1.5.9-org/eit.c vdr-1.5.9+noEPG/eit.c
---- vdr-1.5.9-org/eit.c 2007-07-28 15:16:43.000000000 +0200
-+++ vdr-1.5.9+noEPG/eit.c 2007-10-12 16:25:28.000000000 +0200
+ int MaxVideoFileSize;
+ int SplitEditedFiles;
+ int MinEventTimeout, MinUserInactivity;
+@@ -299,7 +300,9 @@
+ int EmergencyExit;
+ int ShowRecDate, ShowRecTime, ShowRecLength, ShowProgressBar, MenuCmdPosition;
+ int __EndData__;
++ char *noEPGList; // pointer not to be flat-copied
+ cSetup(void);
++ ~cSetup();
+ cSetup& operator= (const cSetup &s);
+ bool Load(const char *FileName);
+ bool Save(void);
+diff -urNad vdr-1.6.0~/eit.c vdr-1.6.0/eit.c
+--- vdr-1.6.0~/eit.c 2008-05-11 03:35:16.000000000 +0200
++++ vdr-1.6.0/eit.c 2008-05-11 03:35:16.000000000 +0200
@@ -22,8 +22,28 @@
class cEIT : public SI::EIT {
public:
cEIT(cSchedules *Schedules, int Source, u_char Tid, const u_char *Data, bool OnlyRunningStatus = false);
++
+private:
+ bool allowedEPG(tChannelID kanalID);
};
-+bool cEIT::allowedEPG(tChannelID kanalID){
++bool cEIT::allowedEPG(tChannelID kanalID) {
+ bool rc;
+
-+ if (Setup.noEPGMode == 1){
-+ rc=false;
-+ if (strstr(::Setup.noEPGList,kanalID.ToString())!=NULL){
-+ rc=true;
-+ }
-+ }else{
-+ rc=true;
-+ if (strstr(::Setup.noEPGList,kanalID.ToString())!=NULL){
-+ rc=false;
-+ }
-+ }
++ if (Setup.noEPGMode == 1) {
++ rc=false;
++ if (strstr(::Setup.noEPGList,kanalID.ToString())!=NULL)
++ rc=true;
++ }
++ else {
++ rc=true;
++ if (strstr(::Setup.noEPGList,kanalID.ToString())!=NULL)
++ rc=false;
++ }
+
+ return rc;
+}
@@ -71,36 +105,23 @@
cEIT::cEIT(cSchedules *Schedules, int Source, u_char Tid, const u_char *Data, bool OnlyRunningStatus)
:SI::EIT(Data, false)
{
-@@ -35,6 +55,15 @@
+@@ -35,6 +55,12 @@
if (!channel)
return; // only collect data for known channels
-+ // noepg >>>
-+ //only use epg from channels not blocked by noEPG-patch
++ // only use epg from channels not blocked by noEPG-patch
+ tChannelID kanalID;
+ kanalID=channel->GetChannelID();
-+ if (!allowedEPG(kanalID)){
++ if (!allowedEPG(kanalID))
+ return;
-+ }
-+ // noepg <<<
+
cSchedule *pSchedule = (cSchedule *)Schedules->GetSchedule(channel, true);
bool Empty = true;
-
-diff -u -x '*~' -x runvdr -x Makefile vdr-1.5.9-org/po/de_DE.po vdr-1.5.9+noEPG/po/de_DE.po
---- vdr-1.5.9-org/po/de_DE.po 2007-08-19 13:53:29.000000000 +0200
-+++ vdr-1.5.9+noEPG/po/de_DE.po 2007-10-12 16:26:36.000000000 +0200
-@@ -1268,1 +1284,4 @@
-+msgid "Setup.EPG$Mode of noEPG-Patch"
-+msgstr "Art des noEPG-Patches"
-+
-+msgid "VDR will shut down in %s minutes"
--msgid "VDR will shut down in %s minutes"
-diff -u -x '*~' -x runvdr -x Makefile vdr-1.5.9-org/po/de_DE.po vdr-1.5.9+noEPG/po/de_DE.po
---- vdr-1.5.9+jumpplay/menu.c 2007-09-10 15:26:17.000000000 +0200
-+++ vdr-1.5.9+jumpplay+noepg/menu.c 2007-10-13 18:30:33.000000000 +0200
-@@ -2307,6 +2307,7 @@
+diff -urNad vdr-1.6.0~/menu.c vdr-1.6.0/menu.c
+--- vdr-1.6.0~/menu.c 2008-05-11 03:35:16.000000000 +0200
++++ vdr-1.6.0/menu.c 2008-05-11 03:35:16.000000000 +0200
+@@ -2604,6 +2604,7 @@
class cMenuSetupEPG : public cMenuSetupBase {
private:
@@ -108,7 +129,7 @@
int originalNumLanguages;
int numLanguages;
void Setup(void);
-@@ -2329,6 +2330,9 @@
+@@ -2626,6 +2627,9 @@
{
int current = Current();
@@ -118,7 +139,11 @@
Clear();
Add(new cMenuEditIntItem( tr("Setup.EPG$EPG scan timeout (h)"), &data.EPGScanTimeout));
-@@ -2344,1 +2348,2 @@
-- Add(new cMenuEditStraItem(tr("Setup.EPG$Preferred language"), &data.EPGLanguages[i], I18nLanguages()->Size(), &I18nLanguages()->At(0)));
-+ Add(new cMenuEditStraItem(tr("Setup.EPG$Preferred language"), &data.EPGLanguages[i], I18nLanguages()->Size(), &I18nLanguages()->At(0)));
+@@ -2644,6 +2648,7 @@
+ Add(new cMenuEditBoolItem(tr("Setup.EPG$extern double Epg entry"), &data.DoubleEpgAction, "adjust", "delete"));
+ Add(new cMenuEditBoolItem(tr("Setup.EPG$Mix intern and extern EPG"), &data.MixEpgAction));
+ Add(new cMenuEditBoolItem(tr("Setup.EPG$Disable running VPS event"), &data.DisableVPS));
+ Add(new cMenuEditStraItem(tr("Setup.EPG$Mode noEPG-Patch"), &data.noEPGMode, 2, noEPGModes));
+
+ SetCurrent(Get(current));
+ Display();
Modified: vdr/vdr/trunk/debian/patches/opt-48-x_pin.dpatch
URL: http://svn.debian.org/wsvn/pkg-vdr-dvb/vdr/vdr/trunk/debian/patches/opt-48-x_pin.dpatch?rev=6952&op=diff
==============================================================================
--- vdr/vdr/trunk/debian/patches/opt-48-x_pin.dpatch (original)
+++ vdr/vdr/trunk/debian/patches/opt-48-x_pin.dpatch Wed May 21 09:24:10 2008
@@ -13,8 +13,8 @@
@DPATCH@
diff -urNad vdr-1.6.0~/Makefile vdr-1.6.0/Makefile
---- vdr-1.6.0~/Makefile 2008-03-23 13:52:42.000000000 +0100
-+++ vdr-1.6.0/Makefile 2008-03-23 13:52:42.000000000 +0100
+--- vdr-1.6.0~/Makefile 2008-05-11 01:08:05.000000000 +0200
++++ vdr-1.6.0/Makefile 2008-05-11 01:08:06.000000000 +0200
@@ -45,6 +45,8 @@
OBJS += vdrttxtsubshooks.o
@@ -26,7 +26,7 @@
endif
diff -urNad vdr-1.6.0~/childlock.c vdr-1.6.0/childlock.c
--- vdr-1.6.0~/childlock.c 1970-01-01 01:00:00.000000000 +0100
-+++ vdr-1.6.0/childlock.c 2008-03-23 13:52:42.000000000 +0100
++++ vdr-1.6.0/childlock.c 2008-05-11 01:08:06.000000000 +0200
@@ -0,0 +1,166 @@
+#include "childlock.h"
+#include "childlockservice.h"
@@ -196,7 +196,7 @@
+}
diff -urNad vdr-1.6.0~/childlock.h vdr-1.6.0/childlock.h
--- vdr-1.6.0~/childlock.h 1970-01-01 01:00:00.000000000 +0100
-+++ vdr-1.6.0/childlock.h 2008-03-23 13:52:42.000000000 +0100
++++ vdr-1.6.0/childlock.h 2008-05-11 01:08:06.000000000 +0200
@@ -0,0 +1,47 @@
+#ifndef __CHILDLOCK_H
+#define __CHILDLOCK_H
@@ -247,7 +247,7 @@
+#endif
diff -urNad vdr-1.6.0~/childlockservice.h vdr-1.6.0/childlockservice.h
--- vdr-1.6.0~/childlockservice.h 1970-01-01 01:00:00.000000000 +0100
-+++ vdr-1.6.0/childlockservice.h 2008-03-23 13:52:42.000000000 +0100
++++ vdr-1.6.0/childlockservice.h 2008-05-11 01:08:06.000000000 +0200
@@ -0,0 +1,46 @@
+#ifndef __CHILDLOCKSERVICE_H
+#define __CHILDLOCKSERVICE_H
@@ -296,8 +296,8 @@
+};
+#endif
diff -urNad vdr-1.6.0~/device.c vdr-1.6.0/device.c
---- vdr-1.6.0~/device.c 2008-03-23 13:52:42.000000000 +0100
-+++ vdr-1.6.0/device.c 2008-03-23 13:52:42.000000000 +0100
+--- vdr-1.6.0~/device.c 2008-05-11 01:08:05.000000000 +0200
++++ vdr-1.6.0/device.c 2008-05-11 01:08:06.000000000 +0200
@@ -18,6 +18,7 @@
#include "receiver.h"
#include "status.h"
@@ -325,8 +325,8 @@
StopReplay();
DELETENULL(liveSubtitle);
diff -urNad vdr-1.6.0~/menu.c vdr-1.6.0/menu.c
---- vdr-1.6.0~/menu.c 2008-03-23 13:52:42.000000000 +0100
-+++ vdr-1.6.0/menu.c 2008-03-23 13:54:32.000000000 +0100
+--- vdr-1.6.0~/menu.c 2008-05-11 01:08:05.000000000 +0200
++++ vdr-1.6.0/menu.c 2008-05-11 01:09:10.000000000 +0200
@@ -32,6 +32,7 @@
#include "vdrttxtsubshooks.h"
#include "videodir.h"
@@ -335,18 +335,17 @@
#define MAXWAIT4EPGINFO 3 // seconds
#define MODETIMEOUT 3 // seconds
-@@ -756,6 +757,10 @@
- Add(new cMenuEditBitItem( tr("VPS"), &data.flags, tfVps));
+@@ -757,6 +758,9 @@
Add(new cMenuEditIntItem( tr("Priority"), &data.priority, 0, MAXPRIORITY));
Add(new cMenuEditIntItem( tr("Lifetime"), &data.lifetime, 0, MAXLIFETIME));
-+
+
+ if (PinPatch::ChildLock::IsUnlocked())
+ Add(new cMenuEditBitItem(tr("Timer$Childlock"), &data.flags, tfProtected));
+
- Add(new cMenuEditStrItem( tr("File"), data.file, sizeof(data.file)));
- SetFirstDayItem();
- }
-@@ -2301,7 +2306,8 @@
+ char* p = strrchr(data.file, '~');
+ if (p) {
+ p++;
+@@ -2344,7 +2348,8 @@
for (cRecording *recording = Recordings.First(); recording; recording = Recordings.Next(recording)) {
if (!base || (strstr(recording->Name(), base) == recording->Name() && recording->Name()[strlen(base)] == '~')) {
cMenuRecordingItem *Item = new cMenuRecordingItem(recording, level);
@@ -356,7 +355,7 @@
Add(Item);
LastItem = Item;
free(LastItemText);
-@@ -2364,6 +2370,9 @@
+@@ -2407,6 +2412,9 @@
{
cMenuRecordingItem *ri = (cMenuRecordingItem *)Get(Current());
if (ri) {
@@ -366,7 +365,7 @@
if (ri->IsDirectory())
Open();
else {
-@@ -3396,6 +3405,8 @@
+@@ -3439,6 +3447,8 @@
}
else if ((*i)->IsPluginItem()) {
const char *item = (*i)->PluginMenuEntry();
@@ -375,7 +374,7 @@
if (item)
osdItem = new cMenuPluginItem(hk(item), (*i)->PluginIndex());
}
-@@ -3410,9 +3421,13 @@
+@@ -3453,9 +3463,13 @@
// Basic menu items:
@@ -389,7 +388,7 @@
Add(new cOsdItem(hk(tr("Recordings")), osRecordings));
// Plugins:
-@@ -3420,18 +3435,22 @@
+@@ -3463,18 +3477,22 @@
for (int i = 0; ; i++) {
cPlugin *p = cPluginManager::GetPlugin(i);
if (p) {
@@ -412,7 +411,7 @@
Add(new cOsdItem(hk(tr("Commands")), osCommands));
}
-@@ -3512,6 +3531,11 @@
+@@ -3555,6 +3573,11 @@
eOSState state = cOsdMenu::ProcessKey(Key);
HadSubMenu |= HasSubMenu();
@@ -424,7 +423,7 @@
cOsdMenu *menu = NULL;
switch (state) {
case osSchedule:
-@@ -3558,6 +3582,7 @@
+@@ -3601,6 +3624,7 @@
if (item) {
cPlugin *p = cPluginManager::GetPlugin(item->PluginIndex());
if (p) {
@@ -432,7 +431,7 @@
cOsdObject *menu = p->MainMenuAction();
if (menu) {
if (menu->IsMenu())
-@@ -3569,6 +3594,7 @@
+@@ -3612,6 +3636,7 @@
}
}
}
@@ -440,7 +439,7 @@
state = osEnd;
}
break;
-@@ -3771,6 +3797,7 @@
+@@ -3814,6 +3839,7 @@
if (Direction) {
while (Channel) {
Channel = Direction > 0 ? Channels.Next(Channel) : Channels.Prev(Channel);
@@ -448,7 +447,7 @@
if (Channel && !Channel->GroupSep() && cDevice::GetDevice(Channel, 0, true))
return Channel;
}
-@@ -4405,6 +4432,7 @@
+@@ -4448,6 +4474,7 @@
for (int i = 0; i < MAXRECORDCONTROLS; i++) {
if (!RecordControls[i]) {
RecordControls[i] = new cRecordControl(device, Timer, Pause);
@@ -457,8 +456,8 @@
}
}
diff -urNad vdr-1.6.0~/po/de_DE.po vdr-1.6.0/po/de_DE.po
---- vdr-1.6.0~/po/de_DE.po 2008-03-23 13:52:42.000000000 +0100
-+++ vdr-1.6.0/po/de_DE.po 2008-03-23 13:52:42.000000000 +0100
+--- vdr-1.6.0~/po/de_DE.po 2008-05-11 01:08:05.000000000 +0200
++++ vdr-1.6.0/po/de_DE.po 2008-05-11 01:08:06.000000000 +0200
@@ -360,6 +360,9 @@
msgid "Lifetime"
msgstr "Lebensdauer"
@@ -470,8 +469,8 @@
msgstr "Datei"
diff -urNad vdr-1.6.0~/po/fr_FR.po vdr-1.6.0/po/fr_FR.po
---- vdr-1.6.0~/po/fr_FR.po 2008-03-23 13:52:42.000000000 +0100
-+++ vdr-1.6.0/po/fr_FR.po 2008-03-23 13:52:42.000000000 +0100
+--- vdr-1.6.0~/po/fr_FR.po 2008-05-11 01:08:05.000000000 +0200
++++ vdr-1.6.0/po/fr_FR.po 2008-05-11 01:08:06.000000000 +0200
@@ -366,6 +366,9 @@
msgid "Lifetime"
msgstr "Durée de vie"
@@ -483,8 +482,8 @@
msgstr "Fichier"
diff -urNad vdr-1.6.0~/timers.c vdr-1.6.0/timers.c
---- vdr-1.6.0~/timers.c 2008-02-16 15:47:40.000000000 +0100
-+++ vdr-1.6.0/timers.c 2008-03-23 13:52:42.000000000 +0100
+--- vdr-1.6.0~/timers.c 2008-05-11 01:08:05.000000000 +0200
++++ vdr-1.6.0/timers.c 2008-05-11 01:08:06.000000000 +0200
@@ -16,6 +16,7 @@
#include "recording.h"
#include "remote.h"
@@ -527,7 +526,7 @@
}
cTimer::cTimer(const cTimer &Timer)
-@@ -258,6 +260,8 @@
+@@ -259,6 +261,8 @@
return ""; // not NULL, so the caller can always use the result
}
@@ -536,7 +535,7 @@
bool cTimer::Parse(const char *s)
{
char *channelbuffer = NULL;
-@@ -312,6 +316,8 @@
+@@ -313,6 +317,8 @@
result = false;
}
}
@@ -545,7 +544,7 @@
free(channelbuffer);
free(daybuffer);
free(filebuffer);
-@@ -581,6 +587,26 @@
+@@ -582,6 +588,26 @@
void cTimer::SetFlags(uint Flags)
{
flags |= Flags;
@@ -574,7 +573,7 @@
void cTimer::ClrFlags(uint Flags)
diff -urNad vdr-1.6.0~/timers.h vdr-1.6.0/timers.h
--- vdr-1.6.0~/timers.h 2008-02-16 15:33:23.000000000 +0100
-+++ vdr-1.6.0/timers.h 2008-03-23 13:52:42.000000000 +0100
++++ vdr-1.6.0/timers.h 2008-05-11 01:08:06.000000000 +0200
@@ -20,6 +20,7 @@
tfInstant = 0x0002,
tfVps = 0x0004,
@@ -584,8 +583,8 @@
};
enum eTimerMatch { tmNone, tmPartial, tmFull };
diff -urNad vdr-1.6.0~/vdr.c vdr-1.6.0/vdr.c
---- vdr-1.6.0~/vdr.c 2008-03-23 13:52:42.000000000 +0100
-+++ vdr-1.6.0/vdr.c 2008-03-23 13:52:42.000000000 +0100
+--- vdr-1.6.0~/vdr.c 2008-05-11 01:08:05.000000000 +0200
++++ vdr-1.6.0/vdr.c 2008-05-11 01:08:06.000000000 +0200
@@ -64,6 +64,7 @@
#include "tools.h"
#include "transfer.h"
Modified: vdr/vdr/trunk/debian/patches/opt-49-x_pvrinput.dpatch
URL: http://svn.debian.org/wsvn/pkg-vdr-dvb/vdr/vdr/trunk/debian/patches/opt-49-x_pvrinput.dpatch?rev=6952&op=diff
==============================================================================
--- vdr/vdr/trunk/debian/patches/opt-49-x_pvrinput.dpatch (original)
+++ vdr/vdr/trunk/debian/patches/opt-49-x_pvrinput.dpatch Wed May 21 09:24:10 2008
@@ -5,6 +5,9 @@
## DP: This patch is required by the pvrinput plugin and was taken from
## DP: version 2007-11-29 of the plugin.
## DP: http://drseltsam.device.name/vdr/pvr/src/pvrinput
+## DP:
+## DP: 2008-05-14: Added CA-Id's 0xA1 and 0xA2, required by pvrusb2
+## DP: (as suggested by Christian Jarczyk)
@DPATCH@
diff -urNad vdr-1.5.15~/dvbdevice.c vdr-1.5.15/dvbdevice.c
@@ -15,7 +18,7 @@
bool hasPriority = Priority < 0 || Priority > this->Priority();
bool needsDetachReceivers = false;
-
-+ if (Channel->Ca(0) == 0xA1) return false; /* this caid marks a pvrinput plugin channel, no dvb */
++ if (Channel->Ca(0) == 0xA0 || Channel->Ca(0) == 0xA1 || Channel->Ca(0) == 0xA2) return false; /* this caid marks a pvrinput plugin channel, no dvb */
if (ProvidesSource(Channel->Source())) {
result = hasPriority;
if (Priority >= 0 && Receiving(true)) {
Modified: vdr/vdr/trunk/debian/patches/patchtest
URL: http://svn.debian.org/wsvn/pkg-vdr-dvb/vdr/vdr/trunk/debian/patches/patchtest?rev=6952&op=diff
==============================================================================
--- vdr/vdr/trunk/debian/patches/patchtest (original)
+++ vdr/vdr/trunk/debian/patches/patchtest Wed May 21 09:24:10 2008
@@ -38,7 +38,8 @@
opt-48-x_pin \
opt-49-x_pvrinput \
opt-50_graphtft \
- opt-51_cuttime"
+ opt-51_cuttime \
+ opt-52_hard_link_cutter"
testpatch="$standard \
opt-20_liemikuutio \
opt-24_jumpplay \
@@ -56,7 +57,9 @@
opt-45_yaepg \
opt-48-x_pin \
opt-49-x_pvrinput \
- opt-50_graphtft"
+ opt-50_graphtft \
+ opt-51_cuttime \
+ opt-52_hard_link_cutter"
mustfail_patch="XX_patchtest-patch-error"
mustfail_compile="XX_patchtest-compile-error"
Modified: vdr/vdr/trunk/debian/rules
URL: http://svn.debian.org/wsvn/pkg-vdr-dvb/vdr/vdr/trunk/debian/rules?rev=6952&op=diff
==============================================================================
--- vdr/vdr/trunk/debian/rules (original)
+++ vdr/vdr/trunk/debian/rules Wed May 21 09:24:10 2008
@@ -23,22 +23,26 @@
unpatch:
endif
-DB2MAN = /usr/share/sgml/docbook/stylesheet/xsl/nwalsh/manpages/docbook.xsl
-MANPAGES = debian/vdrdbg-buildpackage.1 debian/debugvdr.1 debian/vdr-dbg.1 \
- debian/vdrleaktest.1
+TXT2MANPAGES = debian/vdr-dbg.1
+MANPAGES = debian/vdrdbg-buildpackage.1 debian/debugvdr.1 debian/vdrleaktest.1
MAKE_OPTIONS = REMOTE=LIRC CONFDIR=/var/lib/vdr LOCDIR=/usr/share/locale \
VIDEODIR=/var/lib/video.00 PLUGINLIBDIR=/usr/lib/vdr/plugins
-%.1: %.1.xml
- xsltproc -o $@ --nonet $(DB2MAN) $<
+$(MANPAGES): %.1: %
+ sh $< -h | \
+ eval "`cat $< | grep "^### txt2man" | sed "s/### //"`" >$@
+
+$(TXT2MANPAGES): %.1: %.1.txt
+ cat $< | grep -v "^###" | \
+ eval "`cat $< | grep "^### txt2man" | sed "s/### //"`" >$@
configure: configure-stamp
configure-stamp: patch-stamp
dh_testdir
touch configure-stamp
-build: build-stamp $(MANPAGES)
+build: build-stamp $(MANPAGES) $(TXT2MANPAGES)
build-stamp: configure-stamp
dh_testdir
Modified: vdr/vdr/trunk/debian/vdrdbg-buildpackage
URL: http://svn.debian.org/wsvn/pkg-vdr-dvb/vdr/vdr/trunk/debian/vdrdbg-buildpackage?rev=6952&op=diff
==============================================================================
--- vdr/vdr/trunk/debian/vdrdbg-buildpackage (original)
+++ vdr/vdr/trunk/debian/vdrdbg-buildpackage Wed May 21 09:24:10 2008
@@ -1,4 +1,44 @@
#!/bin/sh
+
+## NAME
+## vdrdbg-buildpackage - builds a VDR plugin for debugging
+##
+## SYNOPSIS
+## vdrdbg-buildpackage [dpkg-puildpackage-options]
+##
+## DESCRIPTION
+## vdrdbg-buildpackage is a small wrapper for dpkg-buildpackage, which
+## sets all options needed to compile a VDR plugin for debugging.
+##
+## OPTIONS
+## -h This help
+##
+## All dpkg-buildpackage options are available for vdrdbg-buildpackage
+## as well.
+##
+## SEE ALSO
+## dpkg-buildpackage (1)
+##
+## AUTHOR
+## This manual page was written by Tobias Grimm <tg at e-tobi.net>
+##
+### txt2man -s 1 -t VDRDBG-BUILDPACKAGE -v "Create VDR dbeug plugin package"
+
+usage()
+{
+ local HELPCOMMENTPATTERN="^## "
+ cat "$0" | grep "$HELPCOMMENTPATTERN" | sed "s/$HELPCOMMENTPATTERN//"
+}
+
+while getopts h opt
+do
+ case $opt in
+ h)
+ usage
+ exit
+ ;;
+ esac
+done
export DEB_BUILD_OPTIONS="$DEB_BUILD_OPTIONS noopt nostrip"
export VDRDEBUG=yes
Modified: vdr/vdr/trunk/debian/vdrleaktest
URL: http://svn.debian.org/wsvn/pkg-vdr-dvb/vdr/vdr/trunk/debian/vdrleaktest?rev=6952&op=diff
==============================================================================
--- vdr/vdr/trunk/debian/vdrleaktest (original)
+++ vdr/vdr/trunk/debian/vdrleaktest Wed May 21 09:24:10 2008
@@ -1,4 +1,49 @@
#!/bin/bash
+
+# We need bash here, because of the *-loader.sh scripts containing bashisms!
+
+## NAME
+## vdrleaktest - Runs the VDR debugging binary with Valgrind.
+##
+## SYNOPSIS
+## vdrleaktest [-h] [vdr-options]
+##
+## DESCRIPTION
+## vdrleaktest will stop any running VDR daemon and start the debugging
+## version of VDR with Valgrind. No plugins will be loaded automatically.
+## In order to test VDR plugins with vdrleaktest, you need to pass the
+## appropriate VDR arguments (e.g. -P plugin-name).
+##
+## OPTIONS
+## -h This help
+##
+## All other options will be passed down to VDR
+##
+## SEE ALSO
+## vdr(1), valgrind(1)
+##
+## AUTHOR
+## This manual page was written by Tobias Grimm <tg at e-tobi.net>
+##
+### txt2man -s 1 -t VDRLEAKTEST -v "Start VDR with Valgrind"
+
+usage()
+{
+ local HELPCOMMENTPATTERN="^## "
+ cat "$0" | grep "$HELPCOMMENTPATTERN" | sed "s/$HELPCOMMENTPATTERN//"
+}
+
+
+while getopts h opt
+do
+ case $opt in
+ h)
+ usage
+ exit
+ ;;
+ esac
+done
+
#
# c't-VDR Memory Leak Tester
#
More information about the pkg-vdr-dvb-changes
mailing list