On Fri, 6 Aug 2010 13:08:46 +0200 (CEST) "Imposit.com - webmaster" <webmas...@imposit.com> wrote:
> > It is used in more cases then just that: > > theia dspam # find . -type f -name "*.c" -exec grep "_ds_get_nextuser" > > "{}" ";"|wc -l > > 31 > > theia dspam # > > hmm ya i see > but this means that if a systemuser is delete and has still a statsentry that > i can affect more than simply stats > so a better handling of this might be good > right. > i think to solve it it should be done at while not at nextuser > > > user = _ds_get_nextuser (CTX); > while (user != NULL) > { > stat_user (user, totals); > user = _ds_get_nextuser (CTX); > } > NO! This again would only target the problem at dspam_stats but not fix the issue. > maybe you can ask here if its virtual or not. > case not instead of while not null something else. > i dont know yet which "something" else would fit best for all cases > Again. The problem needs to be solved differently. Regardless if virtual user or not. As I have written before there are only a bunch of states regarding _ds_get_nextuser(): * No user has been retrieved jet * A user has been retrieved ... * ... and there are more users to be retrieved * ... and there are no more user to be retrieved * Retrieving a user has failed * ... and there are more users to be retrieved * ... and there are no more user to be retrieved * There are no more users to be retrieved/listed The solution to the problem you have mentioned is to handle those conditions in code. And it is not a solution to go and patch dspam_stats to handle something that should anyway not exist in the first place. It is pretty much the same as with "everything in a database" that you are often asking for. The problem is that the foundation of DSPAM is not build properly for such a move. Adding everything in a database will not solve one single problem. It will only create more problems. And I don't like that kind of solutions. Better is to fix the foundation AND THEN extend. If you fix the foundation then I am the first one to support the capability to add everything in a database. That is for sure. But just having everything in a database is ultra giga pointless. > ------------------------------------------------------------------------------ > This SF.net email is sponsored by > > Make an app they can't live without > Enter the BlackBerry Developer Challenge > http://p.sf.net/sfu/RIM-dev2dev > _______________________________________________ > Dspam-devel mailing list > Dspam-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/dspam-devel > ------------------------------------------------------------------------------ This SF.net email is sponsored by Make an app they can't live without Enter the BlackBerry Developer Challenge http://p.sf.net/sfu/RIM-dev2dev _______________________________________________ Dspam-devel mailing list Dspam-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dspam-devel