Filenames as opaque strings

Bug #351208 reported by qwertitis
0
Affects Status Importance Assigned to Milestone
DC++
Confirmed
Medium
Unassigned
LinuxDC++
Confirmed
Medium
Unassigned

Bug Description

DC++ currently have many problems with filenames. Problems include case-sensitivity (bug #311818) and trying to store filenames as text strings (bug #300728).

I propose that all filenames should be treated as binary data. The File class, etc, should use an 8bit opaque std::string. These opaque strings should not be modified anywhere. When a filename needs to be shown to the user, these opaque strings should be decoded into displayable strings. These displayable strings are only used as output to the GUI, and are not allowed to be interpreted back as filenames again.

Using opaque filenames, many of the more spurious errors could be remedied, including the previously mentioned. Case-sensitivity could be implemented on the search index only.

This has been considered for a long time now (on #linuxdc++), this is a document to have something to agree upon.

Tags: core
Changed in linuxdcpp:
importance: Undecided → Medium
status: New → Confirmed
Changed in dcplusplus:
importance: Undecided → Medium
status: New → Confirmed
Fredrik Ullner (ullner)
tags: added: core
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.