wine/dlls/secur32 secur32.c
Alexandre Julliard
julliard at wine.codeweavers.com
Mon Nov 7 10:39:00 CST 2005
ChangeSet ID: 21138
CVSROOT: /opt/cvs-commit
Module name: wine
Changes by: julliard at winehq.org 2005/11/07 10:39:00
Modified files:
dlls/secur32 : secur32.c
Log message:
Stefan Huehner <stefan at huehner.org>
Fix segfault when querying non-existent SecurityProvider.
Patch: http://cvs.winehq.org/patch.py?id=21138
Old revision New revision Changes Path
1.12 1.13 +8 -3 wine/dlls/secur32/secur32.c
Index: wine/dlls/secur32/secur32.c
diff -u -p wine/dlls/secur32/secur32.c:1.12 wine/dlls/secur32/secur32.c:1.13
--- wine/dlls/secur32/secur32.c:1.12 7 Nov 2005 16:39: 0 -0000
+++ wine/dlls/secur32/secur32.c 7 Nov 2005 16:39: 0 -0000
@@ -573,16 +573,21 @@ static void SECUR32_initializeProviders(
SecurePackage *SECUR32_findPackageW(PWSTR packageName)
{
SecurePackage *ret = NULL;
+ BOOL matched = FALSE;
if (packageTable && packageName)
{
LIST_FOR_EACH_ENTRY(ret, &packageTable->table, SecurePackage, entry)
{
- if (!lstrcmpiW(ret->infoW.Name, packageName))
- break;
+ matched = !lstrcmpiW(ret->infoW.Name, packageName);
+ if (matched)
+ break;
}
- if (ret && ret->provider && !ret->provider->loaded)
+ if (!matched)
+ return NULL;
+
+ if (ret->provider && !ret->provider->loaded)
{
ret->provider->lib = LoadLibraryW(ret->provider->moduleName);
if (ret->provider->lib)
More information about the wine-cvs
mailing list