Enigma-Binary verkleinern

Alles rund um das grafische Benutzerinterface Enigma
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: Enigma-Binary verkleinern

Beitrag von rhabarber1848 »

mrvica hat geschrieben:<eButton name="ok" text="save" position="20:210".... in <eButton name="ok" text="save" position="20:190"..... ändern
committed: http://article.gmane.org/gmane.comp.vid ... x.scm/1736
Cbot
Interessierter
Interessierter
Beiträge: 43
Registriert: Dienstag 22. März 2005, 19:44
Kontaktdaten:

Re: Enigma-Binary verkleinern

Beitrag von Cbot »

Bin ich der einzige, der auch weiterhin beim Zappen plötzlich (mal nach 2min Laufzeit, mal erst nach mehreren Stunden) Segfaults bekommt?

Es handelt sich um eine Nokia Avia 500 Box.
polskafan
Neugieriger
Neugieriger
Beiträge: 3
Registriert: Montag 4. Januar 2010, 18:56

Re: Enigma-Binary verkleinern

Beitrag von polskafan »

Nein, kann ich bestätigen, hatte gestern als ich nach dem DiseqC Fehler gesucht hab auch ein paar Segfaults, aber bisher nicht sinnvoll reproduzierbar.

Hab den Fehler im DiseqC Fenster meiner Meinung nach eingegrenzt, liegt an dieser Zeile (1157) der tuxbox/apps/tuxbox/enigma/src/satconfig.cpp:

new eListBoxEntryText( *ucInput, eString().sprintf(_("Input %d"),i+1), (void*)(240+i), 0, eString().sprintf(_("select uncommitted switch Input %d"),++i) );

Ich nehm an das Inkrement von i wird zu früh ausgeführt, weils in einer Inneren Funktion schon gebraucht wird. So genau bin ich in c++ aber nicht drin, damit ich weiß wie sowas aufgelöst und optimiert wird. Habs zwar nicht getestet, aber ich denke in Zeile 1142 wirds auch schiefgehen. Wobei ich nich genau weiß wozu diese Einträge überhaupt gut sind. Es gibt bei DiseqC 1.0 ja nur 4 verschiedene DiseqC Modi. Eventuell für die über DiseqC steuerbaren LNB / Multiswitches, das kann ich allerdings nicht testen, sowas hab ich nicht da und weiß auch nicht wie die DiseqC Settings dann aussehen müssen.

- polskafan
dietmarw
Contributor
Beiträge: 1833
Registriert: Mittwoch 10. April 2002, 15:39
Kontaktdaten:

Re: Enigma-Binary verkleinern

Beitrag von dietmarw »

enigma user sind hier nun mal eindeutig in der minderheit, da kann es schon sein das du der einzige bist ;)

edit: ne, einen gibts scheinbar doch noch *g
dbluelle
Contributor
Beiträge: 319
Registriert: Samstag 29. Mai 2004, 18:49
Kontaktdaten:

Re: Enigma-Binary verkleinern

Beitrag von dbluelle »

polskafan hat geschrieben:Hab den Fehler im DiseqC Fenster meiner Meinung nach eingegrenzt, liegt an dieser Zeile (1157) der tuxbox/apps/tuxbox/enigma/src/satconfig.cpp:

new eListBoxEntryText( *ucInput, eString().sprintf(_("Input %d"),i+1), (void*)(240+i), 0, eString().sprintf(_("select uncommitted switch Input %d"),++i) );

Ich nehm an das Inkrement von i wird zu früh ausgeführt, weils in einer Inneren Funktion schon gebraucht wird.
Ja, das wird's wahrscheinlich sein, war mein Fehler :dash: .
Ich habs im CVS mal geändert, kann es allerdings nicht testen, da ich kein DiseqC habe.

dbluelle
polskafan
Neugieriger
Neugieriger
Beiträge: 3
Registriert: Montag 4. Januar 2010, 18:56

Re: Enigma-Binary verkleinern

Beitrag von polskafan »

Perfekt danke :up:
Ich werds testen sobald ich mich eingelesen hab, wie ich selbst ein CVS zusammenbasteln kann.

*EDIT* Gerade kompiliert und geflashed, klappt einwandfrei, danke!
mrvica
Einsteiger
Einsteiger
Beiträge: 342
Registriert: Freitag 24. September 2004, 12:48

Re: Enigma-Binary verkleinern

Beitrag von mrvica »

die Satellite Cofiguration ist ziemlich vermurkst, war mir vorher nicht aufgefallen, da ich immer fertige Settings mit vorgegebener Satellitenliste eingespielt habe, Setup->Service Searching->Satellite Configuration, versucht man einen Satelliten (Button) zu selektieren, wird das ganze Fenster selektiert, navigiert man rückwärts mit Richtungstasten ist selektieren möglich, dabei spielt es keine Rolle ob eins, zwei, 4, mehrere Satelliten oder non-standard configuration ausgewählt wurde, betrifft diese objects in default.esml

