Opened 13 years ago

Closed 13 years ago

#1094 closed Bug (invalid)

Unspecified I/O error -> creating an already existing directory on a vfat partition on linux

Reported by: drjnut Owned by: charles
Priority: Lowest Milestone: None Set
Component: libtransmission Version: 1.22+
Severity: Trivial Keywords:
Cc:

Description

The problem is that, according to "man mount", linux displays shortnames in a lower case version. Say you have a "SUB" directory in your torrent. stat("SUB") will say the directory is non-existent but the mkdir will fail because "SUB" is really "sub". Anyway, it seems to be a linux unconsistency. Stat should treat "SUB" and "sub" indifferently. A small workaround is to detect this particular IO error and swallow it silently.

Attachments (1)

vfat_shortnames_dirty_fix.patch (886 bytes) - added by drjnut 13 years ago.
a quick and dirty patch for me to continue my download

Download all attachments as: .zip

Change History (3)

Changed 13 years ago by drjnut

a quick and dirty patch for me to continue my download

comment:1 in reply to: ↑ description Changed 13 years ago by drjnut

  • Component changed from Transmission to libtransmission
  • Owner set to charles
  • Priority changed from Normal to Lowest

Replying to drjnut: My patch isn't enough (I should have tested it before submitting...) because transmission will fail opening the file contained in the directory. I think this is really not a transmission bug, but a linux vfat mounting configuration issue. I fixed the problem by appending the option shortname=mixed to /etc/fstab corresponding line (and all my vfat mounts). The solution may be to make the user aware of this configuration issue when it shows up. IMHO, writing a workaround will bloat the code with unnecessary shit...

comment:2 Changed 13 years ago by charles

  • Resolution set to invalid
  • Status changed from new to closed

Closing, based on OP's summary that this is a linux issue rather than a transmission bug, and that working around it in libtransmission is bloat.

Note: See TracTickets for help on using tickets.