Windower / packages

BSD 3-Clause "New" or "Revised" License
25 stars 20 forks source link

Rename error #448

Closed Byrth closed 3 years ago

Byrth commented 3 years ago

For some reason, this time when I logged in I got spammed with rename: the system cannot find the file specified.: "%LOCALAPPDATA%\Windower\updates\temp\shared\manifest.xml", "%LOCALAPPDATA%\Windower\packages\shared\manifest.xml", which I assume is a failure to move an anticipated file after downloading updates?

I can confirm that the first path file does not exist, though the second one does and seems to have a created date in the last 15 minutes (perhaps from this login attempt).

I added a pkgsrc recently (that contains neither shared nor struct). Could this be related to having multiple Pkg sources? This error seems to be repeatable with my current setup, always complaining about shared and struct files.

Byrth commented 3 years ago

This error is almost certainly being thrown by this rename call.

I confirmed again that the source file does not exist and verified that the destination file's "Created" date was this morning from this login attempt, so it seems like the rename() is just being called twice for a single path.

I don't see anything in the code that guarantees path is unique. Downloader status guarantees that the file was downloaded, but it could overwrite another file downloaded to the same path. This implies that the problem is already present in the input to downloader. The files do not exist twice in the manifest, so it isn't clear to me how this is happening.

Byrth commented 3 years ago

This does not occur when I build windower v5 from #master. I'm going to guess it was fixed already and isn't just a byproduct of running it in debug mode..