Moviebrowser auf Dateien mit Endung .ts beschränken
-
- Interessierter
- Beiträge: 78
- Registriert: Freitag 7. Januar 2011, 01:20
Moviebrowser auf Dateien mit Endung .ts beschränken
Ich habe neben der dbox noch einen zweiten Receiver im Einsatz, und zwar einen mit Enigma2. Beide Receiver nutzen einen gemeinsamen Aufnahmeordner auf dem NAS. Das klappt soweit ganz gut und die Geräte können die Aufnahmen des jeweils anderen Receivers auch abspielen.
Nun ist es so, dass der Enigma2 Receiver für jede Aufnahme auch eine Reihe von Info-Dateien im Aufnahmeordner ablegt. Diese haben den gleichen Namen wie die TS-Datei, es wird lediglich eine weitere Endung (.meta .ap .cuts) angehängt. Fälschlicherweise listet die dbox diese Dateien im Moviebrowser mit auf.
Ich vermute mal, das alles aufgelistet wird, was '.ts' im Dateinamen hat. Korrekt wäre aber, dass nur die Dateien aufgelistet werden, die mit '.ts' enden.
Könnte jemand bei Gelegenheit mal in den Code schauen und das ggf. korrigieren?
Nun ist es so, dass der Enigma2 Receiver für jede Aufnahme auch eine Reihe von Info-Dateien im Aufnahmeordner ablegt. Diese haben den gleichen Namen wie die TS-Datei, es wird lediglich eine weitere Endung (.meta .ap .cuts) angehängt. Fälschlicherweise listet die dbox diese Dateien im Moviebrowser mit auf.
Ich vermute mal, das alles aufgelistet wird, was '.ts' im Dateinamen hat. Korrekt wäre aber, dass nur die Dateien aufgelistet werden, die mit '.ts' enden.
Könnte jemand bei Gelegenheit mal in den Code schauen und das ggf. korrigieren?
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: Moviebrowser auf Dateien mit Endung .ts beschränken
Schnell mal im Kopf zusammengebaut, müsste das hier helfen.
Code: Alles auswählen
--- moviebrowser.cpp.ORIG 2011-12-01 12:52:19.134856600 +0100
+++ moviebrowser.cpp 2011-12-01 13:00:55.968026200 +0100
@@ -2144,7 +2144,7 @@
{
//TRACE( "[onDeleteFile] ");
int test= movieSelectionHandler.file.Name.find(".ts");
- if(test == -1)
+ if (test != movieSelectionHandler.file.Name.length() - 3)
{
// not a TS file, return!!!!!
TRACE( "show_ts_info: not a TS file ");
@@ -2557,7 +2557,7 @@
else
{
int test=flist[i].getFileName().find(".ts");
- if( test == -1)
+ if (test != flist[i].getFileName().length() - 3)
{
//TRACE("[mb] other file: '%s'\r\n",movieInfo.file.Name.c_str());
}
-
- Developer
- Beiträge: 4189
- Registriert: Sonntag 2. November 2003, 12:36
Re: Moviebrowser auf Dateien mit Endung .ts beschränken
Wenn der Dateiname die Länge 2 hat, ist dein Test jetzt immer wahr ;-)
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: Moviebrowser auf Dateien mit Endung .ts beschränken
![oops :oops:](./images/smilies/icon_redface.gif)
Das müsste jetzt aber helfen. Hoffentlich habe ich nicht schon wieder irgendetwas nicht bedacht.
Edit: Vielleicht sollte man zum Suchen besser rfind nehmen.
Code: Alles auswählen
--- moviebrowser.cpp.ORIG 2011-12-01 12:52:19.134856600 +0100
+++ moviebrowser.cpp 2011-12-01 15:50:34.225905400 +0100
@@ -2143,8 +2143,8 @@
void CMovieBrowser::onDeleteFile(MI_MOVIE_INFO& movieSelectionHandler)
{
//TRACE( "[onDeleteFile] ");
- int test= movieSelectionHandler.file.Name.find(".ts");
- if(test == -1)
+ int test = movieSelectionHandler.file.Name.rfind(".ts");
+ if (test == -1 || test != movieSelectionHandler.file.Name.length() - 3)
{
// not a TS file, return!!!!!
TRACE( "show_ts_info: not a TS file ");
@@ -2556,8 +2556,8 @@
}
else
{
- int test=flist[i].getFileName().find(".ts");
- if( test == -1)
+ int test = flist[i].getFileName().rfind(".ts");
+ if (test == -1 || test != flist[i].getFileName().length() - 3)
{
//TRACE("[mb] other file: '%s'\r\n",movieInfo.file.Name.c_str());
}
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: Moviebrowser auf Dateien mit Endung .ts beschränken
Ich habe das Ganze nun mal in eine Datei gepackt und inzwischen auch ausprobiert. Beim Anzeigen in der Liste und beim Löschen werden nun nur noch Dateien betrachtet, bei denen .ts am Ende vorkommt.
Link entfernt, da Patch im CVS
Link entfernt, da Patch im CVS
-
- Tuxboxer
- Beiträge: 2614
- Registriert: Montag 20. Mai 2002, 10:49
- Image: JTG-Image [IDE] Version 2.4.4
- Image: (7025SS) Merlin
Re: Moviebrowser auf Dateien mit Endung .ts beschränken
Könnte bitte jemand diesen Patch ins CVS einchecken?
Greeetz von DrStoned
![lol :lol:](./images/smilies/icon_lol.gif)
Greeetz von DrStoned
![lol :lol:](./images/smilies/icon_lol.gif)
![lol :lol:](./images/smilies/icon_lol.gif)
![lol :lol:](./images/smilies/icon_lol.gif)
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Moviebrowser auf Dateien mit Endung .ts beschränken
Ich baue heute ein Test-Image, wenn der Patch funktioniert, committe ich ihn.
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Moviebrowser auf Dateien mit Endung .ts beschränken
committed to CVS: http://article.gmane.org/gmane.comp.vid ... x.scm/3165Gaucho316 hat geschrieben:moviebrowser_only-show-files-with-extension-ts_2011-12-02_1804.diff
-
- Interessierter
- Beiträge: 78
- Registriert: Freitag 7. Januar 2011, 01:20
Re: Moviebrowser auf Dateien mit Endung .ts beschränken
Ich bekomme beim Kompilieren folgende Meldungen:
moviebrowser.cpp:2147: warning: comparision between signed and unsigned integer expressions
moviebrowser.cpp:2560: warning: comparision between signed and unsigned integer expressions
-
- Contributor
- Beiträge: 1688
- Registriert: Donnerstag 17. Februar 2005, 20:24
Re: Moviebrowser auf Dateien mit Endung .ts beschränken
Dann machen wir halt noch einen Cast nach int rein.
Link entfernt, da Patch im CVS
Link entfernt, da Patch im CVS
-
- CDK-Experte
- Beiträge: 4335
- Registriert: Donnerstag 3. April 2008, 14:05
Re: Moviebrowser auf Dateien mit Endung .ts beschränken
committed to CVS: http://article.gmane.org/gmane.comp.vid ... x.scm/3173Gaucho316 hat geschrieben:moviebrowser_follow-up-for-rev-1.65_2011-12-18_1124.diff