<p>We can now at least compile the whole VM and main plugins with -DUNICODE</p>
<hr>
<h4>You can view, comment on, or merge this pull request online at:</h4>
<p> <a href='https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332'>https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332</a></p>
<h4>Commit Summary</h4>
<ul>
<li>Handle both an ASCII (UTF8) and a WIDE (UTF16) version of image/vm name/path</li>
<li>DropPlugin: modernize OpenFile/_lwrite/_lclose API</li>
<li>Drop plugin: let tempPathName be Wide</li>
<li>Fix 2 potential buffer overrun in sqWin32Service.c</li>
<li>Setting fp flags _MCW_PC and _MCW_IC is not supported on ARM nor X64</li>
<li>The pageSize and pageMask are too short on WIN64</li>
<li>Use the eventually true UNICODE imageNameT if -DUNICODE</li>
<li>interpret pluginName as UTF8 rather than pure ASCII</li>
<li>refactor sqMessageBox to void using toUnicode</li>
<li>Discard now unused toUnicode fromUnicode fromSqueak fromSqueak2 lstrrchr</li>
<li>#if 0 ? YAGNI ! we now use builtin _WIN32 _WIN64 anyway</li>
<li>which SetUpPreferences()? There is no SetUpPreferences()!</li>
<li>RegisterWindowMessage takes a TCHAR *</li>
<li>Platform specific knowledge: WIN32_FILE and STD_FILE are mutually exclusive options</li>
<li>We can't compare a TCHAR*windowClassName with a char*buf</li>
<li>Tu quoque NewspeakVM, frustra TEXT macro...</li>
<li>gai_strerror returns a TCHAR*, we cannot simply fprintf it...</li>
<li>Let lookup account for NULL terminating a WCHAR*</li>
<li>Revert to ASCII only version of DnsInfo</li>
<li>iconPath is char*, LoadImage expects a TCHAR*</li>
<li>And account for the fact that iconPath is not NULL-TERMINATED!</li>
<li>DPRINTF must take a TCHAR*fmt because wvsprintf does!</li>
<li>NOTIFYICONDATA.szTip maybe a WCHAR* if -DUNICODE</li>
<li>_DISPLAY_DEVICE.DeviceString may be a WCHAR* if -DUNICODE, we cannot simply sprintf</li>
<li>VM_VERSION_TEXT is a TCHAR*, we cannot simply fprintf</li>
<li>iniName, manufacturer and model may be WCHAR* if -DUNICODE</li>
<li>Information queried in Registry can be WideChar if -DUNICODE</li>
<li>Make stderrName and stdoutName be WCHAR*</li>
<li>Retract support for Windows95 (no you don't dream it's nearly 2019!)</li>
<li>Handle UTF16 logName and serviceName</li>
</ul>
<h4>File Changes</h4>
<ul>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-0">platforms/win32/plugins/DropPlugin/sqWin32Drop.c</a>
(78)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-1">platforms/win32/plugins/FilePlugin/sqWin32FilePrims.c</a>
(2)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-2">platforms/win32/plugins/HostWindowPlugin/sqWin32HostWindowPlugin.c</a>
(9)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-3">platforms/win32/plugins/SocketPlugin/sqWin32NewNet.c</a>
(4)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-4">platforms/win32/vm/sqPlatformSpecific.h</a>
(1)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-5">platforms/win32/vm/sqWin32.h</a>
(82)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-6">platforms/win32/vm/sqWin32Alloc.c</a>
(4)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-7">platforms/win32/vm/sqWin32DnsInfo.c</a>
(16)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-8">platforms/win32/vm/sqWin32ExternalPrims.c</a>
(5)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-9">platforms/win32/vm/sqWin32Main.c</a>
(463)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-10">platforms/win32/vm/sqWin32Prefs.c</a>
(18)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-11">platforms/win32/vm/sqWin32Prefs.h</a>
(6)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-12">platforms/win32/vm/sqWin32Service.c</a>
(307)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-13">platforms/win32/vm/sqWin32SpurAlloc.c</a>
(18)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-14">platforms/win32/vm/sqWin32Utils.c</a>
(114)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332/files#diff-15">platforms/win32/vm/sqWin32Window.c</a>
(103)
</li>
</ul>
<h4>Patch Links:</h4>
<ul>
<li><a href='https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332.patch'>https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332.patch</a></li>
<li><a href='https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332.diff'>https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332.diff</a></li>
</ul>
<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AhLyW9wNBh4YMHKY8ce1dPQtctNpELUxks5u-k52gaJpZM4Zlkze">mute the thread</a>.<img src="https://github.com/notifications/beacon/AhLyWzSjP03qFmNLeLgZoG0mDJwQayRaks5u-k52gaJpZM4Zlkze.gif" height="1" width="1" alt="" /></p>
<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/OpenSmalltalk/opensmalltalk-vm","title":"OpenSmalltalk/opensmalltalk-vm","subtitle":"GitHub repository","main_image_url":"https://github.githubassets.com/images/email/message_cards/header.png","avatar_image_url":"https://github.githubassets.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/OpenSmalltalk/opensmalltalk-vm"}},"updates":{"snippets":[{"icon":"DESCRIPTION","message":"Win64 unicode (#332)"}],"action":{"name":"View Pull Request","url":"https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332"}}}</script>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332",
"url": "https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332",
"name": "View Pull Request"
},
"description": "View this Pull Request on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>