Key words and seplacements are case insensitive
Jacek Caban
jack at itma.pwr.wroc.pl
Sat Mar 19 12:40:53 CST 2005
Changelog:
Key words and seplacements are case insensitive
-------------- next part --------------
Index: dlls/atl/registrar.c
===================================================================
RCS file: /home/wine/wine/dlls/atl/registrar.c,v
retrieving revision 1.5
diff -u -p -r1.5 registrar.c
--- dlls/atl/registrar.c 19 Mar 2005 17:04:13 -0000 1.5
+++ dlls/atl/registrar.c 19 Mar 2005 18:30:18 -0000
@@ -169,12 +169,14 @@ static HRESULT do_preprocess(Registrar *
strbuf_write(wstr, buf, 1);
}else {
for(rep_iter = This->rep; rep_iter; rep_iter = rep_iter->next) {
- if(rep_iter->key_len == iter-iter2
- && !memcmp(iter2, rep_iter->key, rep_iter->key_len*sizeof(OLECHAR)))
+ if(rep_iter->key_len == iter-iter2 && CompareStringW(LOCALE_USER_DEFAULT, NORM_IGNORECASE,
+ iter2, iter-iter2, rep_iter->key, rep_iter->key_len) == CSTR_EQUAL)
break;
}
- if(!rep_iter)
+ if(!rep_iter) {
+ WARN("Could not find replacement: %s\n", debugstr_wn(iter2, iter-iter2));
return DISP_E_EXCEPTION;
+ }
strbuf_write(rep_iter->item, buf, -1);
}
@@ -218,13 +220,13 @@ static HRESULT do_process_key(LPCOLESTR
while(buf->str[1] || buf->str[0] != '}') {
key_type = NORMAL;
- if(!lstrcmpW(buf->str, wstrNoRemove))
+ if(CompareStringW(LOCALE_USER_DEFAULT, NORM_IGNORECASE, buf->str, -1, wstrNoRemove, -1) == CSTR_EQUAL)
key_type = NO_REMOVE;
- else if(!lstrcmpW(buf->str, wstrForceRemove))
+ else if(CompareStringW(LOCALE_USER_DEFAULT, NORM_IGNORECASE, buf->str, -1, wstrForceRemove, -1) == CSTR_EQUAL)
key_type = FORCE_REMOVE;
- else if(!lstrcmpW(buf->str, wstrval))
+ else if(CompareStringW(LOCALE_USER_DEFAULT, NORM_IGNORECASE, buf->str, -1, wstrval, -1) == CSTR_EQUAL)
key_type = IS_VAL;
- else if(!lstrcmpW(buf->str, wstrDelete))
+ else if(CompareStringW(LOCALE_USER_DEFAULT, NORM_IGNORECASE, buf->str, -1, wstrDelete, -1) == CSTR_EQUAL)
key_type = DO_DELETE;
if(key_type != NORMAL) {
@@ -369,7 +371,7 @@ static HRESULT do_process_root_key(LPCOL
break;
}
for(i=0; i<sizeof(root_keys)/sizeof(root_keys[0]); i++) {
- if(!lstrcmpW(buf.str, root_keys[i].name))
+ if(CompareStringW(LOCALE_USER_DEFAULT, NORM_IGNORECASE, buf.str, -1, root_keys[i].name, -1) == CSTR_EQUAL)
break;
}
if(i == sizeof(root_keys)/sizeof(root_keys[0])) {
More information about the wine-patches
mailing list