Comment 12 for bug 381318

Revision history for this message
Marcel de Vries (carresmd-deactivatedaccount) wrote :

After a lot of testing with hellanzb and LottaNZB, I found the reason why this is happening. The problem is that IF the downloaded NZB file (from for example newzbin) contains an entry with a NZB file which has exactly the same name as the download NZB file, it will fail. At the end of this post I made 2 sample files which are pretty self-explanatory. I'll continue using those examples.

File A fails, File B doesn't. This is because File A contains entry File A.3 (a NZB file with exactly the same name as the NZB file in the queue). I discovered this while testing with LottaNZB. If you add a NZB file (in this example File A) via the 'Add file' dialog in LottaNZB it makes the name pretty. This is what it does; File A.1 "ubuntu-9.10-desktop-amd64/" ---> "ubuntu 9.10 desktop amd64/". File A.3 stays the same and because the File A.1 and File A.3 aren't the same anymore, it works as intended. However adding the file via 'file associations' or the command line doesn't make the name prettier File A.1 and File A.3 stay the same and it will fail. This is a workaround for this bug which happened to be in our code without knowing it. Another workaround would be to remove File A.3 from File A when the NZB file is added to LottaNZB, which makes it File B. And then pass it to hellanzb. Both work, and Severin already implemented the second workaround so for our LottaNZB users it should be fixed (or worked around) in LottaNZB 0.5.2 which will be released in the near future.

However, workarounds aren't good practice. But because a fixed hellanzb package won't be in Ubuntu until Ubuntu 10.04 we decided to implement the workaround first. Next we're going to give it a try to fix the actual hellanzb package, and get the patched package into Debian and therefore in Ubuntu (10.04).

File A:
-------
1. ubuntu-9.10-desktop-amd64.nzb (NZB file)
2. |--> ubuntu-9.10-desktop-amd64.iso (file embedded in the NZB file)
3. |--> ubuntu-9.10-desktop-amd64.nzb (file embedded in the NZB file)
-------

File B:
-------
1. ubuntu-9.10-desktop-amd64.nzb (NZB file)
2. |--> ubuntu-9.10-desktop-amd64.iso (file embeeded in the NZB file)
-------