other-licenses/7zstub/src/Windows/ResourceString.cpp

Fri, 16 Jan 2015 18:13:44 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Fri, 16 Jan 2015 18:13:44 +0100
branch
TOR_BUG_9701
changeset 14
925c144e1f1f
permissions
-rw-r--r--

Integrate suggestion from review to improve consistency with existing code.

     1 // Windows/ResourceString.cpp
     3 #include "StdAfx.h"
     5 #include "Windows/ResourceString.h"
     6 #ifndef _UNICODE
     7 #include "Common/StringConvert.h"
     8 #endif
    10 extern HINSTANCE g_hInstance;
    11 #ifndef _UNICODE
    12 extern bool g_IsNT;
    13 #endif
    15 namespace NWindows {
    17 CSysString MyLoadString(UINT resourceID)
    18 {
    19   CSysString s;
    20   int size = 256;
    21   int len;
    22   do
    23   {
    24     size += 256;
    25     len = ::LoadString(g_hInstance, resourceID, s.GetBuffer(size - 1), size);
    26   } 
    27   while (size - len <= 1);
    28   s.ReleaseBuffer();
    29   return s;
    30 }
    32 #ifndef _UNICODE
    33 UString MyLoadStringW(UINT resourceID)
    34 {
    35   if (g_IsNT)
    36   {
    37     UString s;
    38     int size = 256;
    39     int len;
    40     do
    41     {
    42       size += 256;
    43       len = ::LoadStringW(g_hInstance, resourceID, s.GetBuffer(size - 1), size);
    44     } 
    45     while (size - len <= 1);
    46     s.ReleaseBuffer();
    47     return s;
    48   }
    49   return GetUnicodeString(MyLoadString(resourceID));
    50 }
    51 #endif
    53 }

mercurial