View Issue Details

IDProjectCategoryView StatusLast Update
0005901DarkRadiantMap Editingpublic13.02.2022 06:28
ReporterDragofer Assigned Toorbweaver  
PrioritynormalSeveritynormalReproducibilityalways
Status resolvedResolutionfixed 
Product Version2.14.0 
Fixed in Version3.0.0 
Summary0005901: .lin files can't be opened if different case than .map name
DescriptionTDM always produces .lin files whose names are all lower-case. DR won't recognise .lin files for anything but external leaks if the map name isn't also all lower-case.
Steps To Reproduce1) Create a test map whose name starts with an upper-case letter.
2) Create a room from caulk and put a player start + light in there.
3) Create an internal leak, i.e. by drawing a visportal that doesn't span the width of the room.
4) Dmap this in TDM. It should work, but a .lin file should be generated because of step 3.
5) Attempt to open this .lin file in DR. It should say that no .lin files have been found for this map.
6) Close DR, rename the .map so it's all lower-case.
7) Repeat step 5, this time the .lin file should be found.
TagsNo tags attached.

Activities

orbweaver

orbweaver

08.02.2022 21:21

developer   ~0014719

Perhaps because I'm on Linux (which has case sensitive file systems), I cannot actually reproduce the issue as described. TDM writes out a .lin file with the correct capitalisation. Nevertheless, it would make sense for DR to be more liberal when looking for .lin files, and open one if it matches the map name but not the case (and there are no other .lin files which are a better match).
orbweaver

orbweaver

09.02.2022 20:17

developer   ~0014720

Fixed in b434f673f38c0ecd3fa153b651577202aa8c4f30

Related Changesets

DarkRadiant: master b434f673

2022-02-09 20:09:39

orbweaver

Details Diff
0005901: pointfile identification is now case-insensitive

On Windows there is no guarantee that TDM will write out a .lin file
with the same case as the map name, for example a map named "Leak.map"
may end up with a pointfile "leak_portal_xxx.lin". We now use
case-insensitive string comparisons when identifying matching
pointfiles, so that pointfiles of any case will appear in the list.

This might give wrong results if a mapper on Linux is working on both
"MAP.map" and "map.map" in the same directory, but that seems a very
unlikely situation, and the only ill effect is that the pointfile list
might include more pointfiles than necessary.
Affected Issues
0005901
mod - libs/string/string.h Diff File
mod - radiantcore/map/Map.cpp Diff File
mod - test/PointTrace.cpp Diff File
add - test/resources/tdm/maps/ALTAr.lin Diff File

DarkRadiant: master 570e639f

2022-02-13 06:22:19

greebo

Details Diff
0005901: Adjust point trace unit test, in Windows the files altar.lin and ALTAr.lin cannot both be present at the same time Affected Issues
0005901
mod - test/PointTrace.cpp Diff File
rm - test/resources/tdm/maps/altar.lin Diff File

Issue History

Date Modified Username Field Change
04.02.2022 07:56 Dragofer New Issue
04.02.2022 07:57 Dragofer Description Updated
08.02.2022 21:21 orbweaver Assigned To => orbweaver
08.02.2022 21:21 orbweaver Status new => assigned
08.02.2022 21:21 orbweaver Note Added: 0014719
09.02.2022 20:17 orbweaver Status assigned => resolved
09.02.2022 20:17 orbweaver Resolution open => fixed
09.02.2022 20:17 orbweaver Fixed in Version => 3.0.0
09.02.2022 20:17 orbweaver Note Added: 0014720
13.02.2022 06:28 orbweaver Changeset attached => DarkRadiant master b434f673
13.02.2022 06:28 greebo Changeset attached => DarkRadiant master 570e639f