Re: Loadorder: new disable keyword (try #3)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Le mer 22/10/2003 à 12:37, Vincent Béron a écrit :
> 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

Sorry for the first two.

Third time's a charm.

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
 };
 
Index: dlls/kernel/ne_module.c
===================================================================
RCS file: /home/wine/wine/dlls/kernel/ne_module.c,v
retrieving revision 1.13
diff -u -r1.13 ne_module.c
--- dlls/kernel/ne_module.c	8 Oct 2003 03:57:02 -0000	1.13
+++ dlls/kernel/ne_module.c	22 Oct 2003 16:26:58 -0000
@@ -1226,7 +1226,8 @@
 
     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/kernel/process.c
===================================================================
RCS file: /home/wine/wine/dlls/kernel/process.c,v
retrieving revision 1.29
diff -u -r1.29 process.c
--- dlls/kernel/process.c	16 Oct 2003 19:31:11 -0000	1.29
+++ dlls/kernel/process.c	22 Oct 2003 16:26:59 -0000
@@ -179,7 +179,8 @@
 
     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])
         {
         case LOADORDER_DLL:
@@ -242,7 +243,8 @@
 
     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])
         {
         case LOADORDER_DLL:

[Index of Archives]     [Gimp for Windows]     [Red Hat]     [Samba]     [Yosemite Camping]     [Graphics Cards]     [Wine Home]

  Powered by Linux