nextcloud / nextcloud/server

File numbering in case of different upper/lower case letters

Open
#33,483 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

1. to develop 26-feedback bug feature: files hotspot: filename handling
Dominant language
PHP
Stars
36.9k
Forks
5.2k
Avg merge
2d 3h
Merged PRs (30d)
713

Description

How to use GitHub
  • Please use the 👍 reaction to show that you are affected by the same issue.
  • Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

If a file is sent in Talk where the filename already exists, a "(1)" is appended to the filename.
But this logic requires that the upper and lower case is identical.

So it is possible that in the Talk folder there is a file "1.jpg" as well as a "1.JPG".

With Linux based systems this is no problem. On Windows systems, however, I have to regularly clean up the Talk folder for all users so that the NextCloud desktop client no longer issues error messages because of this.

It would therefore be useful if it would take into account the WIndows machines here and also add a (1) to the file name if the files differ in case.

Steps to reproduce

  1. Send a File with filename "1.jpg"
  2. Send another File with filename "1.JPG"
  3. Wait until the Windows desktop client tries to synchronize the Talk folder - which will throw an error message.
Expected behaviour

The second sent file should be saved in Talk folder as "1 (1).JPG", because it already has a file with identical filename (for windows systems)

Actual behaviour

The second sent file will be saved as "1.JPG", because it theoreticaly has an other filename as the first file - but it will result in a sync error on Windows Desktop Clients.

Talk app

Talk app version: 14.0.3

Custom Signaling server configured: no

Custom TURN server configured: no

Custom STUN server configured: no

Browser

Microphone available: yes

Camera available: yes

Operating system: Windows

Browser name: Chrome

Browser version: 103

Server configuration

Operating system: Ubuntu

Web server: Nginx

Database: MySQL

PHP version: 8.1

Nextcloud Version: 24.0.3

List of activated apps:

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No file or test is named in the issue. Start by tracing Talk's duplicate-filename handling using the 1.jpg and 1.JPG reproduction, then verify behavior against a case-insensitive Windows client. Done means the second file receives a collision suffix and no longer causes a Windows synchronization error.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.