source: trunk/src/kernel32/dbglocal.cpp@ 10384

Last change on this file since 10384 was 10384, checked in by sandervl, 22 years ago

update

File size: 3.6 KB
Line 
1/* $Id: dbglocal.cpp,v 1.29 2004-01-12 16:09:00 sandervl Exp $ */
2
3/*
4 * debug logging functions for OS/2
5 *
6 *
7 * Copyright 2000 Sander van Leeuwen
8 * Project Odin Software License can be found in LICENSE.TXT
9 */
10#include <os2wrap.h>
11#include <stdlib.h>
12#include <stdio.h>
13#include <string.h>
14#include <ctype.h>
15#include "dbglocal.h"
16
17#ifdef DEBUG
18
19USHORT DbgEnabledKERNEL32[DBG_MAXFILES] = {0};
20USHORT DbgEnabledLvl2KERNEL32[DBG_MAXFILES] = {0};
21
22static char *DbgFileNames[DBG_MAXFILES] =
23{
24"kernel32",
25"kobjects",
26"console",
27"conin",
28"conbuffer",
29"conout",
30"network",
31"hmdevio",
32"profile",
33"thread",
34"virtual",
35"thunk",
36"obsolete",
37"comm",
38"message",
39"resource",
40"exceptions",
41"heapshared",
42"cpuhlp",
43"heapcode",
44"lfile",
45"npipe",
46"oslibdos",
47"oslibmisc",
48"misc",
49"exceptutil",
50"lang",
51"iccio",
52"map",
53"win32util",
54"heap",
55"heapstring",
56"os2heap",
57"vmutex",
58"initterm",
59"handlemanager",
60"environ",
61"initsystem",
62"hmdevice",
63"hmopen32",
64"hmobjects",
65"hmevent",
66"hmmutex",
67"hmcomm",
68"hmsemaphore",
69"wprocess",
70"conprop",
71"conprop2",
72"winimagelx",
73"winimagebase",
74"windllbase",
75"winexebase",
76"time",
77"mmap",
78"winimagepe2lx",
79"winimagepeldr",
80"windllpe2lx",
81"windlllx",
82"windllpeldr",
83"winexepe2lx",
84"winexelx",
85"winexepeldr",
86"winres",
87"critsection",
88"pefile",
89"winimgres",
90"wintls",
91"async",
92"fileio",
93"hmtoken",
94"kernelrsrc",
95"atom",
96"disk",
97"directory",
98"cvtbitmap",
99"hmmmap",
100"cvtaccel",
101"cvticon",
102"cvticongrp",
103"oslibexcept",
104"cpu",
105"process",
106"cvtcursor",
107"cvtcursorgrp",
108"stubs",
109"interlock",
110"toolhelp",
111"codepage",
112"debug",
113"oslibdebug",
114"registry",
115"queue",
116"hmthread",
117"hmprocess",
118"vsemaphore",
119"exceptstackdump",
120"hmfile",
121"hmnpipe",
122"hmdisk",
123"version",
124"hmstd",
125"module",
126"mailslot",
127"hmmailslot",
128"hmparport",
129"hmnul",
130"overlappedio",
131"trace",
132"event",
133"mutex",
134"semaphore",
135"nls",
136"memory",
137"system",
138"string",
139"char",
140"osliblvm",
141"oslibtime",
142"conodin32",
143"oslibmem",
144"mmapview",
145"mmapdup",
146"oslibthread",
147"mmapnotify"
148};
149//******************************************************************************
150//******************************************************************************
151void ParseLogStatusKERNEL32()
152{
153 char *envvar = getenv(DBG_ENVNAME);
154 char *envvar2= getenv(DBG_ENVNAME_LVL2);
155 char *dbgvar;
156 int i;
157
158 for(i=0;i<DBG_MAXFILES;i++) {
159 DbgEnabledKERNEL32[i] = 1;
160 }
161
162 if(envvar) {
163 dbgvar = strstr(envvar, "dll");
164 if(dbgvar) {
165 if(*(dbgvar-1) == '-') {
166 for(i=0;i<DBG_MAXFILES;i++) {
167 DbgEnabledKERNEL32[i] = 0;
168 }
169 }
170 }
171 for(i=0;i<DBG_MAXFILES;i++) {
172 int len = strlen(DbgFileNames[i]);
173 dbgvar = strstr(envvar, DbgFileNames[i]);
174 if(dbgvar && !islower(dbgvar[len])) {
175 if(*(dbgvar-1) == '-') {
176 DbgEnabledKERNEL32[i] = 0;
177 }
178 else
179 if(*(dbgvar-1) == '+') {
180 DbgEnabledKERNEL32[i] = 1;
181 }
182 }
183 }
184 }
185 if(envvar2) {
186 dbgvar = strstr(envvar2, "dll");
187 if(dbgvar) {
188 if(*(dbgvar-1) == '+') {
189 for(i=0;i<DBG_MAXFILES;i++) {
190 DbgEnabledLvl2KERNEL32[i] = 1;
191 }
192 }
193 }
194 for(i=0;i<DBG_MAXFILES;i++) {
195 int len = strlen(DbgFileNames[i]);
196 dbgvar = strstr(envvar2, DbgFileNames[i]);
197 if(dbgvar && !islower(dbgvar[len])) {
198 if(*(dbgvar-1) == '-') {
199 DbgEnabledLvl2KERNEL32[i] = 0;
200 }
201 else
202 if(*(dbgvar-1) == '+') {
203 DbgEnabledLvl2KERNEL32[i] = 1;
204 }
205 }
206 }
207 }
208}
209//******************************************************************************
210//******************************************************************************
211
212#endif
Note: See TracBrowser for help on using the repository browser.