"Dimitrie O. Paun" <[EMAIL PROTECTED]> writes:
> ChangeLog
> Revert default loadorder to native DLLs firsts, to use
> the programs supplied ones if available.
> (Bug discovered and investigated by Tony Lambregts)
I don't think we should revert it, using builtins by default is a good
idea IMO. We just need to handle dlls with an explicit path
differently; how about something like this?
Index: loader/loadorder.c
===
RCS file: /opt/cvs-commit/wine/loader/loadorder.c,v
retrieving revision 1.60
diff -u -r1.60 loadorder.c
--- loader/loadorder.c 23 Oct 2002 20:20:59 - 1.60
+++ loader/loadorder.c 14 Feb 2003 19:24:14 -
@@ -103,6 +103,12 @@
LOADORDER_BI, LOADORDER_DLL, 0, 0
};
+/* default for modules with an explicit path */
+static const enum loadorder_type default_path_loadorder[LOADORDER_NTYPES] =
+{
+LOADORDER_DLL, LOADORDER_BI, 0, 0
+};
+
static struct loadorder_list cmdline_list;
@@ -674,13 +680,18 @@
debugstr_loadorder(loadorder), debugstr_a(path) );
goto done;
}
-}
-
-/* and last the hard-coded default */
-memcpy( loadorder, default_loadorder, sizeof(default_loadorder) );
-TRACE( "got hardcoded default %s for %s\n",
- debugstr_loadorder(loadorder), debugstr_a(path) );
+/* and last the hard-coded default */
+memcpy( loadorder, default_loadorder, sizeof(default_loadorder) );
+TRACE( "got hardcoded default %s for %s\n",
+ debugstr_loadorder(loadorder), debugstr_a(path) );
+}
+else /* module contains an explicit path */
+{
+memcpy( loadorder, default_path_loadorder, sizeof(default_path_loadorder) );
+TRACE( "got hardcoded path default %s for %s\n",
+ debugstr_loadorder(loadorder), debugstr_a(path) );
+}
done:
if (app_key) NtClose( app_key );
--
Alexandre Julliard
[EMAIL PROTECTED]