* use ConsoleInfo struct directly

* change type in global struct (avoid buffer overflow when reading value from registry)

svn path=/trunk/; revision=23918
This commit is contained in:
Johannes Anderwald 2006-09-04 21:26:49 +00:00
parent 94b07b79db
commit 478f24b02b
2 changed files with 12 additions and 14 deletions

View file

@ -192,14 +192,14 @@ InitApplet(HWND hwnd, UINT uMsg, LONG wParam, LONG lParam)
else else
{ {
/* use current info */ /* use current info */
PConsoleInfo pSharedInfo = MapViewOfFile((HANDLE)wParam, PConsoleInfo pSharedInfo = (PConsoleInfo)wParam;
FILE_MAP_ALL_ACCESS,
0,
0,
sizeof(ConsoleInfo));
/* copy options */ if (IsBadReadPtr((const void *)pSharedInfo, sizeof(ConsoleInfo)))
if (pSharedInfo) {
/* use defaults */
InitConsoleDefaults(pConInfo);
}
else
{ {
pConInfo->InsertMode = pSharedInfo->InsertMode; pConInfo->InsertMode = pSharedInfo->InsertMode;
pConInfo->HistoryBufferSize = pSharedInfo->HistoryBufferSize; pConInfo->HistoryBufferSize = pSharedInfo->HistoryBufferSize;
@ -255,8 +255,6 @@ CPlApplet(
LPARAM lParam1, LPARAM lParam1,
LPARAM lParam2) LPARAM lParam2)
{ {
int i = (int)lParam1;
switch(uMsg) switch(uMsg)
{ {
case CPL_INIT: case CPL_INIT:
@ -270,14 +268,14 @@ CPlApplet(
case CPL_INQUIRE: case CPL_INQUIRE:
{ {
CPLINFO *CPlInfo = (CPLINFO*)lParam2; CPLINFO *CPlInfo = (CPLINFO*)lParam2;
CPlInfo->idIcon = Applets[i].idIcon; CPlInfo->idIcon = Applets[0].idIcon;
CPlInfo->idName = Applets[i].idName; CPlInfo->idName = Applets[0].idName;
CPlInfo->idInfo = Applets[i].idDescription; CPlInfo->idInfo = Applets[0].idDescription;
break; break;
} }
case CPL_DBLCLK: case CPL_DBLCLK:
{ {
Applets[i].AppletProc(hwndCPl, uMsg, lParam1, lParam2); Applets[0].AppletProc(hwndCPl, uMsg, lParam1, lParam2);
break; break;
} }
} }

View file

@ -25,7 +25,7 @@ typedef struct TAGConsoleInfo
HWND hConsoleWindow; HWND hConsoleWindow;
TCHAR szProcessName[MAX_PATH]; TCHAR szProcessName[MAX_PATH];
BOOLEAN AppliedConfig; BOOLEAN AppliedConfig;
BOOLEAN UseRasterFonts; DWORD UseRasterFonts;
DWORD FontSize; DWORD FontSize;
DWORD FontWeight; DWORD FontWeight;
FONTSIGNATURE FontSignature; FONTSIGNATURE FontSignature;