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

Last change on this file since 21916 was 21916, checked in by dmik, 14 years ago

Merge branch gcc-kmk to trunk.

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 const 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"_ras"
149};
150//******************************************************************************
151//******************************************************************************
152void ParseLogStatusKERNEL32()
153{
154 char *envvar = getenv(DBG_ENVNAME);
155 char *envvar2= getenv(DBG_ENVNAME_LVL2);
156 char *dbgvar;
157 int i;
158
159 for(i=0;i<DBG_MAXFILES;i++) {
160 DbgEnabledKERNEL32[i] = 1;
161 }
162
163 if(envvar) {
164 dbgvar = strstr(envvar, "dll");
165 if(dbgvar) {
166 if(*(dbgvar-1) == '-') {
167 for(i=0;i<DBG_MAXFILES;i++) {
168 DbgEnabledKERNEL32[i] = 0;
169 }
170 }
171 }
172 for(i=0;i<DBG_MAXFILES;i++) {
173 int len = strlen(DbgFileNames[i]);
174 dbgvar = strstr(envvar, DbgFileNames[i]);
175 if(dbgvar && !islower(dbgvar[len])) {
176 if(*(dbgvar-1) == '-') {
177 DbgEnabledKERNEL32[i] = 0;
178 }
179 else
180 if(*(dbgvar-1) == '+') {
181 DbgEnabledKERNEL32[i] = 1;
182 }
183 }
184 }
185 }
186 if(envvar2) {
187 dbgvar = strstr(envvar2, "dll");
188 if(dbgvar) {
189 if(*(dbgvar-1) == '+') {
190 for(i=0;i<DBG_MAXFILES;i++) {
191 DbgEnabledLvl2KERNEL32[i] = 1;
192 }
193 }
194 }
195 for(i=0;i<DBG_MAXFILES;i++) {
196 int len = strlen(DbgFileNames[i]);
197 dbgvar = strstr(envvar2, DbgFileNames[i]);
198 if(dbgvar && !islower(dbgvar[len])) {
199 if(*(dbgvar-1) == '-') {
200 DbgEnabledLvl2KERNEL32[i] = 0;
201 }
202 else
203 if(*(dbgvar-1) == '+') {
204 DbgEnabledLvl2KERNEL32[i] = 1;
205 }
206 }
207 }
208 }
209}
210//******************************************************************************
211//******************************************************************************
212
213#endif
Note: See TracBrowser for help on using the repository browser.