[PATCH] dmusic: Use wide-char string literals

Ruslan Kabatsayev b7.10110111 at gmail.com
Sat Dec 14 07:50:47 CST 2019


Is Code Hygiene [1] page in the WineHQ Wiki outdated? Has Wine begun
using wide literals? If yes, what made this switch possible?
(I'm sorry if I've missed a previous announcement on this topic;
googling doesn't reveal anything relevant.)

[1]: https://wiki.winehq.org/Code_Hygiene#Constants_as_Character_Arrays

On Fri, 13 Dec 2019 at 21:00, Michael Stefaniuc <mstefani at winehq.org> wrote:
>
> Signed-off-by: Michael Stefaniuc <mstefani at winehq.org>
> ---
>  dlls/dmusic/dmusic.c       | 8 +++-----
>  dlls/dmusic/tests/dmusic.c | 5 ++---
>  2 files changed, 5 insertions(+), 8 deletions(-)
>
> diff --git a/dlls/dmusic/dmusic.c b/dlls/dmusic/dmusic.c
> index cc798ce4d9..1916fb7bd9 100644
> --- a/dlls/dmusic/dmusic.c
> +++ b/dlls/dmusic/dmusic.c
> @@ -343,20 +343,18 @@ static HRESULT WINAPI IDirectMusic8Impl_EnumMasterClock(LPDIRECTMUSIC8 iface, DW
>      if (!index)
>      {
>          static const GUID guid_system_clock = { 0x58d58419, 0x71b4, 0x11d1, { 0xa7, 0x4c, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12 } };
> -        static const WCHAR name_system_clock[] = { 'S','y','s','t','e','m',' ','C','l','o','c','k',0 };
>
>          clock_info->ctType = 0;
>          clock_info->guidClock = guid_system_clock;
> -        lstrcpyW(clock_info->wszDescription, name_system_clock);
> +        lstrcpyW(clock_info->wszDescription, L"System Clock");
>      }
>      else
>      {
>          static const GUID guid_dsound_clock = { 0x58d58420, 0x71b4, 0x11d1, { 0xa7, 0x4c, 0x00, 0x00, 0xf8, 0x75, 0xac, 0x12 } };
> -        static const WCHAR name_dsound_clock[] = { 'D','i','r','e','c','t','S','o','u','n','d',' ','C','l','o','c','k',0 };
>
>          clock_info->ctType = 0;
>          clock_info->guidClock = guid_dsound_clock;
> -        lstrcpyW(clock_info->wszDescription, name_dsound_clock);
> +        lstrcpyW(clock_info->wszDescription, L"DirectSound Clock");
>      }
>
>      return S_OK;
> @@ -496,7 +494,7 @@ static const IDirectMusic8Vtbl DirectMusic8_Vtbl = {
>
>  static void create_system_ports_list(IDirectMusic8Impl* object)
>  {
> -    static const WCHAR emulated[] = {' ','[','E','m','u','l','a','t','e','d',']',0};
> +    static const WCHAR emulated[] = L" [Emulated]";
>      port_info * port;
>      ULONG nb_ports;
>      ULONG nb_midi_out;
> diff --git a/dlls/dmusic/tests/dmusic.c b/dlls/dmusic/tests/dmusic.c
> index f6c417af30..776f9d0ec9 100644
> --- a/dlls/dmusic/tests/dmusic.c
> +++ b/dlls/dmusic/tests/dmusic.c
> @@ -639,7 +639,6 @@ static void test_parsedescriptor(void)
>      IStream *stream;
>      DMUS_OBJECTDESC desc = {0};
>      HRESULT hr;
> -    const WCHAR s_inam[] = {'I','N','A','M','\0'};
>      const FOURCC alldesc[] =
>      {
>          FOURCC_RIFF, FOURCC_DLS, DMUS_FOURCC_CATEGORY_CHUNK, FOURCC_LIST,
> @@ -735,7 +734,7 @@ static void test_parsedescriptor(void)
>      ok(hr == S_OK, "ParseDescriptor failed: %08x, expected S_OK\n", hr);
>      ok(desc.dwValidData == (DMUS_OBJ_CLASS | DMUS_OBJ_NAME),
>              "Got valid data %#x, expected DMUS_OBJ_CLASS | DMUS_OBJ_NAME\n", desc.dwValidData);
> -    ok(!memcmp(desc.wszName, s_inam, sizeof(s_inam)), "Got name '%s', expected 'INAM'\n",
> +    ok(!lstrcmpW(desc.wszName, L"INAM"), "Got name '%s', expected 'INAM'\n",
>              wine_dbgstr_w(desc.wszName));
>      IStream_Release(stream);
>
> @@ -747,7 +746,7 @@ static void test_parsedescriptor(void)
>      ok(desc.dwValidData == (DMUS_OBJ_CLASS | DMUS_OBJ_NAME | DMUS_OBJ_VERSION),
>              "Got valid data %#x, expected DMUS_OBJ_CLASS | DMUS_OBJ_NAME | DMUS_OBJ_VERSION\n",
>              desc.dwValidData);
> -    ok(!memcmp(desc.wszName, s_inam, sizeof(s_inam)), "Got name '%s', expected 'INAM'\n",
> +    ok(!lstrcmpW(desc.wszName, L"INAM"), "Got name '%s', expected 'INAM'\n",
>              wine_dbgstr_w(desc.wszName));
>      IStream_Release(stream);
>
> --
> 2.23.0
>
>



More information about the wine-devel mailing list