Le mer 22/10/2003 à 12:26, Vincent Béron a écrit : > The documentation changes will be sent if this is accepted. > > Changelog: > Add a "disabled" keyword to dlloverride to completely disable the > loading of a module. Oups, forgot some parts. Here's an updated patch. Changelog: Add a "disable" keyword to loadorder to disable the loading of a module. Vincent
Index: dlls/ntdll/loader.c =================================================================== RCS file: /home/wine/wine/dlls/ntdll/loader.c,v retrieving revision 1.51 diff -u -r1.51 loader.c --- dlls/ntdll/loader.c 14 Oct 2003 05:19:24 -0000 1.51 +++ dlls/ntdll/loader.c 22 Oct 2003 16:18:11 -0000 @@ -1445,7 +1445,8 @@ nts = STATUS_DLL_NOT_FOUND; for (i = 0; i < LOADORDER_NTYPES; i++) { - if (loadorder[i] == LOADORDER_INVALID) break; + if ((loadorder[i] == LOADORDER_INVALID) || + (loadorder[i] == LOADORDER_DIS)) break; switch (loadorder[i]) { Index: dlls/ntdll/loadorder.c =================================================================== RCS file: /home/wine/wine/dlls/ntdll/loadorder.c,v retrieving revision 1.4 diff -u -r1.4 loadorder.c --- dlls/ntdll/loadorder.c 7 Oct 2003 22:56:34 -0000 1.4 +++ dlls/ntdll/loadorder.c 22 Oct 2003 16:18:12 -0000 @@ -86,13 +86,13 @@ /* default if nothing else specified */ static const enum loadorder_type default_loadorder[LOADORDER_NTYPES] = { - LOADORDER_BI, LOADORDER_DLL, 0 + LOADORDER_BI, LOADORDER_DLL, LOADORDER_DIS, 0 }; /* default for modules with an explicit path */ static const enum loadorder_type default_path_loadorder[LOADORDER_NTYPES] = { - LOADORDER_DLL, LOADORDER_BI, 0 + LOADORDER_DLL, LOADORDER_BI, LOADORDER_DIS, 0 }; static const WCHAR separatorsW[] = {',',' ','\t',0}; @@ -170,6 +170,7 @@ { case LOADORDER_DLL: strcat( buffer, "n," ); break; case LOADORDER_BI: strcat( buffer, "b," ); break; + case LOADORDER_DIS: strcat( buffer, "d," ); break; default: strcat( buffer, "?," ); break; } } @@ -223,6 +224,10 @@ case 'b': append_load_order( lo, LOADORDER_BI ); break; + case 'D': /* Disabled */ + case 'd': + append_load_order( lo, LOADORDER_DIS ); + break; } order += strcspnW( order, separatorsW ); } @@ -457,6 +462,7 @@ { case 'n': type = LOADORDER_DLL; break; case 'b': type = LOADORDER_BI; break; + case 'd': type = LOADORDER_DIS; break; case 's': break; /* no longer supported, ignore */ case 0: break; /* end of string */ default: Index: include/module.h =================================================================== RCS file: /home/wine/wine/include/module.h,v retrieving revision 1.102 diff -u -r1.102 module.h --- include/module.h 10 Oct 2003 00:12:17 -0000 1.102 +++ include/module.h 22 Oct 2003 16:19:05 -0000 @@ -145,6 +145,7 @@ LOADORDER_INVALID = 0, /* Must be 0 */ LOADORDER_DLL, /* Native DLLs */ LOADORDER_BI, /* Built-in modules */ + LOADORDER_DIS, /* Module disabled */ LOADORDER_NTYPES };