forked from Mirrors/wine-wine
ntdll: Use wcscpy() instead of strcpyW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>feature/deterministic
parent
20f90c1f89
commit
18411a19b4
|
@ -737,7 +737,7 @@ static WCHAR *strdupW(const WCHAR* str)
|
|||
|
||||
if (!(ptr = RtlAllocateHeap(GetProcessHeap(), 0, (strlenW(str) + 1) * sizeof(WCHAR))))
|
||||
return NULL;
|
||||
return strcpyW(ptr, str);
|
||||
return wcscpy(ptr, str);
|
||||
}
|
||||
|
||||
static WCHAR *xmlstrdupW(const xmlstr_t* str)
|
||||
|
@ -1098,7 +1098,7 @@ static WCHAR *build_assembly_dir(struct assembly_identity* ai)
|
|||
|
||||
if (!(ret = RtlAllocateHeap( GetProcessHeap(), 0, size ))) return NULL;
|
||||
|
||||
strcpyW( ret, arch );
|
||||
wcscpy( ret, arch );
|
||||
strcatW( ret, undW );
|
||||
strcatW( ret, name );
|
||||
strcatW( ret, undW );
|
||||
|
@ -1121,7 +1121,7 @@ static inline void append_string( WCHAR *buffer, const WCHAR *prefix, const WCHA
|
|||
strcatW( buffer, prefix );
|
||||
p += strlenW(p);
|
||||
*p++ = '"';
|
||||
strcpyW( p, str );
|
||||
wcscpy( p, str );
|
||||
p += strlenW(p);
|
||||
*p++ = '"';
|
||||
*p = 0;
|
||||
|
@ -1152,7 +1152,7 @@ static WCHAR *build_assembly_id( const struct assembly_identity *ai )
|
|||
if (!(ret = RtlAllocateHeap( GetProcessHeap(), 0, (size + 1) * sizeof(WCHAR) )))
|
||||
return NULL;
|
||||
|
||||
if (ai->name) strcpyW( ret, ai->name );
|
||||
if (ai->name) wcscpy( ret, ai->name );
|
||||
else *ret = 0;
|
||||
append_string( ret, archW, ai->arch );
|
||||
append_string( ret, public_keyW, ai->public_key );
|
||||
|
@ -3074,7 +3074,7 @@ static NTSTATUS get_manifest_in_associated_manifest( struct actctx_loader* acl,
|
|||
if (!(buffer = RtlAllocateHeap( GetProcessHeap(), 0,
|
||||
(strlenW(filename) + 10) * sizeof(WCHAR) + sizeof(dotManifestW) )))
|
||||
return STATUS_NO_MEMORY;
|
||||
strcpyW( buffer, filename );
|
||||
wcscpy( buffer, filename );
|
||||
if (resid != 1) NTDLL_swprintf( buffer + strlenW(buffer), fmtW, resid );
|
||||
strcatW( buffer, dotManifestW );
|
||||
RtlInitUnicodeString( &nameW, buffer );
|
||||
|
@ -3193,7 +3193,7 @@ static NTSTATUS lookup_winsxs(struct actctx_loader* acl, struct assembly_identit
|
|||
strlenW(user_shared_data->NtSystemRoot) * sizeof(WCHAR) )))
|
||||
return STATUS_NO_MEMORY;
|
||||
|
||||
strcpyW( path, user_shared_data->NtSystemRoot );
|
||||
wcscpy( path, user_shared_data->NtSystemRoot );
|
||||
memcpy( path + strlenW(path), manifest_dirW, sizeof(manifest_dirW) );
|
||||
|
||||
if (!RtlDosPathNameToNtPathName_U( path, &path_us, NULL, NULL ))
|
||||
|
@ -3233,7 +3233,7 @@ static NTSTATUS lookup_winsxs(struct actctx_loader* acl, struct assembly_identit
|
|||
}
|
||||
|
||||
path[path_us.Length/sizeof(WCHAR)] = '\\';
|
||||
strcpyW( path + path_us.Length/sizeof(WCHAR) + 1, file );
|
||||
wcscpy( path + path_us.Length/sizeof(WCHAR) + 1, file );
|
||||
RtlInitUnicodeString( &path_us, path );
|
||||
*strrchrW(file, '.') = 0; /* remove .manifest extension */
|
||||
|
||||
|
@ -3289,7 +3289,7 @@ static NTSTATUS lookup_assembly(struct actctx_loader* acl,
|
|||
* First 'appdir' is used as <dir>, if that failed
|
||||
* it tries application manifest file path.
|
||||
*/
|
||||
strcpyW( buffer, acl->actctx->appdir.info );
|
||||
wcscpy( buffer, acl->actctx->appdir.info );
|
||||
p = buffer + strlenW(buffer);
|
||||
for (i = 0; i < 4; i++)
|
||||
{
|
||||
|
@ -3300,10 +3300,10 @@ static NTSTATUS lookup_assembly(struct actctx_loader* acl,
|
|||
}
|
||||
else *p++ = '\\';
|
||||
|
||||
strcpyW( p, ai->name );
|
||||
wcscpy( p, ai->name );
|
||||
p += strlenW(p);
|
||||
|
||||
strcpyW( p, dotDllW );
|
||||
wcscpy( p, dotDllW );
|
||||
if (RtlDosPathNameToNtPathName_U( buffer, &nameW, NULL, NULL ))
|
||||
{
|
||||
status = open_nt_file( &file, &nameW );
|
||||
|
@ -3318,7 +3318,7 @@ static NTSTATUS lookup_assembly(struct actctx_loader* acl,
|
|||
RtlFreeUnicodeString( &nameW );
|
||||
}
|
||||
|
||||
strcpyW( p, dotManifestW );
|
||||
wcscpy( p, dotManifestW );
|
||||
if (RtlDosPathNameToNtPathName_U( buffer, &nameW, NULL, NULL ))
|
||||
{
|
||||
status = open_nt_file( &file, &nameW );
|
||||
|
@ -5604,6 +5604,6 @@ NTSTATUS WINAPI RtlQueryActivationContextApplicationSettings( DWORD flags, HANDL
|
|||
|
||||
if (written) *written = strlenW(res) + 1;
|
||||
if (size < strlenW(res)) return STATUS_BUFFER_TOO_SMALL;
|
||||
strcpyW( buffer, res );
|
||||
wcscpy( buffer, res );
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
|
|
@ -348,7 +348,7 @@ static const char *add_dir_data_nameA( struct dir_data *data, const char *name )
|
|||
static const WCHAR *add_dir_data_nameW( struct dir_data *data, const WCHAR *name )
|
||||
{
|
||||
WCHAR *ptr = get_dir_data_space( data, (strlenW( name ) + 1) * sizeof(WCHAR) );
|
||||
if (ptr) strcpyW( ptr, name );
|
||||
if (ptr) wcscpy( ptr, name );
|
||||
return ptr;
|
||||
}
|
||||
|
||||
|
|
|
@ -709,7 +709,7 @@ static void get_image_path( const char *argv0, UNICODE_STRING *path )
|
|||
/* build builtin path inside system directory */
|
||||
len = strlenW( system_dir );
|
||||
if (strlenW( name ) >= MAX_PATH - 4 - len) goto failed;
|
||||
strcpyW( full_name, system_dir );
|
||||
wcscpy( full_name, system_dir );
|
||||
strcatW( full_name, name );
|
||||
if (!strchrW( name, '.' )) strcatW( full_name, exeW );
|
||||
}
|
||||
|
@ -744,7 +744,7 @@ static void set_library_wargv( char **argv, const UNICODE_STRING *image )
|
|||
p = (WCHAR *)(wargv + argc + 1);
|
||||
if (image)
|
||||
{
|
||||
strcpyW( p, image->Buffer );
|
||||
wcscpy( p, image->Buffer );
|
||||
wargv[0] = p;
|
||||
p += 1 + image->Length / sizeof(WCHAR);
|
||||
total -= 1 + image->Length / sizeof(WCHAR);
|
||||
|
@ -831,7 +831,7 @@ static void build_command_line( WCHAR **argv, UNICODE_STRING *cmdline )
|
|||
}
|
||||
else
|
||||
{
|
||||
strcpyW( p, *arg );
|
||||
wcscpy( p, *arg );
|
||||
p += strlenW( p );
|
||||
}
|
||||
if (has_space)
|
||||
|
|
|
@ -99,7 +99,6 @@
|
|||
#include "ntstatus.h"
|
||||
#define WIN32_NO_STATUS
|
||||
#define NONAMELESSUNION
|
||||
#include "wine/unicode.h"
|
||||
#include "wine/debug.h"
|
||||
#include "wine/server.h"
|
||||
#include "ntdll_misc.h"
|
||||
|
|
|
@ -1774,7 +1774,7 @@ static BOOL get_builtin_fullname( UNICODE_STRING *nt_name, const UNICODE_STRING
|
|||
if (!(fullname = RtlAllocateHeap( GetProcessHeap(), 0,
|
||||
(strlenW(system_dir) + len + 5) * sizeof(WCHAR) )))
|
||||
return FALSE;
|
||||
strcpyW( fullname, nt_prefixW );
|
||||
wcscpy( fullname, nt_prefixW );
|
||||
strcatW( fullname, system_dir );
|
||||
strcatW( fullname, filenameW );
|
||||
done:
|
||||
|
@ -2235,7 +2235,7 @@ static NTSTATUS get_dll_load_path_search_flags( LPCWSTR module, DWORD flags, WCH
|
|||
p = append_path( p, dir->dir + 4 /* \??\ */, -1 );
|
||||
p = append_path( p, dll_directory.Buffer, dll_directory.Length / sizeof(WCHAR) );
|
||||
}
|
||||
if (flags & LOAD_LIBRARY_SEARCH_SYSTEM32) strcpyW( p, system_dir );
|
||||
if (flags & LOAD_LIBRARY_SEARCH_SYSTEM32) wcscpy( p, system_dir );
|
||||
else
|
||||
{
|
||||
if (p > ret) p--;
|
||||
|
@ -2781,7 +2781,7 @@ static NTSTATUS find_actctx_dll( LPCWSTR libname, LPWSTR *fullname )
|
|||
}
|
||||
memcpy( p, info->lpAssemblyManifestPath, dirlen * sizeof(WCHAR) );
|
||||
p += dirlen;
|
||||
strcpyW( p, libname );
|
||||
wcscpy( p, libname );
|
||||
goto done;
|
||||
}
|
||||
}
|
||||
|
@ -2800,14 +2800,14 @@ static NTSTATUS find_actctx_dll( LPCWSTR libname, LPWSTR *fullname )
|
|||
status = STATUS_NO_MEMORY;
|
||||
goto done;
|
||||
}
|
||||
strcpyW( p, user_shared_data->NtSystemRoot );
|
||||
wcscpy( p, user_shared_data->NtSystemRoot );
|
||||
p += strlenW(p);
|
||||
memcpy( p, winsxsW, sizeof(winsxsW) );
|
||||
p += ARRAY_SIZE( winsxsW );
|
||||
memcpy( p, info->lpAssemblyDirectoryName, info->ulAssemblyDirectoryNameLength );
|
||||
p += info->ulAssemblyDirectoryNameLength / sizeof(WCHAR);
|
||||
*p++ = '\\';
|
||||
strcpyW( p, libname );
|
||||
wcscpy( p, libname );
|
||||
done:
|
||||
RtlFreeHeap( GetProcessHeap(), 0, info );
|
||||
RtlReleaseActivationContext( data.hActCtx );
|
||||
|
@ -2844,7 +2844,7 @@ static NTSTATUS search_dll_file( LPCWSTR paths, LPCWSTR search, UNICODE_STRING *
|
|||
if (*ptr == ';') ptr++;
|
||||
memcpy( name, paths, len * sizeof(WCHAR) );
|
||||
if (len && name[len - 1] != '\\') name[len++] = '\\';
|
||||
strcpyW( name + len, search );
|
||||
wcscpy( name + len, search );
|
||||
|
||||
nt_name->Buffer = NULL;
|
||||
if ((status = RtlDosPathNameToNtPathName_U_WithStatus( name, nt_name, NULL, NULL ))) goto done;
|
||||
|
@ -2859,7 +2859,7 @@ static NTSTATUS search_dll_file( LPCWSTR paths, LPCWSTR search, UNICODE_STRING *
|
|||
if (!found_image)
|
||||
{
|
||||
/* not found, return file in the system dir to be loaded as builtin */
|
||||
strcpyW( name, system_dir );
|
||||
wcscpy( name, system_dir );
|
||||
strcatW( name, search );
|
||||
if (!RtlDosPathNameToNtPathName_U( name, nt_name, NULL, NULL )) status = STATUS_NO_MEMORY;
|
||||
}
|
||||
|
@ -2895,7 +2895,7 @@ static NTSTATUS find_dll_file( const WCHAR *load_path, const WCHAR *libname, con
|
|||
if (!(dllname = RtlAllocateHeap( GetProcessHeap(), 0,
|
||||
(strlenW(libname)+strlenW(default_ext)+1) * sizeof(WCHAR))))
|
||||
return STATUS_NO_MEMORY;
|
||||
strcpyW( dllname, libname );
|
||||
wcscpy( dllname, libname );
|
||||
strcatW( dllname, default_ext );
|
||||
libname = dllname;
|
||||
}
|
||||
|
|
|
@ -343,7 +343,7 @@ static HANDLE get_app_key( const WCHAR *app_name )
|
|||
sizeof(AppDefaultsW) + sizeof(DllOverridesW) +
|
||||
strlenW(app_name) * sizeof(WCHAR) );
|
||||
if (!str) return 0;
|
||||
strcpyW( str, AppDefaultsW );
|
||||
wcscpy( str, AppDefaultsW );
|
||||
strcatW( str, app_name );
|
||||
strcatW( str, DllOverridesW );
|
||||
|
||||
|
@ -454,7 +454,7 @@ enum loadorder get_load_order( const WCHAR *app_name, const UNICODE_STRING *nt_n
|
|||
|
||||
if (!(len = strlenW(path))) return ret;
|
||||
if (!(module = RtlAllocateHeap( GetProcessHeap(), 0, (len + 2) * sizeof(WCHAR) ))) return ret;
|
||||
strcpyW( module+1, path ); /* reserve module[0] for the wildcard char */
|
||||
wcscpy( module+1, path ); /* reserve module[0] for the wildcard char */
|
||||
remove_dll_ext( module + 1 );
|
||||
basename = (WCHAR *)get_basename( module+1 );
|
||||
|
||||
|
|
|
@ -849,7 +849,7 @@ static LCID unix_locale_to_lcid( const char *unix_name )
|
|||
{
|
||||
if (!strcmpW( buffer, posixW ) || !strcmpW( buffer, cW ))
|
||||
return MAKELCID( MAKELANGID(LANG_ENGLISH,SUBLANG_DEFAULT), SORT_DEFAULT );
|
||||
strcpyW( win_name, buffer );
|
||||
wcscpy( win_name, buffer );
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -874,7 +874,7 @@ static LCID unix_locale_to_lcid( const char *unix_name )
|
|||
|
||||
/* rebuild a Windows name */
|
||||
|
||||
strcpyW( win_name, buffer );
|
||||
wcscpy( win_name, buffer );
|
||||
if (modifier)
|
||||
{
|
||||
if (!strcmpW( modifier, latinW )) strcatW( win_name, latnW );
|
||||
|
@ -885,7 +885,7 @@ static LCID unix_locale_to_lcid( const char *unix_name )
|
|||
{
|
||||
p = win_name + strlenW(win_name);
|
||||
*p++ = '-';
|
||||
strcpyW( p, country );
|
||||
wcscpy( p, country );
|
||||
}
|
||||
|
||||
if (!RtlLocaleNameToLcid( win_name, &lcid, 0 )) return lcid;
|
||||
|
@ -1672,7 +1672,7 @@ NTSTATUS WINAPI RtlLocaleNameToLcid( const WCHAR *name, LCID *lcid, ULONG flags
|
|||
goto found;
|
||||
}
|
||||
if (strlenW( name ) >= LOCALE_NAME_MAX_LENGTH) return STATUS_INVALID_PARAMETER_1;
|
||||
strcpyW( lang, name );
|
||||
wcscpy( lang, name );
|
||||
|
||||
if ((p = strpbrkW( lang, sepW )) && *p == '-')
|
||||
{
|
||||
|
|
|
@ -302,6 +302,7 @@ int WINAPIV NTDLL_swprintf( WCHAR *str, const WCHAR *format, ... );
|
|||
#define towupper(c) NTDLL_towupper(c)
|
||||
#define wcslwr(s) NTDLL__wcslwr(s)
|
||||
#define wcsupr(s) NTDLL__wcsupr(s)
|
||||
#define wcscpy(d,s) NTDLL_wcscpy(d,s)
|
||||
#define wcstoul(s,e,b) NTDLL_wcstoul(s,e,b)
|
||||
|
||||
/* convert from straight ASCII to Unicode without depending on the current codepage */
|
||||
|
|
|
@ -394,7 +394,7 @@ NTSTATUS WINAPI RtlDosPathNameToNtPathName_U_WithStatus(const WCHAR *dos_path, U
|
|||
return STATUS_NO_MEMORY;
|
||||
}
|
||||
|
||||
strcpyW(ntpath->Buffer, NTDosPrefixW);
|
||||
wcscpy(ntpath->Buffer, NTDosPrefixW);
|
||||
switch (RtlDetermineDosPathNameType_U(ptr))
|
||||
{
|
||||
case UNC_PATH: /* \\foo */
|
||||
|
@ -513,7 +513,7 @@ ULONG WINAPI RtlDosSearchPath_U(LPCWSTR paths, LPCWSTR search, LPCWSTR ext,
|
|||
memmove(name, paths, needed * sizeof(WCHAR));
|
||||
/* append '\\' if none is present */
|
||||
if (needed > 0 && name[needed - 1] != '\\') name[needed++] = '\\';
|
||||
strcpyW(&name[needed], search);
|
||||
wcscpy(&name[needed], search);
|
||||
if (ext) strcatW(&name[needed], ext);
|
||||
if (RtlDoesFileExists_U(name))
|
||||
{
|
||||
|
@ -832,7 +832,7 @@ DWORD WINAPI RtlGetFullPathName_U(const WCHAR* name, ULONG size, WCHAR* buffer,
|
|||
DWORD sz = LOWORD(dosdev); /* in bytes */
|
||||
|
||||
if (8 + sz + 2 > size) return sz + 10;
|
||||
strcpyW(buffer, DeviceRootW);
|
||||
wcscpy(buffer, DeviceRootW);
|
||||
memmove(buffer + 4, name + offset, sz);
|
||||
buffer[4 + sz / sizeof(WCHAR)] = '\0';
|
||||
/* file_part isn't set in this case */
|
||||
|
|
|
@ -1192,7 +1192,7 @@ static NTSTATUS RTL_KeyHandleCreateObject(ULONG RelativeTo, PCWSTR Path, POBJECT
|
|||
if (str->Buffer == NULL)
|
||||
return STATUS_NO_MEMORY;
|
||||
|
||||
strcpyW(str->Buffer, base);
|
||||
wcscpy(str->Buffer, base);
|
||||
strcatW(str->Buffer, Path);
|
||||
str->Length = len - sizeof(WCHAR);
|
||||
str->MaximumLength = len;
|
||||
|
|
|
@ -116,7 +116,7 @@ static const WCHAR **build_list( const WCHAR *buffer )
|
|||
WCHAR *str = (WCHAR *)(ret + count + 1);
|
||||
WCHAR *q = str;
|
||||
|
||||
strcpyW( str, buffer );
|
||||
wcscpy( str, buffer );
|
||||
count = 0;
|
||||
for (;;)
|
||||
{
|
||||
|
|
|
@ -42,7 +42,6 @@
|
|||
#include "winternl.h"
|
||||
#include "wine/debug.h"
|
||||
#include "wine/exception.h"
|
||||
#include "wine/unicode.h"
|
||||
#include "ntdll_misc.h"
|
||||
#include "inaddr.h"
|
||||
#include "in6addr.h"
|
||||
|
@ -1119,7 +1118,7 @@ NTSTATUS WINAPI RtlIpv4AddressToStringExW(const IN_ADDR *pin, USHORT port, LPWST
|
|||
|
||||
if (*psize > needed) {
|
||||
*psize = needed + 1;
|
||||
strcpyW(buffer, tmp_ip);
|
||||
wcscpy(buffer, tmp_ip);
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
|
|
@ -38,7 +38,6 @@
|
|||
#include "ntdll_misc.h"
|
||||
#include "wine/exception.h"
|
||||
#include "wine/library.h"
|
||||
#include "wine/unicode.h"
|
||||
#include "wine/debug.h"
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(ntdll);
|
||||
|
|
|
@ -684,7 +684,7 @@ static BOOL match_tz_name(const char* tz_name,
|
|||
if (reg_tzi->DaylightDate.wMonth)
|
||||
return TRUE;
|
||||
|
||||
strcpyW(key.key_name, reg_tzi->TimeZoneKeyName);
|
||||
wcscpy(key.key_name, reg_tzi->TimeZoneKeyName);
|
||||
match = bsearch(&key, mapping, ARRAY_SIZE(mapping), sizeof(mapping[0]), compare_tz_key);
|
||||
if (!match)
|
||||
return TRUE;
|
||||
|
|
|
@ -504,7 +504,7 @@ void version_init(void)
|
|||
if ((p = strrchrW( appname, '/' ))) appname = p + 1;
|
||||
if ((p = strrchrW( appname, '\\' ))) appname = p + 1;
|
||||
|
||||
strcpyW( appversion, appdefaultsW );
|
||||
wcscpy( appversion, appdefaultsW );
|
||||
strcatW( appversion, appname );
|
||||
RtlInitUnicodeString( &nameW, appversion );
|
||||
attr.RootDirectory = config_key;
|
||||
|
@ -595,7 +595,7 @@ NTSTATUS WINAPI RtlGetVersion( RTL_OSVERSIONINFOEXW *info )
|
|||
info->dwMinorVersion = current_version->dwMinorVersion;
|
||||
info->dwBuildNumber = current_version->dwBuildNumber;
|
||||
info->dwPlatformId = current_version->dwPlatformId;
|
||||
strcpyW( info->szCSDVersion, current_version->szCSDVersion );
|
||||
wcscpy( info->szCSDVersion, current_version->szCSDVersion );
|
||||
if(info->dwOSVersionInfoSize == sizeof(RTL_OSVERSIONINFOEXW))
|
||||
{
|
||||
info->wServicePackMajor = current_version->wServicePackMajor;
|
||||
|
|
Loading…
Reference in New Issue