Bug 4973 – map file with spaces in file name passed without quotes to linker
Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
Other
OS
Windows
Creation time
2010-10-02T00:15:00Z
Last change time
2015-06-09T05:11:48Z
Keywords
link-failure, patch
Assigned to
nobody
Creator
r.sagitario
Comments
Comment #0 by r.sagitario — 2010-10-02T00:15:31Z
Specifying a map file to dmd that contains spaces like this
dmd test.d -map "a b.map" -v
produces
binary c:\l\dmd-2.048\windows\bin\dmd.exe
version v2.048
[...]
c:\l\dmd-2.048\windows\bin\link.exe test,,a b.map,user32+kernel32/m/noi;
OPTLINK (R) for Win32 Release 8.00.2
Copyright (C) Digital Mars 1989-2009 All rights reserved.
http://www.digitalmars.com/ctg/optlink.html
user32.def(0) : Error 2: File Not Found user32.def
--- errorlevel 1
showing that the map file name is not quoted.
Here's the patch:
Index: link.c
===================================================================
--- link.c (revision 701)
+++ link.c (working copy)
@@ -116,7 +116,7 @@
cmdbuf.writeByte(',');
if (global.params.mapfile)
- cmdbuf.writestring(global.params.mapfile);
+ writeFilename(&cmdbuf, global.params.mapfile);
else if (global.params.run)
cmdbuf.writestring("nul");
cmdbuf.writeByte(',');