Allow hex values not ending with comma
Andre Wisplinghoff
andre at myhost.localdomain
Thu Jan 3 17:42:24 CST 2008
---
programs/regedit/regproc.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/programs/regedit/regproc.c b/programs/regedit/regproc.c
index fe5323e..b31e41d 100644
--- a/programs/regedit/regproc.c
+++ b/programs/regedit/regproc.c
@@ -93,6 +93,7 @@ static BYTE* convertHexCSVToHex(char *str, DWORD *size)
while (*s != '\0') {
UINT wc;
char dummy;
+ BOOL error;
if (s[1] != ',' && s[1] != '\0' && s[2] != ',' && s[2] != '\0') {
fprintf(stderr,"%s: ERROR converting CSV hex stream. Invalid sequence at '%s'\n",
@@ -100,7 +101,11 @@ static BYTE* convertHexCSVToHex(char *str, DWORD *size)
HeapFree(GetProcessHeap(), 0, data);
return NULL;
}
- if (sscanf(s, "%x%c", &wc, &dummy) < 1 || dummy != ',') {
+ if(strlen(s)>2)
+ error=(sscanf(s, "%x%c", &wc, &dummy) < 1 || dummy != ',');
+ else
+ error=(sscanf(s, "%x", &wc) < 1);
+ if(error) {
fprintf(stderr,"%s: ERROR converting CSV hex stream. Invalid value at '%s'\n",
getAppName(), s);
HeapFree(GetProcessHeap(), 0, data);
--
1.5.3.7
--------------080708000805060705010006--
More information about the wine-patches
mailing list