Sequoia hat mich drauf hingewiesen, dass der Reboot-newsd-Bug in
_clear_groups() im newsd entsteht, weil nachm reboot (wenn keine rubriken
geladen sind) 'newsgroups' noch leer ist und sizeof(newsgroups[1][0]) damit
einen 'index out of bounds' bug schmeisst. Da ist ein sinnloses if (...);
drin. Danach wird auch kein neuer call_out gestartet, wenn das passiert. Das
clean_up ist dann also ausgeschaltet. Weiterhin wird da exclude_alist()
verwendet, aber das Ergebnis wird nicht in newsgroups gebunden und ist damit
sinnlos. Die Folge: Endlosschleife=too long evaluation bug.
Fuers Protokoll.
Holger
Aehm, nicht dass ich dem jetzt folgen kann, aber der newsd bug entsteht in
einem feature was wir sowieso nicht haben (wollen), wenn ich mich recht
erinnere. Sonst haett ich das damals naemlich behoben. Also bevor das
repariert wird erstmal schauen ob das ueberhaupt gewollt ist was dann
passiert. Wenn ich mich noch recht erinnere war das irgendein
prophylaktisches Aufraeumen, was aber durch 'Aufraeumen bei Bedarf' ersetzt
wurde? Sprich beide Codes sind drin und der eine (ungewuenschte) 'stirbt'
dankenswerterweise mit diesem Bug immer gleich *g*
Fi - nur so zur Erlaeuterung ausm loechrigen Gedaechtnis
> Sprich beide Codes sind drin und der eine (ungewuenschte) 'stirbt'
> dankenswerterweise mit diesem Bug immer gleich *g*
Und warum wird das dann nicht mal komplett ausgebaut, wenns eh nich
erwuenscht ist? Ich war mir nicht so sicher, ob wir das wollen, was da
gemacht werden soll. Deshalb hab ich noch nix geaendert. Wenn Du Dir sicher
bist, dass wir das nicht wollen, dann baus doch mal aus. :-)
H.
|