mp@whuxle.UUCP (Mark Plotnick) (04/24/84)
Here's an interesting bug with "e-": Suppose you read all the articles in a newsgroup, and then enter a newsgroup with fewer articles than the previous newsgroup. Then, if you do an "e-", then not only is the correct article erased, but the article in the first newsgroup that has the same number as the current article in the second newsgroup is also cleared. For instance, if my newsrc starts out as: net.lang.c: 1-816 net.legal: 1-366 It will wind up as: net.lang.c: 1-366,369-820 net.legal: 1-368 The problem lies in the fact that the first selectng() doesn't touch the bitmap because of its clever "fast check for common case: 1-###". So, the updaterc() that's called by the second selectng() is scanning through a bitmap that really belongs to the second newsgroup rather than the first newsgroup. Fixes, anyone? If disabling the "fast check" is too inefficient for your tastes, and if adding a flag to selectng() to disable the fast check offends your sensibilities, then I'm open to suggestions, especially from the authors of the code. Mark