We can now at least compile the whole VM and main plugins with -DUNICODE
You can view, comment on, or merge this pull request online at:
https://github.com/OpenSmalltalk/opensmalltalk-vm/pull/332
Commit Summary
- Handle both an ASCII (UTF8) and a WIDE (UTF16) version of image/vm name/path
- DropPlugin: modernize OpenFile/_lwrite/_lclose API
- Drop plugin: let tempPathName be Wide
- Fix 2 potential buffer overrun in sqWin32Service.c
- Setting fp flags _MCW_PC and _MCW_IC is not supported on ARM nor X64
- The pageSize and pageMask are too short on WIN64
- Use the eventually true UNICODE imageNameT if -DUNICODE
- interpret pluginName as UTF8 rather than pure ASCII
- refactor sqMessageBox to void using toUnicode
- Discard now unused toUnicode fromUnicode fromSqueak fromSqueak2 lstrrchr
- #if 0 ? YAGNI ! we now use builtin _WIN32 _WIN64 anyway
- which SetUpPreferences()? There is no SetUpPreferences()!
- RegisterWindowMessage takes a TCHAR *
- Platform specific knowledge: WIN32_FILE and STD_FILE are mutually exclusive options
- We can't compare a TCHAR*windowClassName with a char*buf
- Tu quoque NewspeakVM, frustra TEXT macro...
- gai_strerror returns a TCHAR*, we cannot simply fprintf it...
- Let lookup account for NULL terminating a WCHAR*
- Revert to ASCII only version of DnsInfo
- iconPath is char*, LoadImage expects a TCHAR*
- And account for the fact that iconPath is not NULL-TERMINATED!
- DPRINTF must take a TCHAR*fmt because wvsprintf does!
- NOTIFYICONDATA.szTip maybe a WCHAR* if -DUNICODE
- _DISPLAY_DEVICE.DeviceString may be a WCHAR* if -DUNICODE, we cannot simply sprintf
- VM_VERSION_TEXT is a TCHAR*, we cannot simply fprintf
- iniName, manufacturer and model may be WCHAR* if -DUNICODE
- Information queried in Registry can be WideChar if -DUNICODE
- Make stderrName and stdoutName be WCHAR*
- Retract support for Windows95 (no you don't dream it's nearly 2019!)
- Handle UTF16 logName and serviceName
File Changes
Patch Links:
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.![](https://github.com/notifications/beacon/AhLyWzSjP03qFmNLeLgZoG0mDJwQayRaks5u-k52gaJpZM4Zlkze.gif)