regedit: Use C runtime wchar functions instead of wine/unicode.h.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
518a6c2d07
commit
0b18409cfc
|
@ -26,7 +26,6 @@
|
||||||
|
|
||||||
#include "wine/debug.h"
|
#include "wine/debug.h"
|
||||||
#include "wine/heap.h"
|
#include "wine/heap.h"
|
||||||
#include "wine/unicode.h"
|
|
||||||
|
|
||||||
WINE_DEFAULT_DEBUG_CHANNEL(regedit);
|
WINE_DEFAULT_DEBUG_CHANNEL(regedit);
|
||||||
|
|
||||||
|
@ -243,7 +242,7 @@ static void get_last_key(HWND hwndTV)
|
||||||
HTREEITEM selection = NULL;
|
HTREEITEM selection = NULL;
|
||||||
if (RegQueryValueExW(hkey, wszLastKey, NULL, NULL, (LPBYTE)wszVal, &dwSize) == ERROR_SUCCESS)
|
if (RegQueryValueExW(hkey, wszLastKey, NULL, NULL, (LPBYTE)wszVal, &dwSize) == ERROR_SUCCESS)
|
||||||
{
|
{
|
||||||
if (strcmpW(wszVal, g_pChildWnd->szPath))
|
if (lstrcmpW(wszVal, g_pChildWnd->szPath))
|
||||||
selection = FindPathInTree(hwndTV, wszVal);
|
selection = FindPathInTree(hwndTV, wszVal);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,6 @@
|
||||||
#include <shlwapi.h>
|
#include <shlwapi.h>
|
||||||
|
|
||||||
#include "wine/heap.h"
|
#include "wine/heap.h"
|
||||||
#include "wine/unicode.h"
|
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
|
|
||||||
static const WCHAR* editValueName;
|
static const WCHAR* editValueName;
|
||||||
|
@ -531,7 +530,7 @@ BOOL RenameKey(HWND hwnd, HKEY hRootKey, LPCWSTR keyPath, LPCWSTR newName)
|
||||||
|
|
||||||
if (!keyPath || !newName) return FALSE;
|
if (!keyPath || !newName) return FALSE;
|
||||||
|
|
||||||
if (!strrchrW(keyPath, '\\')) {
|
if (!wcsrchr(keyPath, '\\')) {
|
||||||
parentKey = hRootKey;
|
parentKey = hRootKey;
|
||||||
srcSubKey = keyPath;
|
srcSubKey = keyPath;
|
||||||
} else {
|
} else {
|
||||||
|
@ -539,7 +538,7 @@ BOOL RenameKey(HWND hwnd, HKEY hRootKey, LPCWSTR keyPath, LPCWSTR newName)
|
||||||
|
|
||||||
parentPath = heap_xalloc((lstrlenW(keyPath) + 1) * sizeof(WCHAR));
|
parentPath = heap_xalloc((lstrlenW(keyPath) + 1) * sizeof(WCHAR));
|
||||||
lstrcpyW(parentPath, keyPath);
|
lstrcpyW(parentPath, keyPath);
|
||||||
srcSubKey_copy = strrchrW(parentPath, '\\');
|
srcSubKey_copy = wcsrchr(parentPath, '\\');
|
||||||
*srcSubKey_copy = 0;
|
*srcSubKey_copy = 0;
|
||||||
srcSubKey = srcSubKey_copy + 1;
|
srcSubKey = srcSubKey_copy + 1;
|
||||||
lRet = RegOpenKeyExW(hRootKey, parentPath, 0, KEY_READ | KEY_CREATE_SUB_KEY, &parentKey);
|
lRet = RegOpenKeyExW(hRootKey, parentPath, 0, KEY_READ | KEY_CREATE_SUB_KEY, &parentKey);
|
||||||
|
|
|
@ -30,7 +30,6 @@
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
#include "wine/debug.h"
|
#include "wine/debug.h"
|
||||||
#include "wine/heap.h"
|
#include "wine/heap.h"
|
||||||
#include "wine/unicode.h"
|
|
||||||
|
|
||||||
WINE_DEFAULT_DEBUG_CHANNEL(regedit);
|
WINE_DEFAULT_DEBUG_CHANNEL(regedit);
|
||||||
|
|
||||||
|
@ -280,7 +279,7 @@ static void OnMenuSelect(HWND hWnd, UINT nItemID, UINT nFlags, HMENU hSysMenu)
|
||||||
/* load appropriate string*/
|
/* load appropriate string*/
|
||||||
LPWSTR lpsz = str;
|
LPWSTR lpsz = str;
|
||||||
/* first newline terminates actual string*/
|
/* first newline terminates actual string*/
|
||||||
lpsz = strchrW(lpsz, '\n');
|
lpsz = wcschr(lpsz, '\n');
|
||||||
if (lpsz != NULL)
|
if (lpsz != NULL)
|
||||||
*lpsz = '\0';
|
*lpsz = '\0';
|
||||||
}
|
}
|
||||||
|
@ -427,7 +426,7 @@ static BOOL InitOpenFileName(HWND hWnd, OPENFILENAMEW *pofn)
|
||||||
LoadStringW(hInst, IDS_FILEDIALOG_FILTER_REG, filter_reg, MAX_PATH);
|
LoadStringW(hInst, IDS_FILEDIALOG_FILTER_REG, filter_reg, MAX_PATH);
|
||||||
LoadStringW(hInst, IDS_FILEDIALOG_FILTER_REG4, filter_reg4, MAX_PATH);
|
LoadStringW(hInst, IDS_FILEDIALOG_FILTER_REG4, filter_reg4, MAX_PATH);
|
||||||
LoadStringW(hInst, IDS_FILEDIALOG_FILTER_ALL, filter_all, MAX_PATH);
|
LoadStringW(hInst, IDS_FILEDIALOG_FILTER_ALL, filter_all, MAX_PATH);
|
||||||
snprintfW( FilterBuffer, MAX_PATH, filterW, filter_reg, 0, 0, filter_reg4, 0, 0, filter_all, 0, 0 );
|
swprintf( FilterBuffer, filterW, filter_reg, 0, 0, filter_reg4, 0, 0, filter_all, 0, 0 );
|
||||||
}
|
}
|
||||||
pofn->lpstrFilter = FilterBuffer;
|
pofn->lpstrFilter = FilterBuffer;
|
||||||
pofn->nFilterIndex = 1;
|
pofn->nFilterIndex = 1;
|
||||||
|
|
|
@ -35,7 +35,6 @@
|
||||||
#include "commctrl.h"
|
#include "commctrl.h"
|
||||||
|
|
||||||
#include "wine/heap.h"
|
#include "wine/heap.h"
|
||||||
#include "wine/unicode.h"
|
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
|
|
||||||
/* spaces dividing hex and ASCII */
|
/* spaces dividing hex and ASCII */
|
||||||
|
@ -95,7 +94,7 @@ static LPWSTR HexEdit_GetLineText(int offset, BYTE *pData, LONG cbData, LONG pad
|
||||||
for (i = 0; i < cbData; i++)
|
for (i = 0; i < cbData; i++)
|
||||||
{
|
{
|
||||||
/* (C1_ALPHA|C1_BLANK|C1_PUNCT|C1_DIGIT|C1_LOWER|C1_UPPER) */
|
/* (C1_ALPHA|C1_BLANK|C1_PUNCT|C1_DIGIT|C1_LOWER|C1_UPPER) */
|
||||||
if (isprintW(pData[offset + i]))
|
if (iswprint(pData[offset + i]))
|
||||||
lpszLine[6 + cbData * 3 + pad * 3 + DIV_SPACES + i] = pData[offset + i];
|
lpszLine[6 + cbData * 3 + pad * 3 + DIV_SPACES + i] = pData[offset + i];
|
||||||
else
|
else
|
||||||
lpszLine[6 + cbData * 3 + pad * 3 + DIV_SPACES + i] = '.';
|
lpszLine[6 + cbData * 3 + pad * 3 + DIV_SPACES + i] = '.';
|
||||||
|
|
|
@ -26,7 +26,6 @@
|
||||||
|
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
#include "wine/heap.h"
|
#include "wine/heap.h"
|
||||||
#include "wine/unicode.h"
|
|
||||||
|
|
||||||
static INT Image_String;
|
static INT Image_String;
|
||||||
static INT Image_Binary;
|
static INT Image_Binary;
|
||||||
|
|
|
@ -22,7 +22,6 @@
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <commctrl.h>
|
#include <commctrl.h>
|
||||||
#include <shellapi.h>
|
#include <shellapi.h>
|
||||||
#include "wine/unicode.h"
|
|
||||||
#include "wine/debug.h"
|
#include "wine/debug.h"
|
||||||
#include "wine/heap.h"
|
#include "wine/heap.h"
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
|
@ -113,7 +112,7 @@ static void PerformRegAction(REGEDIT_ACTION action, WCHAR **argv, int *i)
|
||||||
WCHAR *realname = NULL;
|
WCHAR *realname = NULL;
|
||||||
FILE *reg_file;
|
FILE *reg_file;
|
||||||
|
|
||||||
if (!strcmpW(filename, hyphen))
|
if (!lstrcmpW(filename, hyphen))
|
||||||
reg_file = stdin;
|
reg_file = stdin;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -197,7 +196,7 @@ BOOL ProcessCmdLine(WCHAR *cmdline)
|
||||||
if (argv[i][1] && argv[i][2] && argv[i][2] != ':')
|
if (argv[i][1] && argv[i][2] && argv[i][2] != ':')
|
||||||
break; /* This is a file path beginning with '/'. */
|
break; /* This is a file path beginning with '/'. */
|
||||||
|
|
||||||
switch (toupperW(argv[i][1]))
|
switch (towupper(argv[i][1]))
|
||||||
{
|
{
|
||||||
case '?':
|
case '?':
|
||||||
error_exit(STRING_USAGE);
|
error_exit(STRING_USAGE);
|
||||||
|
|
|
@ -27,7 +27,6 @@
|
||||||
#include <io.h>
|
#include <io.h>
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <commctrl.h>
|
#include <commctrl.h>
|
||||||
#include <wine/unicode.h>
|
|
||||||
#include <wine/debug.h>
|
#include <wine/debug.h>
|
||||||
#include <wine/heap.h>
|
#include <wine/heap.h>
|
||||||
#include "main.h"
|
#include "main.h"
|
||||||
|
@ -243,7 +242,7 @@ static BOOL convert_hex_to_dword(WCHAR *str, DWORD *dw)
|
||||||
if (!*str) goto error;
|
if (!*str) goto error;
|
||||||
|
|
||||||
p = str;
|
p = str;
|
||||||
while (isxdigitW(*p))
|
while (iswxdigit(*p))
|
||||||
{
|
{
|
||||||
count++;
|
count++;
|
||||||
p++;
|
p++;
|
||||||
|
@ -255,7 +254,7 @@ static BOOL convert_hex_to_dword(WCHAR *str, DWORD *dw)
|
||||||
if (*p && *p != ';') goto error;
|
if (*p && *p != ';') goto error;
|
||||||
|
|
||||||
*end = 0;
|
*end = 0;
|
||||||
*dw = strtoulW(str, &end, 16);
|
*dw = wcstoul(str, &end, 16);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
error:
|
error:
|
||||||
|
@ -288,7 +287,7 @@ static BOOL convert_hex_csv_to_hex(struct parser *parser, WCHAR **str)
|
||||||
WCHAR *end;
|
WCHAR *end;
|
||||||
unsigned long wc;
|
unsigned long wc;
|
||||||
|
|
||||||
wc = strtoulW(s, &end, 16);
|
wc = wcstoul(s, &end, 16);
|
||||||
if (wc > 0xff) return FALSE;
|
if (wc > 0xff) return FALSE;
|
||||||
|
|
||||||
if (s == end && wc == 0)
|
if (s == end && wc == 0)
|
||||||
|
@ -350,7 +349,7 @@ static BOOL parse_data_type(struct parser *parser, WCHAR **line)
|
||||||
|
|
||||||
for (ptr = data_types; ptr->tag; ptr++)
|
for (ptr = data_types; ptr->tag; ptr++)
|
||||||
{
|
{
|
||||||
if (strncmpW(ptr->tag, *line, ptr->len))
|
if (wcsncmp(ptr->tag, *line, ptr->len))
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
parser->parse_type = ptr->parse_type;
|
parser->parse_type = ptr->parse_type;
|
||||||
|
@ -362,7 +361,7 @@ static BOOL parse_data_type(struct parser *parser, WCHAR **line)
|
||||||
WCHAR *end;
|
WCHAR *end;
|
||||||
DWORD val;
|
DWORD val;
|
||||||
|
|
||||||
if (!**line || tolowerW((*line)[1]) == 'x')
|
if (!**line || towlower((*line)[1]) == 'x')
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
/* "hex(xx):" is special */
|
/* "hex(xx):" is special */
|
||||||
|
@ -434,13 +433,13 @@ static HKEY parse_key_name(WCHAR *key_name, WCHAR **key_path)
|
||||||
|
|
||||||
if (!key_name) return 0;
|
if (!key_name) return 0;
|
||||||
|
|
||||||
*key_path = strchrW(key_name, '\\');
|
*key_path = wcschr(key_name, '\\');
|
||||||
if (*key_path) (*key_path)++;
|
if (*key_path) (*key_path)++;
|
||||||
|
|
||||||
for (i = 0; i < ARRAY_SIZE(reg_class_keys); i++)
|
for (i = 0; i < ARRAY_SIZE(reg_class_keys); i++)
|
||||||
{
|
{
|
||||||
int len = lstrlenW(reg_class_namesW[i]);
|
int len = lstrlenW(reg_class_namesW[i]);
|
||||||
if (!strncmpiW(key_name, reg_class_namesW[i], len) &&
|
if (!wcsnicmp(key_name, reg_class_namesW[i], len) &&
|
||||||
(key_name[len] == 0 || key_name[len] == '\\'))
|
(key_name[len] == 0 || key_name[len] == '\\'))
|
||||||
{
|
{
|
||||||
return reg_class_keys[i];
|
return reg_class_keys[i];
|
||||||
|
@ -552,13 +551,13 @@ static enum reg_versions parse_file_header(const WCHAR *s)
|
||||||
|
|
||||||
while (*s == ' ' || *s == '\t') s++;
|
while (*s == ' ' || *s == '\t') s++;
|
||||||
|
|
||||||
if (!strcmpW(s, header_31))
|
if (!lstrcmpW(s, header_31))
|
||||||
return REG_VERSION_31;
|
return REG_VERSION_31;
|
||||||
|
|
||||||
if (!strcmpW(s, header_40))
|
if (!lstrcmpW(s, header_40))
|
||||||
return REG_VERSION_40;
|
return REG_VERSION_40;
|
||||||
|
|
||||||
if (!strcmpW(s, header_50))
|
if (!lstrcmpW(s, header_50))
|
||||||
return REG_VERSION_50;
|
return REG_VERSION_50;
|
||||||
|
|
||||||
/* The Windows version accepts registry file headers beginning with "REGEDIT" and ending
|
/* The Windows version accepts registry file headers beginning with "REGEDIT" and ending
|
||||||
|
@ -566,7 +565,7 @@ static enum reg_versions parse_file_header(const WCHAR *s)
|
||||||
* "REGEDIT 4", "REGEDIT9" and "REGEDIT4FOO" are all treated as valid file headers.
|
* "REGEDIT 4", "REGEDIT9" and "REGEDIT4FOO" are all treated as valid file headers.
|
||||||
* In all such cases, however, the contents of the registry file are not imported.
|
* In all such cases, however, the contents of the registry file are not imported.
|
||||||
*/
|
*/
|
||||||
if (!strncmpW(s, header_31, 7)) /* "REGEDIT" without NUL */
|
if (!wcsncmp(s, header_31, 7)) /* "REGEDIT" without NUL */
|
||||||
return REG_VERSION_FUZZY;
|
return REG_VERSION_FUZZY;
|
||||||
|
|
||||||
return REG_VERSION_INVALID;
|
return REG_VERSION_INVALID;
|
||||||
|
@ -618,11 +617,11 @@ static WCHAR *parse_win31_line_state(struct parser *parser, WCHAR *pos)
|
||||||
if (!(line = get_line(parser->file)))
|
if (!(line = get_line(parser->file)))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
if (strncmpW(line, hkcr, ARRAY_SIZE(hkcr)))
|
if (wcsncmp(line, hkcr, ARRAY_SIZE(hkcr)))
|
||||||
return line;
|
return line;
|
||||||
|
|
||||||
/* get key name */
|
/* get key name */
|
||||||
while (line[key_end] && !isspaceW(line[key_end])) key_end++;
|
while (line[key_end] && !iswspace(line[key_end])) key_end++;
|
||||||
|
|
||||||
value = line + key_end;
|
value = line + key_end;
|
||||||
while (*value == ' ' || *value == '\t') value++;
|
while (*value == ' ' || *value == '\t') value++;
|
||||||
|
@ -684,7 +683,7 @@ static WCHAR *key_name_state(struct parser *parser, WCHAR *pos)
|
||||||
{
|
{
|
||||||
WCHAR *p = pos, *key_end;
|
WCHAR *p = pos, *key_end;
|
||||||
|
|
||||||
if (*p == ' ' || *p == '\t' || !(key_end = strrchrW(p, ']')))
|
if (*p == ' ' || *p == '\t' || !(key_end = wcsrchr(p, ']')))
|
||||||
goto done;
|
goto done;
|
||||||
|
|
||||||
*key_end = 0;
|
*key_end = 0;
|
||||||
|
@ -761,7 +760,7 @@ static WCHAR *data_start_state(struct parser *parser, WCHAR *pos)
|
||||||
while (*p == ' ' || *p == '\t') p++;
|
while (*p == ' ' || *p == '\t') p++;
|
||||||
|
|
||||||
/* trim trailing whitespace */
|
/* trim trailing whitespace */
|
||||||
len = strlenW(p);
|
len = lstrlenW(p);
|
||||||
while (len > 0 && (p[len - 1] == ' ' || p[len - 1] == '\t')) len--;
|
while (len > 0 && (p[len - 1] == ' ' || p[len - 1] == '\t')) len--;
|
||||||
p[len] = 0;
|
p[len] = 0;
|
||||||
|
|
||||||
|
@ -926,7 +925,7 @@ static WCHAR *hex_multiline_state(struct parser *parser, WCHAR *pos)
|
||||||
while (*line == ' ' || *line == '\t') line++;
|
while (*line == ' ' || *line == '\t') line++;
|
||||||
if (!*line || *line == ';') return line;
|
if (!*line || *line == ';') return line;
|
||||||
|
|
||||||
if (!isxdigitW(*line)) goto invalid;
|
if (!iswxdigit(*line)) goto invalid;
|
||||||
|
|
||||||
set_state(parser, HEX_DATA);
|
set_state(parser, HEX_DATA);
|
||||||
return line;
|
return line;
|
||||||
|
@ -1040,11 +1039,11 @@ static WCHAR *get_lineW(FILE *fp)
|
||||||
while (next)
|
while (next)
|
||||||
{
|
{
|
||||||
static const WCHAR line_endings[] = {'\r','\n',0};
|
static const WCHAR line_endings[] = {'\r','\n',0};
|
||||||
WCHAR *p = strpbrkW(line, line_endings);
|
WCHAR *p = wcspbrk(line, line_endings);
|
||||||
if (!p)
|
if (!p)
|
||||||
{
|
{
|
||||||
size_t len, count;
|
size_t len, count;
|
||||||
len = strlenW(next);
|
len = lstrlenW(next);
|
||||||
memmove(buf, next, (len + 1) * sizeof(WCHAR));
|
memmove(buf, next, (len + 1) * sizeof(WCHAR));
|
||||||
if (size - len < 3)
|
if (size - len < 3)
|
||||||
{
|
{
|
||||||
|
@ -1217,7 +1216,7 @@ static size_t export_value_name(FILE *fp, WCHAR *name, size_t len, BOOL unicode)
|
||||||
{
|
{
|
||||||
WCHAR *str = REGPROC_escape_string(name, len, &line_len);
|
WCHAR *str = REGPROC_escape_string(name, len, &line_len);
|
||||||
WCHAR *buf = heap_xalloc((line_len + 4) * sizeof(WCHAR));
|
WCHAR *buf = heap_xalloc((line_len + 4) * sizeof(WCHAR));
|
||||||
line_len = sprintfW(buf, quoted_fmt, str);
|
line_len = swprintf(buf, quoted_fmt, str);
|
||||||
REGPROC_write_line(fp, buf, unicode);
|
REGPROC_write_line(fp, buf, unicode);
|
||||||
heap_free(buf);
|
heap_free(buf);
|
||||||
heap_free(str);
|
heap_free(str);
|
||||||
|
@ -1241,7 +1240,7 @@ static void export_string_data(WCHAR **buf, WCHAR *data, size_t size)
|
||||||
len = size / sizeof(WCHAR) - 1;
|
len = size / sizeof(WCHAR) - 1;
|
||||||
str = REGPROC_escape_string(data, len, &line_len);
|
str = REGPROC_escape_string(data, len, &line_len);
|
||||||
*buf = heap_xalloc((line_len + 3) * sizeof(WCHAR));
|
*buf = heap_xalloc((line_len + 3) * sizeof(WCHAR));
|
||||||
sprintfW(*buf, fmt, str);
|
swprintf(*buf, fmt, str);
|
||||||
heap_free(str);
|
heap_free(str);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1250,7 +1249,7 @@ static void export_dword_data(WCHAR **buf, DWORD *data)
|
||||||
static const WCHAR fmt[] = {'d','w','o','r','d',':','%','0','8','x',0};
|
static const WCHAR fmt[] = {'d','w','o','r','d',':','%','0','8','x',0};
|
||||||
|
|
||||||
*buf = heap_xalloc(15 * sizeof(WCHAR));
|
*buf = heap_xalloc(15 * sizeof(WCHAR));
|
||||||
sprintfW(*buf, fmt, *data);
|
swprintf(*buf, fmt, *data);
|
||||||
}
|
}
|
||||||
|
|
||||||
static size_t export_hex_data_type(FILE *fp, DWORD type, BOOL unicode)
|
static size_t export_hex_data_type(FILE *fp, DWORD type, BOOL unicode)
|
||||||
|
@ -1267,7 +1266,7 @@ static size_t export_hex_data_type(FILE *fp, DWORD type, BOOL unicode)
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
WCHAR *buf = heap_xalloc(15 * sizeof(WCHAR));
|
WCHAR *buf = heap_xalloc(15 * sizeof(WCHAR));
|
||||||
line_len = sprintfW(buf, hexp_fmt, type);
|
line_len = swprintf(buf, hexp_fmt, type);
|
||||||
REGPROC_write_line(fp, buf, unicode);
|
REGPROC_write_line(fp, buf, unicode);
|
||||||
heap_free(buf);
|
heap_free(buf);
|
||||||
}
|
}
|
||||||
|
@ -1296,7 +1295,7 @@ static void export_hex_data(FILE *fp, WCHAR **buf, DWORD type, DWORD line_len,
|
||||||
|
|
||||||
for (i = 0, pos = 0; i < size; i++)
|
for (i = 0, pos = 0; i < size; i++)
|
||||||
{
|
{
|
||||||
pos += sprintfW(*buf + pos, fmt, ((BYTE *)data)[i]);
|
pos += swprintf(*buf + pos, fmt, ((BYTE *)data)[i]);
|
||||||
if (i == num_commas) break;
|
if (i == num_commas) break;
|
||||||
(*buf)[pos++] = ',';
|
(*buf)[pos++] = ',';
|
||||||
(*buf)[pos] = 0;
|
(*buf)[pos] = 0;
|
||||||
|
@ -1361,7 +1360,7 @@ static WCHAR *build_subkey_path(WCHAR *path, DWORD path_len, WCHAR *subkey_name,
|
||||||
static const WCHAR fmt[] = {'%','s','\\','%','s',0};
|
static const WCHAR fmt[] = {'%','s','\\','%','s',0};
|
||||||
|
|
||||||
subkey_path = heap_xalloc((path_len + subkey_len + 2) * sizeof(WCHAR));
|
subkey_path = heap_xalloc((path_len + subkey_len + 2) * sizeof(WCHAR));
|
||||||
sprintfW(subkey_path, fmt, path, subkey_name);
|
swprintf(subkey_path, fmt, path, subkey_name);
|
||||||
|
|
||||||
return subkey_path;
|
return subkey_path;
|
||||||
}
|
}
|
||||||
|
@ -1372,7 +1371,7 @@ static void export_key_name(FILE *fp, WCHAR *name, BOOL unicode)
|
||||||
WCHAR *buf;
|
WCHAR *buf;
|
||||||
|
|
||||||
buf = heap_xalloc((lstrlenW(name) + 7) * sizeof(WCHAR));
|
buf = heap_xalloc((lstrlenW(name) + 7) * sizeof(WCHAR));
|
||||||
sprintfW(buf, fmt, name);
|
swprintf(buf, fmt, name);
|
||||||
REGPROC_write_line(fp, buf, unicode);
|
REGPROC_write_line(fp, buf, unicode);
|
||||||
heap_free(buf);
|
heap_free(buf);
|
||||||
}
|
}
|
||||||
|
@ -1457,7 +1456,7 @@ static FILE *REGPROC_open_export_file(WCHAR *file_name, BOOL unicode)
|
||||||
FILE *file;
|
FILE *file;
|
||||||
static const WCHAR hyphen[] = {'-',0};
|
static const WCHAR hyphen[] = {'-',0};
|
||||||
|
|
||||||
if (!strcmpW(file_name, hyphen))
|
if (!lstrcmpW(file_name, hyphen))
|
||||||
{
|
{
|
||||||
file = stdout;
|
file = stdout;
|
||||||
_setmode(_fileno(file), _O_BINARY);
|
_setmode(_fileno(file), _O_BINARY);
|
||||||
|
|
Loading…
Reference in New Issue