[MPlayer-dev-eng] [BUG] gui and playtree again ... call for help / nochmal gui und playtree ... ruf nach hilfe! [en/de]
Fabian Franz
FabianFranz at gmx.de
Wed Feb 5 20:54:25 CET 2003
Hi,
I am on reworking my patch again ... / Ich bin dabei meinen Patch zu
überarbeiten ...
I tried to resolve all problems reported by Pontscho and found, that all of
them are already in current cvs and not bugs of mine...
/ Ich habe versucht alle Probleme zu lösen, die Pontscho gefunden hat. Dabein
habe ich herausgefunden, dass sie alle bereits im derzeitigen cvs sind und
nicht Fehler von mir.
Pontscho:
"if i press < or >, it aborts with sig 6 here:
> 0x405e0911 in kill () from /lib/libc.so.6
> (gdb) bt
> #0 0x405e0911 in kill () from /lib/libc.so.6
> #1 0x4017924b in pthread_kill () from /lib/libpthread.so.0
> #2 0x40179521 in raise () from /lib/libpthread.so.0
> #3 0x405e1846 in abort () from /lib/libc.so.6
> #4 0x405da9a9 in __assert_fail () from /lib/libc.so.6
> #5 0x0807db2c in play_tree_iter_new_copy (old=0x0) at playtree.c:871
> #6 0x08075585 in main (argc=3, argv=0xbffffbc4) at mplayer.c:2349"
Of course it would, Albeu (*grrr*) does set playtree_iter=NULL, if anything
fails; but there is no single sanity check in using this playtree_iter !
/ Natürlich passiert das! Albeu (*grrr*) setzt playtree_iter=NULL, sobald
irgendetwas fehlschlägt; aber es gibt nicht eine einzige Sicherheitsabfrage,
ob playtree_iter gültig ist.
See for example mplayer.c 2302: / guck z.B. in mplayer.c, Zeile 2302
--
case MP_CMD_PLAY_TREE_STEP : {
int n = cmd->args[0].v.i == 0 ? 1 : cmd->args[0].v.i;
int force = cmd->args[1].v.i;
if(!force) {
play_tree_iter_t* i = play_tree_iter_new_copy(playtree_iter);
if(play_tree_iter_step(i,n,0) == PLAY_TREE_ITER_ENTRY)
eof = (n > 0) ? PT_NEXT_ENTRY : PT_PREV_ENTRY;
play_tree_iter_free(i);
} else
eof = (n > 0) ? PT_NEXT_ENTRY : PT_PREV_ENTRY;
if(eof)
play_tree_step = n;
} break;
--
This is bad! Albeu made the wrong assumption, that if playtree_iter=NULL, the
program is quit automatically. / Das ist schlecht. Albeu hat die falsche
Annahme gemacht, dass sobald playtree_iter=NULL ist, das Programm auch
beendet wird.
But the gui lives from having playtree_iter=NULL and doings things on her own.
/ Aber die GUI lebt davon, dass playtree_iter=NULL ist und das Dateimanagement
selbst übernommen wird.
That means all instances of playtree_iter have to be circumvented for gui with
if (!use_gui) and calling the right function for Next and Prev in the gui ...
(Pontscho? Are they called mplNext and mplPrev() ? ) / Das heißt alle
Instanzen von playtree_iter müssen mit if (!use_gui) umschlossen werden, und
stattdessen die richtigen Funktionen der GUI für Nächstes und Vorheriges
aufgerufen werden! (Pontscho ? Heißen sie mplNext und mplPrev ? )
I am willing to do it, but I want to do it right! I spent too much time for
redesigning mplayer-patches in the last time anyway. / Ich bin willig dies zu
tun, aber ich will es richtig machen! Ich habe sowieso zuviel Zeit für das
Redesign der MPlayer-Patches in letzter Zeit verbraucht.
Shall I first make only a hotfix to the SEGV-Problems ? / Soll ich zuerst nur
einen Hotfix für die Speicherzugriffsfehler-Probleme machen ?
Then a hotfix for fixing playlists ? / Dann einen Hotfix um die Playlisten zu
fixen? (gute alte Sprache wo bist du geblieben?)
Then a hotfix for some bug, Pontscho recently found (Fix already available by
him, but not in CVS; one line) / Dann einen Hotfix für einen Bug, den
Pontscho letztens gefunden hat (Ein Fix ist bereits verfügbar, aber noch
nicht im CVS; nur eine Zeile)
And then a feature-proposal for enqueue option with automatic
playtree/commandline-enqueuement or playtree-overwriting-playlist-feature ? /
Und dann einen Vorschlag für das Feature die Dateien der Kommandozeile
automatisch in die Playliste einzutragen bzw. diese zu überschreiben ?
Or would it be OK, to have all in one patch ? / Oder wäre es in Ordnung alles
in einem Patch zu haben ?
I hope we can communicate! / Ich hoffe dass wir kommunizieren können!
MPlayer is something for that its good to do this! / MPlayer liegt mir
wirklich am Herzen!
Because it is a really good product, and I only want to make it better and
actually fix bugs, but sometimes it is not easy! / Weil es ein wirklich gutes
Produkt ist und ich nur versuche es besser zu machen und wirklich auch Bugs
zu finden, aber manchmal ist es nicht einfach!
I see that only with that way you can achieve really good quality! / Ich sehe
aber auch ein, dass nur mit diesem Weg es möglich ist gute Qualität zu
erreichen.
But I really hope, that I am a help to the mplayer project, because atm i'm
not sure about this. / Aber ich hoffe wirklich, dass ich dem MPlayer Projekt
eine Hilfe bin, denn im Moment bin ich mir da nicht so sicher.
This mail is as you already noticed bilingual, I hope I can so reach both Arpi
and Pontscho! / Diese Mail ist, wie du bereits bestimmt festgestellt ahst,
zweisprachig. Ich hoffe so Arpi und Pontscho zu erreichen!
cu
Fabian
PS: 10th :-( attempt for other patch is following soon ... :-/ / 10ter Versuch
:-( für anderen Patch kommt bald ... :-/
More information about the MPlayer-dev-eng
mailing list