diff --git a/reactos/subsys/system/explorer/Makefile.MinGW b/reactos/subsys/system/explorer/Makefile.MinGW new file mode 100644 index 00000000000..ccb9196201b --- /dev/null +++ b/reactos/subsys/system/explorer/Makefile.MinGW @@ -0,0 +1,75 @@ +# +# ReactOS explorer +# +# Makefile.MinGW +# + + +CC = gcc +CXX = g++ +LINK = g++ + +CFLAGS = -DWIN32 -D_ROS_ -D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0501 -fexceptions -Wall +CXXFLAGS= $(CFLAGS) +RCFLAGS = -DWIN32 -D_ROS_ +LFLAGS = -Wl,--subsystem,windows + +ifdef DEBUG +CFLAGS += -D_DEBUG -g +RCFLAGS += -D_DEBUG +LFLAGS += -g +else +CFLAGS += -DNDEBUG -Os +RCFLAGS += -DNDEBUG +LFLAGS += -s +endif + +ifdef UNICODE +CFLAGS += -DUNICODE +# LFLAGS+= -Wl,--entry,_wWinMain@16 +endif + +EXEC_SUFFIX = .exe +RES_SUFFIX = .coff + +VPATH = shell utility taskbar desktop + +PROGRAM = explorer + +TARGET = $(PROGRAM)$(EXEC_SUFFIX) + +OBJECTS = \ + startup.o \ + shellclasses.o \ + utility.o \ + window.o \ + dragdropimpl.o \ + explorer.o \ + entries.o \ + winfs.o \ + unixfs.o \ + shellfs.o \ + mainframe.o \ + filechild.o \ + pane.o \ + shellbrowser.o \ + desktop.o \ + desktopbar.o \ + taskbar.o \ + startmenu.o \ + traynotify.o \ + quicklaunch.o + +LIBS = gdi32 comctl32 ole32 uuid + +all: $(TARGET) + +$(TARGET): $(OBJECTS) $(PROGRAM)$(RES_SUFFIX) + $(LINK) $(LFLAGS) -o $@ $^ $(addprefix -l,$(LIBS)) + +explorer$(RES_SUFFIX): $(PROGRAM)_intres.rc + windres $(RCFLAGS) -o $@ $^ + +clean: + rm -f $(TARGET) *.o *$(RES_SUFFIX) + diff --git a/reactos/subsys/system/explorer/doc/changes.txt b/reactos/subsys/system/explorer/doc/changes.txt index 81f48463cef..ae540476a77 100644 --- a/reactos/subsys/system/explorer/doc/changes.txt +++ b/reactos/subsys/system/explorer/doc/changes.txt @@ -35,3 +35,6 @@ 10.09.2003 m. fuchs compatibility changes for correct desktop windows size on Windows NT 19.09.2003 m. fuchs compatibility changes for correct start menu subentries on Windows 9x 27.09.2003 m. fuchs moved start menu entries for control panel, etc. into new settings submenu + created a Makefile for compiling as standalone project using MinGW + eliminated all warnings displayed when using -Wall + activated option for compiling as UNICODE version diff --git a/reactos/subsys/system/explorer/explorer.cpp b/reactos/subsys/system/explorer/explorer.cpp index 70b083e164a..1fabfe93cd3 100644 --- a/reactos/subsys/system/explorer/explorer.cpp +++ b/reactos/subsys/system/explorer/explorer.cpp @@ -153,6 +153,24 @@ int explorer_main(HINSTANCE hInstance, HWND hwndDesktop, int cmdshow) } + // MinGW does not provide a Unicode startup routine, so we have to implement an own. +#if defined(__MINGW32__) && defined(UNICODE) + +#define _tWinMain wWinMain +int WINAPI wWinMain(HINSTANCE, HINSTANCE, LPWSTR, int); + +int main(int argc, char* argv[]) +{ + STARTUPINFO startupinfo; + + GetStartupInfo(&startupinfo); + + return wWinMain(GetModuleHandle(NULL), 0, GetCommandLine(), startupinfo.wShowWindow); +} + +#endif // __MINGW && UNICODE + + int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nShowCmd) { // create desktop window and task bar only, if there is no other shell and we are diff --git a/reactos/subsys/system/explorer/explorer_intres.rc b/reactos/subsys/system/explorer/explorer_intres.rc index 8e2008f0131..86e9d6327d1 100644 --- a/reactos/subsys/system/explorer/explorer_intres.rc +++ b/reactos/subsys/system/explorer/explorer_intres.rc @@ -7,9 +7,8 @@ // // Generated from the TEXTINCLUDE 2 resource. // -#ifndef _ROS_ -#include "afxres.h" -#endif +#include + ///////////////////////////////////////////////////////////////////////////// #undef APSTUDIO_READONLY_SYMBOLS @@ -50,8 +49,8 @@ BEGIN END POPUP "&Ajutor" BEGIN - MENUITEM "&Despre Explorer...", ID_ABOUT MENUITEM "Explorer &FAQ...", ID_EXPLORER_FAQ + MENUITEM "&Despre Explorer...", ID_ABOUT END END @@ -109,8 +108,8 @@ BEGIN IDS_DRIVES "Discuri" IDS_SEARCH_COMPUTER "Search Computer..." IDS_SETTINGS_MENU "Settings Menu" - IDS_PRINTERS "Printers" IDS_CONTROL_PANEL "Control Panel" + IDS_PRINTERS "Printers" END #endif // Romanian resources @@ -311,9 +310,8 @@ END 2 TEXTINCLUDE DISCARDABLE BEGIN - "#ifndef _ROS_\r\n" - "#include ""afxres.h""\r\n" - "#endif\0" + "#include \r\n" + "\0" END 3 TEXTINCLUDE DISCARDABLE @@ -370,8 +368,8 @@ BEGIN IDS_DRIVES "Verzeichnisse" IDS_SEARCH_COMPUTER "Suche Computer..." IDS_SETTINGS_MENU "Einstellungen-Menu" - IDS_PRINTERS "Drucker" IDS_CONTROL_PANEL "Systemsteuerung" + IDS_PRINTERS "Drucker" END #endif // German (Germany) resources @@ -415,8 +413,8 @@ BEGIN END POPUP "&Help" BEGIN - MENUITEM "&About Explorer...", ID_ABOUT MENUITEM "Explorer &FAQ...", ID_EXPLORER_FAQ + MENUITEM "&About Explorer...", ID_ABOUT END END @@ -583,8 +581,8 @@ BEGIN IDS_DRIVES "Drives" IDS_SEARCH_COMPUTER "Search Computer..." IDS_SETTINGS_MENU "Settings Menu" - IDS_PRINTERS "Printers" IDS_CONTROL_PANEL "Control Panel" + IDS_PRINTERS "Printers" END #endif // English (U.S.) resources diff --git a/reactos/subsys/system/explorer/make_explorer.dsp b/reactos/subsys/system/explorer/make_explorer.dsp index bd378e197e6..7a726a3d74c 100644 --- a/reactos/subsys/system/explorer/make_explorer.dsp +++ b/reactos/subsys/system/explorer/make_explorer.dsp @@ -41,7 +41,7 @@ CFG=make_explorer - Win32 Debug # PROP Use_Debug_Libraries 0 # PROP Output_Dir "Release" # PROP Intermediate_Dir "Release" -# PROP Cmd_Line "msdevfilt -gcc make" +# PROP Cmd_Line "msdevfilt -gcc -pipe "perl d:\tools\gSTLFilt.pl" make -f Makefile.MinGW UNICODE=1" # PROP Rebuild_Opt "clean all" # PROP Target_File "explorer.exe" # PROP Bsc_Name "" @@ -62,7 +62,7 @@ CFG=make_explorer - Win32 Debug # PROP Use_Debug_Libraries 1 # PROP Output_Dir "Debug" # PROP Intermediate_Dir "Debug" -# PROP Cmd_Line "msdevfilt -gcc -pipe "perl d:\tools\gSTLFilt.pl" make DEBUG=1" +# PROP Cmd_Line "msdevfilt -gcc -pipe "perl d:\tools\gSTLFilt.pl" make -f Makefile.MinGW UNICODE=1 DEBUG=1" # PROP Rebuild_Opt "clean all" # PROP Target_File "explorer.exe" # PROP Bsc_Name "" @@ -89,5 +89,9 @@ SOURCE=..\..\..\ChangeLog SOURCE=.\makefile # End Source File +# Begin Source File + +SOURCE=.\Makefile.MinGW +# End Source File # End Target # End Project diff --git a/reactos/subsys/system/explorer/makefile_rex b/reactos/subsys/system/explorer/makefile_rex index c66f4df1d9a..2bd51b7651c 100644 --- a/reactos/subsys/system/explorer/makefile_rex +++ b/reactos/subsys/system/explorer/makefile_rex @@ -12,17 +12,16 @@ TARGET_APPTYPE = windows TARGET_NAME = explorer -TARGET_CFLAGS = -fexceptions -Os -DNDEBUG -DWIN32 -D_ROS_ -W -D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0501 +TARGET_CFLAGS = -fexceptions -Os -DNDEBUG -DWIN32 -D_ROS_ -Wall -D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0501 -TARGET_CPPFLAGS = -fexceptions -Os -DNDEBUG -DWIN32 -D_ROS_ -W -D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0501 +TARGET_CPPFLAGS = -fexceptions -Os -DNDEBUG -DWIN32 -D_ROS_ -Wall -D_WIN32_IE=0x0501 -D_WIN32_WINNT=0x0501 TARGET_RCFLAGS = -DNDEBUG -DWIN32 -D_ROS_ ifdef UNICODE TARGET_CFLAGS += -DUNICODE TARGET_CPPFLAGS += -DUNICODE -TARGET_RCFLAGS += -DUNICODE -MK_DEFENTRY = _wWinMain@16 +# MK_DEFENTRY = _wWinMain@16 endif VPATH += shell diff --git a/reactos/subsys/system/explorer/shell/entries.cpp b/reactos/subsys/system/explorer/shell/entries.cpp index fcaae68c2a6..53ba186b8eb 100644 --- a/reactos/subsys/system/explorer/shell/entries.cpp +++ b/reactos/subsys/system/explorer/shell/entries.cpp @@ -48,8 +48,8 @@ Entry::Entry(ENTRY_TYPE etype) } Entry::Entry(Entry* parent) - : _etype(parent->_etype), - _up(parent) + : _up(parent), + _etype(parent->_etype) { _next = NULL; _down = NULL; diff --git a/reactos/subsys/system/explorer/shell/pane.cpp b/reactos/subsys/system/explorer/shell/pane.cpp index a1d9bbec5ca..603b9c30fda 100644 --- a/reactos/subsys/system/explorer/shell/pane.cpp +++ b/reactos/subsys/system/explorer/shell/pane.cpp @@ -113,8 +113,8 @@ Pane::Pane(HWND hparent, int id, int id_header, Entry* root, bool treePane, int LBS_DISABLENOSCROLL|LBS_NOINTEGRALHEIGHT|LBS_OWNERDRAWFIXED|LBS_NOTIFY, 0, 0, 0, 0, hparent, (HMENU)id, g_Globals._hInstance, 0)), _root(root), - _treePane(treePane), - _visible_cols(visible_cols) + _visible_cols(visible_cols), + _treePane(treePane) { // insert entries into listbox Entry* entry = _root; diff --git a/reactos/subsys/system/explorer/shell/pane.h b/reactos/subsys/system/explorer/shell/pane.h index fe811e50a30..6735359d091 100644 --- a/reactos/subsys/system/explorer/shell/pane.h +++ b/reactos/subsys/system/explorer/shell/pane.h @@ -71,13 +71,14 @@ struct Pane : public SubclassedWindow WindowHandle _hwndHeader; - bool _treePane; - int _visible_cols; Entry* _root; Entry* _cur; COLORREF _clrCompressed; + int _visible_cols; + bool _treePane; + void init(); void set_header(); bool create_header(HWND parent, int id); diff --git a/reactos/subsys/system/explorer/shell/shellfs.cpp b/reactos/subsys/system/explorer/shell/shellfs.cpp index d3a566cfde4..be02f4dc597 100644 --- a/reactos/subsys/system/explorer/shell/shellfs.cpp +++ b/reactos/subsys/system/explorer/shell/shellfs.cpp @@ -119,7 +119,7 @@ void ShellEntry::get_path(PTSTR path) const { path[0] = TEXT('\0'); - HRESULT hr = path_from_pidl(get_parent_folder(), &*_pidl, path, MAX_PATH); + /*HRESULT hr = */path_from_pidl(get_parent_folder(), &*_pidl, path, MAX_PATH); } @@ -243,7 +243,7 @@ void ShellDirectory::read_directory() HRESULT hr = _folder->GetAttributesOf(1, (LPCITEMIDLIST*)&pidls[n], &attribs); if (SUCCEEDED(hr)) { - if (attribs != ~SFGAO_FILESYSTEM) + if (attribs != (SFGAOF)~SFGAO_FILESYSTEM) bhfi_valid = fill_w32fdata_shell(pidls[n], attribs, &w32fd, &bhfi); else attribs = 0; diff --git a/reactos/subsys/system/explorer/shell/startup.c b/reactos/subsys/system/explorer/shell/startup.c index 9498e0bc937..cd5b7d1d2ec 100644 --- a/reactos/subsys/system/explorer/shell/startup.c +++ b/reactos/subsys/system/explorer/shell/startup.c @@ -53,43 +53,7 @@ #include #include - -#define MAX_LINE_LENGTH (2*MAX_PATH+2) - -static BOOL GetLine( HANDLE hFile, char *buf, size_t buflen ) -{ - size_t i=0; - buf[0]='\0'; - - do - { - DWORD read; - if( !ReadFile( hFile, buf, 1, &read, NULL ) || read!=1 ) - { - return FALSE; - } - - } while( isspace( *buf ) ); - - while( buf[i]!='\n' && i<=buflen && - ReadFile( hFile, buf+i+1, 1, NULL, NULL ) ) - { - ++i; - } - - - if( buf[i]!='\n' ) - { - return FALSE; - } - - if( i>0 && buf[i-1]=='\r' ) - --i; - - buf[i]='\0'; - - return TRUE; -} +#include /* Performs the rename operations dictated in %SystemRoot%\Wininit.ini. * Returns FALSE if there was an error, or otherwise if all is ok. @@ -116,27 +80,27 @@ static BOOL pendingRename() printf("Entered\n"); - if( (res=RegOpenKeyExW( HKEY_LOCAL_MACHINE, SessionW, 0, KEY_ALL_ACCESS, &hSession )) - !=ERROR_SUCCESS ) + if ((res=RegOpenKeyExW(HKEY_LOCAL_MACHINE, SessionW, 0, KEY_ALL_ACCESS, &hSession)) + !=ERROR_SUCCESS) { - if( res==ERROR_FILE_NOT_FOUND ) + if (res==ERROR_FILE_NOT_FOUND) { printf("The key was not found - skipping\n"); res=TRUE; } else { - printf("Couldn't open key, error %ld\n", res ); + printf("Couldn't open key, error %ld\n", res); res=FALSE; } goto end; } - res=RegQueryValueExW( hSession, ValueName, NULL, NULL /* The value type does not really interest us, as it is not + res=RegQueryValueExW(hSession, ValueName, NULL, NULL /* The value type does not really interest us, as it is not truely a REG_MULTI_SZ anyways */, - NULL, &dataLength ); - if( res==ERROR_FILE_NOT_FOUND ) + NULL, &dataLength); + if (res==ERROR_FILE_NOT_FOUND) { /* No value - nothing to do. Great! */ printf("Value not present - nothing to rename\n"); @@ -144,23 +108,23 @@ static BOOL pendingRename() goto end; } - if( res!=ERROR_SUCCESS ) + if (res!=ERROR_SUCCESS) { - printf("Couldn't query value's length (%ld)\n", res ); + printf("Couldn't query value's length (%ld)\n", res); res=FALSE; goto end; } - buffer=malloc( dataLength ); - if( buffer==NULL ) + buffer=malloc(dataLength); + if (buffer==NULL) { - printf("Couldn't allocate %lu bytes for the value\n", dataLength ); + printf("Couldn't allocate %lu bytes for the value\n", dataLength); res=FALSE; goto end; } - res=RegQueryValueExW( hSession, ValueName, NULL, NULL, (LPBYTE)buffer, &dataLength ); - if( res!=ERROR_SUCCESS ) + res=RegQueryValueExW(hSession, ValueName, NULL, NULL, (LPBYTE)buffer, &dataLength); + if (res!=ERROR_SUCCESS) { printf("Couldn't query value after successfully querying before (%lu),\n" "please report to wine-devel@winehq.org\n", res); @@ -171,17 +135,17 @@ static BOOL pendingRename() /* Make sure that the data is long enough and ends with two NULLs. This * simplifies the code later on. */ - if( dataLength<2*sizeof(buffer[0]) || + if (dataLength<2*sizeof(buffer[0]) || buffer[dataLength/sizeof(buffer[0])-1]!='\0' || - buffer[dataLength/sizeof(buffer[0])-2]!='\0' ) + buffer[dataLength/sizeof(buffer[0])-2]!='\0') { printf("Improper value format - doesn't end with NULL\n"); res=FALSE; goto end; } - for( src=buffer; (src-buffer)*sizeof(src[0])0 ) + while(i>0) { DWORD nValLength=nMaxValue, nDataLength=nMaxCmdLine; DWORD type; --i; - if( (res=RegEnumValueW( hkRun, i, szValue, &nValLength, 0, &type, - (LPBYTE)szCmdLine, &nDataLength ))!=ERROR_SUCCESS ) + if ((res=RegEnumValueW(hkRun, i, szValue, &nValLength, 0, &type, + (LPBYTE)szCmdLine, &nDataLength))!=ERROR_SUCCESS) { - printf("Couldn't read in value %ld - %ld\n", i, res ); + printf("Couldn't read in value %ld - %ld\n", i, res); continue; } - if( bDelete && (res=RegDeleteValueW( hkRun, szValue ))!=ERROR_SUCCESS ) + if (bDelete && (res=RegDeleteValueW(hkRun, szValue))!=ERROR_SUCCESS) { - printf("Couldn't delete value - %ld, %ld. Running command anyways.\n", i, res ); + printf("Couldn't delete value - %ld, %ld. Running command anyways.\n", i, res); } - if( type!=REG_SZ ) + if (type!=REG_SZ) { - printf("Incorrect type of value #%ld (%ld)\n", i, type ); + printf("Incorrect type of value #%ld (%ld)\n", i, type); continue; } - if( (res=runCmd(szCmdLine, NULL, bSynchronous, FALSE ))==INVALID_RUNCMD_RETURN ) + if ((res=runCmd(szCmdLine, NULL, bSynchronous, FALSE))==INVALID_RUNCMD_RETURN) { - printf("Error running cmd #%ld (%ld)\n", i, GetLastError() ); + printf("Error running cmd #%ld (%ld)\n", i, GetLastError()); } printf("Done processing cmd #%ld\n", i); @@ -425,10 +389,10 @@ static BOOL ProcessRunKeys( HKEY hkRoot, LPCWSTR szKeyName, BOOL bDelete, res=ERROR_SUCCESS; end: - if( hkRun!=NULL ) - RegCloseKey( hkRun ); - if( hkWin!=NULL ) - RegCloseKey( hkWin ); + if (hkRun!=NULL) + RegCloseKey(hkRun); + if (hkWin!=NULL) + RegCloseKey(hkWin); printf("done\n"); @@ -448,40 +412,40 @@ static const struct op_mask SESSION_START={FALSE, FALSE, TRUE, TRUE, TRUE, TRUE} SETUP={FALSE, FALSE, FALSE, TRUE, TRUE, TRUE}; #define DEFAULT SESSION_START -int startup( int argc, char *argv[] ) +int startup(int argc, char *argv[]) { struct op_mask ops; /* Which of the ops do we want to perform? */ /* First, set the current directory to SystemRoot */ TCHAR gen_path[MAX_PATH]; DWORD res; - res=GetWindowsDirectory( gen_path, sizeof(gen_path) ); + res = GetWindowsDirectory(gen_path, sizeof(gen_path)); - if( res==0 ) + if (res==0) { - printf("Couldn't get the windows directory - error %ld\n", - GetLastError() ); + printf("Couldn't get the windows directory - error %ld\n", + GetLastError()); - return 100; + return 100; } - if( res>=sizeof(gen_path) ) + if (res>=sizeof(gen_path)) { - printf("Windows path too long (%ld)\n", res ); + printf("Windows path too long (%ld)\n", res); - return 100; + return 100; } - if( !SetCurrentDirectory( gen_path ) ) + if (!SetCurrentDirectory(gen_path)) { - printf("Cannot set the dir to %s (%ld)\n", gen_path, GetLastError() ); + wprintf(L"Cannot set the dir to %s (%ld)\n", gen_path, GetLastError()); return 100; } - if( argc>1 ) + if (argc>1) { - switch( argv[1][0] ) + switch(argv[1][0]) { case 'r': /* Restart */ ops=SETUP; @@ -501,15 +465,15 @@ int startup( int argc, char *argv[] ) res=(ops.ntonly || !ops.preboot || wininit()) && (ops.w9xonly || !ops.preboot || pendingRename()) && (ops.ntonly || !ops.prelogin || - ProcessRunKeys( HKEY_LOCAL_MACHINE, runkeys_names[RUNKEY_RUNSERVICESONCE], TRUE, FALSE )) && + ProcessRunKeys(HKEY_LOCAL_MACHINE, runkeys_names[RUNKEY_RUNSERVICESONCE], TRUE, FALSE)) && (ops.ntonly || !ops.prelogin || !ops.startup || - ProcessRunKeys( HKEY_LOCAL_MACHINE, runkeys_names[RUNKEY_RUNSERVICES], FALSE, FALSE )) && + ProcessRunKeys(HKEY_LOCAL_MACHINE, runkeys_names[RUNKEY_RUNSERVICES], FALSE, FALSE)) && (!ops.postlogin || - ProcessRunKeys( HKEY_LOCAL_MACHINE, runkeys_names[RUNKEY_RUNONCE], TRUE, TRUE )) && + ProcessRunKeys(HKEY_LOCAL_MACHINE, runkeys_names[RUNKEY_RUNONCE], TRUE, TRUE)) && (!ops.postlogin || !ops.startup || - ProcessRunKeys( HKEY_LOCAL_MACHINE, runkeys_names[RUNKEY_RUN], FALSE, FALSE )) && + ProcessRunKeys(HKEY_LOCAL_MACHINE, runkeys_names[RUNKEY_RUN], FALSE, FALSE)) && (!ops.postlogin || !ops.startup || - ProcessRunKeys( HKEY_CURRENT_USER, runkeys_names[RUNKEY_RUN], FALSE, FALSE )); + ProcessRunKeys(HKEY_CURRENT_USER, runkeys_names[RUNKEY_RUN], FALSE, FALSE)); printf("Operation done\n"); diff --git a/reactos/subsys/system/explorer/taskbar/startmenu.h b/reactos/subsys/system/explorer/taskbar/startmenu.h index b5b99db076f..b62b49a3eda 100644 --- a/reactos/subsys/system/explorer/taskbar/startmenu.h +++ b/reactos/subsys/system/explorer/taskbar/startmenu.h @@ -61,7 +61,7 @@ typedef list StartMenuShellDirs; struct StartMenuEntry { - StartMenuEntry() : _entry(NULL), _hIcon(0) {} + StartMenuEntry() : _hIcon(0), _entry(NULL) {} String _title; HICON _hIcon; @@ -150,7 +150,7 @@ protected: ShellEntryMap _entries; StartMenuShellDirs _dirs; - UINT _submenu_id; + int _submenu_id; WindowHandle _submenu; int _border_left; // left border in pixels diff --git a/reactos/subsys/system/explorer/taskbar/taskbar.cpp b/reactos/subsys/system/explorer/taskbar/taskbar.cpp index 59acc903d2a..306d9762821 100644 --- a/reactos/subsys/system/explorer/taskbar/taskbar.cpp +++ b/reactos/subsys/system/explorer/taskbar/taskbar.cpp @@ -165,7 +165,7 @@ int TaskBar::Notify(int id, NMHDR* pnmh) if (idx>=0 && SendMessage(_htoolbar, TB_GETBUTTONINFO, idx, (LPARAM)&btninfo)!=-1 && (it=_map.find_id(btninfo.idCommand))!=_map.end()) { - TaskBarEntry& entry = it->second; + //TaskBarEntry& entry = it->second; ActivateApp(it, false); ShowAppSystemMenu(it); diff --git a/reactos/subsys/system/explorer/taskbar/traynotify.cpp b/reactos/subsys/system/explorer/taskbar/traynotify.cpp index a4d3b4178d6..ef3fe709ad0 100644 --- a/reactos/subsys/system/explorer/taskbar/traynotify.cpp +++ b/reactos/subsys/system/explorer/taskbar/traynotify.cpp @@ -267,7 +267,7 @@ NotifyIconSet::iterator NotifyArea::IconHitTest(const POINT& pos) int x = 2; for(; it!=_sorted_icons.end(); ++it) { - NotifyInfo& entry = const_cast(*it); // Why does GCC 3.3 need this additional const_cast ?! + //NotifyInfo& entry = const_cast(*it); // Why does GCC 3.3 need this additional const_cast ?! if (pos.x>=x && pos.x