Artifact b26d9ff38bedf081fe73bfb8802cce863f80f831:
- File
src/win32/lm.d
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
The problem was __gshared. Replacing it with TLS fixed the issue. Remaining problem is that "hack.d"'s CloseHandle hack is not working anymore.
(user: kinaba) [annotate]
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
0000: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a /*************** 0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0040: 2a 2a 2a 2a 2a 2a 2a 2a 5c 0d 0a 2a 20 20 20 20 ********\..* 0050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6c 6d lm 0070: 2e 64 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .d 0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0090: 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 20 *..* 00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 00d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0d *. 00e0: 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .* 00f0: 20 20 20 20 20 20 20 20 20 57 69 6e 64 6f 77 73 Windows 0100: 20 41 50 49 20 68 65 61 64 65 72 20 6d 6f 64 75 API header modu 0110: 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 le 0120: 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20 20 *..* 0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0170: 20 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 *..* 0180: 20 20 20 20 20 20 20 20 20 54 72 61 6e 73 6c 61 Transla 0190: 74 65 64 20 66 72 6f 6d 20 4d 69 6e 47 57 20 57 ted from MinGW W 01a0: 69 6e 64 6f 77 73 20 68 65 61 64 65 72 73 20 20 indows headers 01b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a * 01c0: 0d 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 ..* 01d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 01e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 01f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0200: 20 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20 *..* 0210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0220: 20 20 20 20 20 50 6c 61 63 65 64 20 69 6e 74 6f Placed into 0230: 20 70 75 62 6c 69 63 20 64 6f 6d 61 69 6e 20 20 public domain 0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 0250: 20 20 20 20 20 2a 0d 0a 5c 2a 2a 2a 2a 2a 2a 2a *..\******* 0260: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0270: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0280: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 0290: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a **************** 02a0: 2f 0d 0a 6d 6f 64 75 6c 65 20 77 69 6e 33 32 2e /..module win32. 02b0: 6c 6d 3b 0d 0a 2f 2a 20 72 65 6d 6f 76 65 64 20 lm;../* removed 02c0: 2d 20 6e 6f 77 20 73 75 70 70 6f 72 74 69 6e 67 - now supporting 02d0: 20 6f 6e 6c 79 20 57 69 6e 32 6b 20 75 70 0d 0a only Win2k up.. 02e0: 76 65 72 73 69 6f 6e 20 28 57 69 6e 64 6f 77 73 version (Windows 02f0: 56 69 73 74 61 29 20 7b 0d 0a 09 76 65 72 73 69 Vista) {...versi 0300: 6f 6e 20 3d 20 57 49 4e 33 32 5f 57 49 4e 4e 54 on = WIN32_WINNT 0310: 5f 4f 4e 4c 59 3b 0d 0a 7d 20 65 6c 73 65 20 76 _ONLY;..} else v 0320: 65 72 73 69 6f 6e 20 28 57 69 6e 64 6f 77 73 32 ersion (Windows2 0330: 30 30 33 29 20 7b 0d 0a 09 76 65 72 73 69 6f 6e 003) {...version 0340: 20 3d 20 57 49 4e 33 32 5f 57 49 4e 4e 54 5f 4f = WIN32_WINNT_O 0350: 4e 4c 59 3b 0d 0a 7d 20 65 6c 73 65 20 76 65 72 NLY;..} else ver 0360: 73 69 6f 6e 20 28 57 69 6e 64 6f 77 73 58 50 29 sion (WindowsXP) 0370: 20 7b 0d 0a 09 76 65 72 73 69 6f 6e 20 3d 20 57 {...version = W 0380: 49 4e 33 32 5f 57 49 4e 4e 54 5f 4f 4e 4c 59 3b IN32_WINNT_ONLY; 0390: 0d 0a 7d 20 65 6c 73 65 20 76 65 72 73 69 6f 6e ..} else version 03a0: 20 28 57 69 6e 64 6f 77 73 4e 54 6f 6e 6c 79 29 (WindowsNTonly) 03b0: 20 7b 0d 0a 09 76 65 72 73 69 6f 6e 20 3d 20 57 {...version = W 03c0: 49 4e 33 32 5f 57 49 4e 4e 54 5f 4f 4e 4c 59 3b IN32_WINNT_ONLY; 03d0: 0d 0a 7d 0d 0a 2a 2f 0d 0a 70 75 62 6c 69 63 20 ..}..*/..public 03e0: 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e 6c 6d 63 import win32.lmc 03f0: 6f 6e 73 3b 0d 0a 70 75 62 6c 69 63 20 69 6d 70 ons;..public imp 0400: 6f 72 74 20 77 69 6e 33 32 2e 6c 6d 61 63 63 65 ort win32.lmacce 0410: 73 73 3b 0d 0a 70 75 62 6c 69 63 20 69 6d 70 6f ss;..public impo 0420: 72 74 20 77 69 6e 33 32 2e 6c 6d 61 6c 65 72 74 rt win32.lmalert 0430: 3b 0d 0a 70 75 62 6c 69 63 20 69 6d 70 6f 72 74 ;..public import 0440: 20 77 69 6e 33 32 2e 6c 6d 61 74 3b 0d 0a 70 75 win32.lmat;..pu 0450: 62 6c 69 63 20 69 6d 70 6f 72 74 20 77 69 6e 33 blic import win3 0460: 32 2e 6c 6d 65 72 72 3b 0d 0a 70 75 62 6c 69 63 2.lmerr;..public 0470: 20 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e 6c 6d import win32.lm 0480: 73 68 61 72 65 3b 0d 0a 70 75 62 6c 69 63 20 69 share;..public i 0490: 6d 70 6f 72 74 20 77 69 6e 33 32 2e 6c 6d 61 70 mport win32.lmap 04a0: 69 62 75 66 3b 0d 0a 70 75 62 6c 69 63 20 69 6d ibuf;..public im 04b0: 70 6f 72 74 20 77 69 6e 33 32 2e 6c 6d 72 65 6d port win32.lmrem 04c0: 75 74 6c 3b 0d 0a 70 75 62 6c 69 63 20 69 6d 70 utl;..public imp 04d0: 6f 72 74 20 77 69 6e 33 32 2e 6c 6d 72 65 70 6c ort win32.lmrepl 04e0: 3b 0d 0a 70 75 62 6c 69 63 20 69 6d 70 6f 72 74 ;..public import 04f0: 20 77 69 6e 33 32 2e 6c 6d 75 73 65 3b 0d 0a 70 win32.lmuse;..p 0500: 75 62 6c 69 63 20 69 6d 70 6f 72 74 20 77 69 6e ublic import win 0510: 33 32 2e 6c 6d 73 74 61 74 73 3b 0d 0a 70 75 62 32.lmstats;..pub 0520: 6c 69 63 20 69 6d 70 6f 72 74 20 77 69 6e 33 32 lic import win32 0530: 2e 6c 6d 77 6b 73 74 61 3b 0d 0a 70 75 62 6c 69 .lmwksta;..publi 0540: 63 20 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e 6c c import win32.l 0550: 6d 73 65 72 76 65 72 3b 0d 0a 0d 0a 76 65 72 73 mserver;....vers 0560: 69 6f 6e 20 28 57 69 6e 64 6f 77 73 32 30 30 30 ion (Windows2000 0570: 29 20 7b 0d 0a 7d 20 65 6c 73 65 20 7b 0d 0a 09 ) {..} else {... 0580: 70 75 62 6c 69 63 20 69 6d 70 6f 72 74 20 77 69 public import wi 0590: 6e 33 32 2e 6c 6d 6d 73 67 3b 0d 0a 7d 0d 0a 0d n32.lmmsg;..}... 05a0: 0a 2f 2f 20 46 49 58 4d 45 3a 20 45 76 65 72 79 .// FIXME: Every 05b0: 74 68 69 6e 67 20 69 6e 20 74 68 65 73 65 20 6e thing in these n 05c0: 65 78 74 20 66 69 6c 65 73 20 73 65 65 6d 73 20 ext files seems 05d0: 74 6f 20 62 65 20 64 65 70 72 65 63 61 74 65 64 to be deprecated 05e0: 21 0d 0a 69 6d 70 6f 72 74 20 77 69 6e 33 32 2e !..import win32. 05f0: 6c 6d 61 75 64 69 74 3b 0d 0a 69 6d 70 6f 72 74 lmaudit;..import 0600: 20 77 69 6e 33 32 2e 6c 6d 63 68 64 65 76 3b 20 win32.lmchdev; 0610: 2f 2f 20 63 61 6e 27 74 20 66 69 6e 64 20 6d 61 // can't find ma 0620: 6e 79 20 64 6f 63 73 20 66 6f 72 20 66 75 6e 63 ny docs for func 0630: 74 69 6f 6e 73 20 66 72 6f 6d 20 74 68 69 73 20 tions from this 0640: 66 69 6c 65 2e 0d 0a 69 6d 70 6f 72 74 20 77 69 file...import wi 0650: 6e 33 32 2e 6c 6d 63 6f 6e 66 69 67 3b 0d 0a 69 n32.lmconfig;..i 0660: 6d 70 6f 72 74 20 77 69 6e 33 32 2e 6c 6d 65 72 mport win32.lmer 0670: 72 6c 6f 67 3b 0d 0a 69 6d 70 6f 72 74 20 77 69 rlog;..import wi 0680: 6e 33 32 2e 6c 6d 73 76 63 3b 0d 0a 69 6d 70 6f n32.lmsvc;..impo 0690: 72 74 20 77 69 6e 33 32 2e 6c 6d 73 6e 61 6d 65 rt win32.lmsname 06a0: 3b 20 2f 2f 20 69 6e 20 4d 69 6e 47 57 2c 20 74 ; // in MinGW, t 06b0: 68 69 73 20 77 61 73 20 70 75 62 6c 69 63 6c 79 his was publicly 06c0: 20 69 6e 63 6c 75 64 65 64 20 62 79 20 6c 6d 2e included by lm. 06d0: 6c 6d 73 76 63 0d 0a lmsvc..