Language file names bug

When backing up a Linux installation onto a Windows system I noticed that the FTP client warned me of files that already existed.

After the back-up was finished I went to check why and I found that a number of files where present with two different letter casing.

For example:
custom/application/Ext/Language/es_ES.lang.ext.php <---- and ----> custom/application/Ext/Language/es_es.lang.ext.php
modules/AOS_Products_Quotes/language/fr_FR.lang.php <---- and ----> modules/AOS_Products_Quotes/language/fr_fr.lang.php
modules/AOS_Products/language/fr_FR.lang.php <---- and ----> modules/AOS_Products/language/fr_fr.lang.php
modules/AOS_PDF_Templates/language/fr_FR.lang.php <---- and ----> modules/AOS_PDF_Templates/language/fr_fr.lang.php
modules/AOS_Line_Item_Groups/language/fr_FR.lang.php <---- and ----> modules/AOS_Line_Item_Groups/language/fr_fr.lang.php
modules/AOS_Contracts/language/fr_FR.lang.php <---- and ----> modules/AOS_Contracts/language/fr_fr.lang.php
modules/AOS_Invoices/language/fr_FR.lang.php <---- and ----> modules/AOS_Invoices/language/fr_fr.lang.php
modules/AOS_Quotes/language/fr_FR.lang.php <---- and ----> modules/AOS_Quotes/language/fr_fr.lang.php
themes/Suite7/images/Themes.gif <---- and ----> themes/Suite7/images/Themes.gif
custom/Extension/application/Ext/Language/fr_FR.AdvancedOpenSales.php <---- and ----> custom/Extension/application/Ext/Language/fr_FR.AdvancedOpenSales.php (identical)
themes/default/images/Themes.gif <---- and ----> themes/default/images/icon_Jjwg_Maps.gif <---- and ----> themes/default/images/Themes.gif <---- and ----> themes/default/images/icon_Jjwg_maps.gif
themes/default/images/Themes.gif <---- and ----> themes/default/images/icon_Jjwg_Maps.png <---- and ----> themes/default/images/Themes.gif <---- and ----> themes/default/images/icon_Jjwg_maps.png
custom/modules/Administration/Ext/Language/es_ES.lang.ext.php <---- and ----> custom/modules/Administration/Ext/Language/es_es.lang.ext.php
custom/modules/Leads/Ext/Language/es_ES.lang.ext.php <---- and ----> custom/modules/Leads/Ext/Language/es_es.lang.ext.php
custom/modules/Leads/Ext/Language/de_DE.lang.ext.php <---- and ----> custom/modules/Leads/Ext/Language/de_de.lang.ext.php
custom/modules/Leads/Ext/Language/pt_BR.lang.ext.php <---- and ----> custom/modules/Leads/Ext/Language/pt_br.lang.ext.php
custom/modules/Opportunities/Ext/Language/de_DE.lang.ext.php <---- and ----> custom/modules/Opportunities/Ext/Language/de_de.lang.ext.php
custom/modules/Opportunities/Ext/Language/pt_BR.lang.ext.php <---- and ----> custom/modules/Opportunities/Ext/Language/pt_br.lang.ext.php
custom/modules/Accounts/Ext/Language/es_ES.lang.ext.php <---- and ----> custom/modules/Accounts/Ext/Language/es_es.lang.ext.php
custom/modules/Accounts/Ext/Language/de_DE.lang.ext.php <---- and ----> custom/modules/Accounts/Ext/Language/de_de.lang.ext.php
custom/modules/Accounts/Ext/Language/pt_BR.lang.ext.php <---- and ----> custom/modules/Accounts/Ext/Language/pt_br.lang.ext.php
custom/modules/Schedulers/Ext/Language/es_ES.lang.ext.php <---- and ----> custom/modules/Schedulers/Ext/Language/es_es.lang.ext.php
custom/modules/Contacts/Ext/Language/es_ES.lang.ext.php <---- and ----> custom/modules/Contacts/Ext/Language/es_es.lang.ext.php
custom/modules/Contacts/Ext/Language/de_DE.lang.ext.php <---- and ----> custom/modules/Contacts/Ext/Language/de_de.lang.ext.php
custom/modules/Opportunities/Ext/Language/es_ES.lang.ext.php <---- and ----> custom/modules/Opportunities/Ext/Language/es_es.lang.ext.php
custom/modules/Contacts/Ext/Language/pt_BR.lang.ext.php <---- and ----> custom/modules/Contacts/Ext/Language/pt_br.lang.ext.php
custom/modules/Documents/Ext/Language/es_ES.lang.ext.php <---- and ----> custom/modules/Documents/Ext/Language/es_es.lang.ext.php
custom/modules/Documents/Ext/Language/de_DE.lang.ext.php <---- and ----> custom/modules/Documents/Ext/Language/de_de.lang.ext.php
custom/modules/Documents/Ext/Language/pt_BR.lang.ext.php <---- and ----> custom/modules/Documents/Ext/Language/pt_br.lang.ext.php
custom/modules/ModuleBuilder/Ext/Language/es_ES.lang.ext.php <---- and ----> custom/modules/ModuleBuilder/Ext/Language/es_es.lang.ext.php
custom/modules/ModuleBuilder/Ext/Language/de_DE.lang.ext.php <---- and ----> custom/modules/ModuleBuilder/Ext/Language/de_de.lang.ext.php
custom/modules/ModuleBuilder/Ext/Language/pt_BR.lang.ext.php <---- and ----> custom/modules/ModuleBuilder/Ext/Language/pt_br.lang.ext.php
custom/modules/Project/Ext/Language/es_ES.lang.ext.php <---- and ----> custom/modules/Project/Ext/Language/es_es.lang.ext.php
custom/application/Ext/Language/de_DE.lang.ext.php <---- and ----> custom/application/Ext/Language/de_de.lang.ext.php
custom/application/Ext/Language/pt_BR.lang.ext.php <---- and ----> custom/application/Ext/Language/pt_br.lang.ext.php

Most of these files seemed to be identical but some were different.

Probably some of these files have been added by some custom module that I have installed. But other depend definitely on the SuiteCRM installation.

That’s because Windows is not case sensitive in the Explorer, http://superuser.com/questions/277972/how-to-configure-folder-name-case-sensitivity-in-windows-7

And yes, those are probably left overs of previous language packs that you’ve installed, some of them name them “en_us” or “en_US”, for linux those are two different things.

best regards