[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