slight VERSION_GetVersion optimization
Andreas Mohr
a.mohr at mailto.de
Sun Sep 30 13:37:00 CDT 2001
Hi all,
speed optimization.
--
Andreas Mohr Stauferstr. 6, D-71272 Renningen, Germany
-------------- next part --------------
Determining best CVS host...
Using CVSROOT :pserver:cvs at rhlx01.fht-esslingen.de:/home/wine
Index: misc/version.c
===================================================================
RCS file: /home/wine/wine/misc/version.c,v
retrieving revision 1.45
diff -u -r1.45 version.c
--- misc/version.c 9 Aug 2001 21:16:55 -0000 1.45
+++ misc/version.c 30 Sep 2001 16:31:28 -0000
@@ -358,18 +358,26 @@
*/
static WINDOWS_VERSION VERSION_GetVersion(void)
{
- static WORD winver = 0xffff;
+ static WORD winver = 0xffff;
- if (versionForced) /* user has overridden any sensible checks */
- return defaultWinVersion;
+ if (winver == 0xffff) /* to be determined */
+ {
+ WINDOWS_VERSION retver;
+
+ if (versionForced) /* user has overridden any sensible checks */
+ winver = defaultWinVersion;
+ else
+ {
+ retver = VERSION_GetLinkedDllVersion();
- if (winver == 0xffff) /* to be determined */ {
- WINDOWS_VERSION retver = VERSION_GetLinkedDllVersion();
+ /* cache determined value, but do not store in case of WIN31 */
+ if (retver != WIN31) winver = retver;
- if (retver != WIN31) winver = retver;
- return retver;
+ return retver;
}
- return winver;
+ }
+
+ return winver;
}
More information about the wine-patches
mailing list