ist nicht genug ?

Das Original Benutzerinterface Neutrino-SD incl. zapit, sectionsd, yWeb etc...
re_Look
Interessierter
Interessierter
Beiträge: 47
Registriert: Mittwoch 10. Oktober 2007, 07:20

ist nicht genug ?

Beitrag von re_Look »

statt
+#ifdef FB_USE_PALETTE
+ int dxx;
+ if (dx < 0) {
+ fprintf(stderr, "ERROR: CFrameBuffer::paintBoxRel called with dx < 0 (%d)\n", dx);
+ dxx = 0;
+ } else
+ dxx = dx;
+#endif
das ?
+#ifdef FB_USE_PALETTE
+ if (dx < 0) {
+ fprintf(stderr, "ERROR: CFrameBuffer::paintBoxRel called with dx < 0 (%d)\n", dx);
+ dx = 0;
+ }
+#endif
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: ist nicht genug ?

Beitrag von seife »

Probiere es doch einfach :)
Ein Blick auf den Prototype von CFrameBuffer::paintBoxRel() könnte auch helfen.
flasher
Developer
Beiträge: 467
Registriert: Dienstag 15. Juli 2003, 10:58

Re: ist nicht genug ?

Beitrag von flasher »

Um die Unlesbarkeit zu fördern kannst Du auch:

dx = (dx < 0) ? 0 : dx;

schreiben.
Das würde nur in der Hinsicht problematisch werden, da Du eine const var verändern möchtest. (call will abort at runtime, o.ä)
Daher auch der Hinweis auf den Prototyp ;)

Gruß
re_Look
Interessierter
Interessierter
Beiträge: 47
Registriert: Mittwoch 10. Oktober 2007, 07:20

Re: ist nicht genug ?

Beitrag von re_Look »

Achso const hab ich übersehen, dann reich aber:
memset(pos, col, ((dx < 0) ? 0 : dx));
;)
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: ist nicht genug ?

Beitrag von seife »

Das ist vermutlich langsamer (ich bin kein PPC-Assemblerspezialist, deswegen "vermutlich").
Und die Warnung wird ja nicht zum Spaß ausgegeben: da ist ein Bug im Code.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 14:05

Re: ist nicht genug ?

Beitrag von rhabarber1848 »

* bump *

Gibt es hier noch was zu tun?
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: ist nicht genug ?

Beitrag von seife »

IMHO nicht, der Code wie er jetzt im CVS ist, ist korrekt.