<object name="eSatelliteConfigurationManager">
......
<object name="eLNBSetup">
......
<object name="eLNBPage">
......
<object name="eDiSEqCPage">

möglicherweise noch
<object name="RotorConfig">

denke nicht, dass man das in default.esm fixen kann, muss in den Sourcen gemacht werden, ebenso werden Fenster nicht immer gecleart, es bleiben Fensterreste vom letzten Aufruf

mrvica
dbluelle
Contributor
Beiträge: 319
Registriert: Samstag 29. Mai 2004, 18:49
Kontaktdaten:

Re: Enigma-Binary verkleinern

Beitrag von dbluelle »

Das mit der Navigation habe ich im CVS korrigiert,
aber die "Fensterreste" konnte ich hier nicht reproduzieren :gruebel: .

dbluelle
mrvica
Einsteiger
Einsteiger
Beiträge: 342
Registriert: Freitag 24. September 2004, 12:48

Re: Enigma-Binary verkleinern

Beitrag von mrvica »

>>> aber die "Fensterreste" konnte ich hier nicht reproduzieren

ich auch nicht mehr, ich war da bei Satellite Configuration, non-standard user defined configuration..., gehe auf LNB 0, drück OK, kriegst du erweiterte Einstellungen, LNB Offset, Threshold, dann next page, dann prev. page, dann müsste es kommen, ist aber alles OK, kann sein dass ich da in die (kaputte) Selektion gedrückt habe und dann der Fehler kam
der Fehler mit EPGcahe ist aber noch vorhanden, man darf da nichts anhaken (enablen), sonst kommt seg default und Box bootet neu, habe mir mal den Code angeschaut

Code: Alles auswählen

void eEPGCache::save()
{
	char *epgfile;
	if ( eConfig::getInstance()->getKey("/extras/epgfile", epgfile ) )
		epgfile=strdup("epg.dat");
	char *cachepath;
	if (eConfig::getInstance()->getKey("/extras/epgcachepath", cachepath))
		cachepath = strdup("/hdd");
	eString cachefilename, cachefilenamemd5;
	cachefilename.sprintf("%s/%s",cachepath,epgfile);
	cachefilenamemd5.sprintf("%s/%s.md5",cachepath,epgfile);
	struct statfs s;
	off64_t tmp;
	if (statfs(cachepath, &s)<0)
		tmp=0;
	else
	{
		tmp=s.f_blocks;
		tmp*=s.f_bsize;
	}
	free(cachepath);
	free(epgfile);

	// prevent writes to builtin flash
	if ( tmp < 1024*1024*50 ) // storage size < 50MB
		return;

	// check for enough free space on storage
	tmp=s.f_bfree;
	tmp*=s.f_bsize;
	if ( tmp < (eventData::CacheSize*12)/10 ) // 20% overhead
		return;

	FILE *f = fopen(cachefilename.c_str(), "w");
             .............................................................
             .............................................................
will ich da epg.dat in /tmp anlegen, tut sich nichts, versucht enigma die Datei anzulegen, macht es seg default, wenn keine Festplatte und MMC bei der dbox2 vorhanden ist, sollte EPGCahe gar nicht aktiviert werden, es bleibt nur noch RAM (/tmp), da hat die dbox2 wenn sie frisch bootet nur 8-10MB frei

mrvica
mrvica
Einsteiger
Einsteiger
Beiträge: 342
Registriert: Freitag 24. September 2004, 12:48

Re: Enigma-Binary verkleinern

Beitrag von mrvica »

>>> Das mit der Navigation habe ich im CVS korrigiert

es funktioniert soweit, kleiner Schönheitsfehler, bei mehreren Satelliten springt es nicht auf die erste Auswahl, bei mir Astra LNB0, Hotbird LNB1, sondern bei mir auf Hotbird, auf die zweite Auswahl, wenn man rückwarts navigiert ist OK, du hast kein DiseqC, hast du mal erwähnt, wähle 2 Satelliten mit Diseqc, Astra, Hotbird, auch wenn du kein Hotbird hast, einfach um mal den Fehler zu reproduzieren

mrvica
dbluelle
Contributor
Beiträge: 319
Registriert: Samstag 29. Mai 2004, 18:49
Kontaktdaten:

Re: Enigma-Binary verkleinern

Beitrag von dbluelle »

mrvica hat geschrieben:kleiner Schönheitsfehler, bei mehreren Satelliten springt es nicht auf die erste Auswahl, bei mir Astra LNB0, Hotbird LNB1, sondern bei mir auf Hotbird, auf die zweite Auswahl, wenn man rückwarts navigiert ist OK
Ist im CVS korrigiert.
(Das hatte allerdings nix mit meinen Änderungen zu tun, der Fehler war wohl schon seit ein paar Jahren so drin :roll: ;) )

dbluelle
Antworten