Hi,
It's hard to divide the work in any ways right now, since all of us were looking for bugs and fixing them. Before the work may be split in any way, some basic problems needs to be fixed. I think we're slowly getting to the point when index.dat is no longer getting corrupted (of course there will be problems when index.dat is already damaged).
I was thinking about sending the patches I have already prepared and then taking a few days break, so Morten or Juan can try to get their patches in. I'm sure we will be able to organize future work so we don't overlap in any way.
On 4/5/12 7:30 PM, Juan Lang wrote:
Another thing that'd be nice to see is reducing the amount of disk space used. Morten, some of the patches you sent me do some of that, by removing files once they're no longer in use. (The patches I have do that too.) Piotr, were you planning to address this too?
I've seen some patches written by Morten regarding it and I have some concerns. I think that wininet may delete the index.dat file if it's corrupted or file version is not matching, but it can't remove files that don't belong to it (in this patches whole cache directory was removed when cache file version was changing). The bad thing is, that people with old wine prefixes will need to remove downloaded files by hand (I think it's the correct approach).
Later when the cache is working correctly, it should be responsible for removing the files that it is keeping track of (so the manual cache clearing should be a one time process). I was not investigating it yet, but it shouldn't be very hard to implement.
A question that I have to ask is, would be better to eliminate the url cache altogether? Right now its only utility is to pass test cases, and conveniently fill up your disk. No requests are ever fulfilled from the cache. Either of you have any plans to tackle that?
Eliminating the cache is clearly not the correct approach. First of all urlmon already depends on it. It needs the files to be created, the problem is that we never delete them. Correct persist cookies support can't be implemented without it. Some applications are using it directly. Other parts of wine can't depend on index.dat related functionality as long as it's broken.
Cheers, Piotr