Bug 14602 – broken executable if filename contains opDispatch
Status
RESOLVED
Resolution
INVALID
Severity
normal
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
x86_64
OS
Windows
Creation time
2015-05-18T18:44:00Z
Last change time
2015-05-20T02:45:06Z
Assigned to
nobody
Creator
sigod.mail
Comments
Comment #0 by sigod.mail — 2015-05-18T18:44:23Z
Consider simplest program:
```d
void main() {}
```
Save file as, for example, `issue_with_opDispatch.d`.
```
$ dmd issue_with_opDispatch.d
$ issue_with_opDispatch.exe
sh.exe": ./issue_with_opDispatch.exe: Bad file number
$ rdmd issue_with_opDispatch.d
std.process.ProcessException@std\process.d(560): Failed to spawn new process (The requested operation requires elevation.)
----------------
0x0043770A
0x00429B9E
0x00403F79
0x00403FF3
0x004314B3
0x004313CB
0x00424A4C
0x767B33AA in BaseThreadInitThunk
0x76F19F72 in RtlInitializeExceptionChain
0x76F19F45 in RtlInitializeExceptionChain
$
```
dmd v2.067.1
Comment #1 by ketmar — 2015-05-18T23:59:44Z
it works on GNU/Linux, so i think that this is a windows-related issue.
Comment #2 by dlang-bugzilla — 2015-05-20T02:45:06Z
This is a "feature" of Windows operating systems ("Installer Detection Technology" for "User Account Control"). File names that contain the word "patch" (and others, such as "install") will be automatically elevated.
https://technet.microsoft.com/en-us/library/cc709628.aspx
> Filename includes keywords like "install," "setup," "update," etc.
You can disable this behavior locally on your system by using the group policy editor (see link above).