Victor_VG
Tracker Mod | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Код: diff --ignore-file-name-case -rtuFdTl old/changelog new/changelog --- old/changelog 2009-09-11 03:06:52 +0400 +++ new/changelog 2009-09-11 11:20:23 +0400 @@ -1,6 +1,10 @@ VictorVG 10.09.2009 20:22:29 +0300 - build 52-1 -1. Не собирался в GCC - переменные надо указывать явно до их использования. Исправил. +1. Приспособим патчи Mantis#957 и #958 и к новому билду - решим эти проблемы в зародыше. +2. GCC: Заодно и очередную злую багу от Микрософта пришибём - gcc ругается (и справедливо! - спецификации языка грубейшим образом нарушены, где только можно и нельзя - Микрософт...) - "NetClass.cpp:407: error: 'FILE_ATTRIBUTE_VIRTUAL' was not declared in this scope", а в итоге "make: *** [final.32W.gcc/obj/NetClass.o] Error 1". Лечится добавкой в NetClass.cpp строки 405: ' long FILE_ATTRIBUTE_VIRTUAL = 0;' явно обявляющей данную переменную с инициализациеё 0x0 - нет мусора, нет и ошибок. Если что, поправьте мой патч. + + RE: Явное объявление переменных всегда считалось хорошим тоном даже для PL/1, который допускает их неявное объявление по контексту формальным описанием языка, а про Algol, Fortran, Kobol, Assembler я просто молчу. Это только Микрософт позволяет себе плевать на стандарты ISO - что с них взять, M$ - это диагноз, а он увы, не лечится. +3. Заодно уж и GCC майк поправим - пусть он сам определяет надо ли справки и языковые файлы конвертировать, чистит "мусор" и "сдаёт нам работу" в папке с именем плагина. svs 10.09.2009 17:11:40 +0300 - build 52 @@ -9,6 +13,15 @@ Для принтеров пока выставляется файловый атрибут FILE_ATTRIBUTE_VIRTUAL (чтобы можно было отработать в макросах, раскраске, etc.) Выгоды пока NULL (если не воспользоваться UserMenu и каким нибудь VB/JS/etc-скриптом). +VictorVG 25.08.2009 04:05:37 +0300 - build 51-1 + +1. Build number chenged up to 51-1 as UNIX like style + +VictorVG 06.07.2009 04:02:38 +0300 - build 51a + +1. Mantis#0000957: Невозможно перейти в скрытые Samba-шары +2. Mantis#0000958: При переходе через net: с открытого ресурса на несуществующий текущим остается предыдущий ресурс + t-rex 29.03.2009 19:11:54 +0200 1. From DiRTy GaRRy: патч от варнингов на разное выравнивание структур при компиляции плагина на VS9 с ключом /GL. diff --ignore-file-name-case -rtuFdTl old/makefile_gcc new/makefile_gcc --- old/makefile_gcc 2009-07-03 10:12:17 +0400 +++ new/makefile_gcc 2009-09-11 11:12:31 +0400 @@ -6,11 +6,25 @@ NetFavorites.cpp \ NetMix.cpp \ NetNT.cpp \ -NetReg.cpp -DOCS = NetEng.hlf NetRus.hlf NetEng.lng NetRus.lng - +NetReg.cpp +DOCS = NetEng.hlf NetRus.hlf NetEng.lng NetRus.lng changelog USERLIBS = -lmpr - +OBJ = $(DLLDIR)/obj +RMR = rm -fR +CNV = ../common/convert.exe +MV = mv -f +CPD = cp -fu -t +RM = rm -f include ../makefile_gcc_def_inc - include ../makefile_gcc_target_inc +all: + @$(RMR) $(OBJ) +ifdef WIDE + @$(CNV) NetEng.hlf $(DLLDIR) + @$(CNV) NetRus.hlf $(DLLDIR) + @$(CNV) NetEng.lng $(DLLDIR) + @$(CNV) NetRus.lng $(DLLDIR) +else + @$(CPD) $(DLLDIR) NetEng.hlf NetRus.hlf NetEng.lng NetRus.lng +endif + @$(MV) $(DLLDIR) $(NAME) \ No newline at end of file diff --ignore-file-name-case -rtuFdTl old/NetClass.cpp new/NetClass.cpp --- old/NetClass.cpp 2009-09-11 01:42:30 +0400 +++ new/NetClass.cpp 2009-09-11 06:55:36 +0400 @@ -401,6 +401,7 @@ #else NewPanelItem[CurItemPos].FindData.lpwszFileName = _wcsdup(RemoteName); #endif + long FILE_ATTRIBUTE_VIRTUAL = 0; DWORD attr = FILE_ATTRIBUTE_DIRECTORY; if (NetList[I].dwType==RESOURCETYPE_PRINT) @@ -895,117 +896,116 @@ TCHAR AnsiDir[NM]; OEMToChar(Dir,AnsiDir); if (AnsiDir [0] == _T('/')) - AnsiDir [0] = _T('\\'); - if (AnsiDir [1] == _T('/')) - AnsiDir [1] = _T('\\'); + if (AnsiDir [1] == _T('/')) + AnsiDir [1] = _T('\\'); - for (unsigned I=0;I<NetList.Count();I++) - { - TCHAR RemoteName[NM]; - GetRemoteName(&NetList[I],RemoteName); - if (FSF.LStricmp(AnsiDir,RemoteName)==0) - { - if (CheckFavoriteItem(&NetList[I])) - { - NetResourceList::CopyNetResource (CurResource, NetList [I]); - PCurResource = &CurResource; - //RootResources.Push (CurResource); - - return TRUE; - } - if ((NetList[I].dwUsage & RESOURCEUSAGE_CONTAINER)==0 && - (NetList[I].dwType & RESOURCETYPE_DISK) && - NetList[I].lpRemoteName!=NULL) - { - if (IsFind) - return(FALSE); - TCHAR NewDir[NM],LocalName[NM]; - GetLocalName(NetList[I].lpRemoteName,LocalName); - if (*LocalName) - if(IsReadable(LocalName)) - lstrcpy(NewDir,LocalName); - else - { - Info.Message (Info.ModuleNumber, FMSG_WARNING | FMSG_ERRORTYPE | FMSG_MB_OK | FMSG_ALLINONE, - NULL, (const TCHAR **) GetMsg (MError), 0, 0); - return TRUE; - } - else - { - BOOL ConnectError = FALSE; - lstrcpy(NewDir,NetList[I].lpRemoteName); - CharToOEM(NewDir,NewDir); - if (IsExplicit) - { - if (!AddConnectionExplicit (&NetList [I]) || !IsReadable (NewDir)) - ConnectError = TRUE; - } - else { - if (!IsReadable(NewDir)) - if (!AddConnection(&NetList[I]) || !IsReadable (NewDir)) - ConnectError = TRUE; - } - if (ConnectError) - { - DWORD res = GetLastError(); - if(!IsExplicit) - if (res == ERROR_INVALID_PASSWORD || res == ERROR_LOGON_FAILURE || res == ERROR_ACCESS_DENIED || res == ERROR_INVALID_HANDLE) - ConnectError = !((AddConnectionFromFavorites(&NetList[I]) || - AddConnectionExplicit(&NetList[I])) && IsReadable (NewDir)); - if(ConnectError) - { - ChangeDirSuccess = FALSE; - if (GetLastError() != ERROR_CANCELLED) - Info.Message (Info.ModuleNumber, FMSG_WARNING | FMSG_ERRORTYPE | FMSG_MB_OK | FMSG_ALLINONE, - NULL, (const TCHAR **) GetMsg (MError), 0, 0); - return TRUE; - } - } - } -#ifndef UNICODE - Info.Control(this,FCTL_CLOSEPLUGIN,NewDir); -#else - Info.Control(this,FCTL_CLOSEPLUGIN,0,(LONG_PTR)NewDir); -#endif - return(TRUE); - } - if (IsExplicit?!AddConnectionExplicit(&NetList[I]):!IsResourceReadable (NetList [I])) - { - int res = GetLastError(); - if (res == ERROR_INVALID_PASSWORD || res == ERROR_LOGON_FAILURE || res == ERROR_ACCESS_DENIED || res == ERROR_LOGON_TYPE_NOT_GRANTED) - ChangeDirSuccess = IsExplicit?FALSEAddConnectionFromFavorites(&NetList[I]) || AddConnectionExplicit(&NetList[I])); - else - ChangeDirSuccess = FALSE; - if(!ChangeDirSuccess) - { - if (GetLastError() != ERROR_CANCELLED) - Info.Message (Info.ModuleNumber, FMSG_WARNING | FMSG_ERRORTYPE | FMSG_MB_OK | FMSG_ALLINONE, - NULL, (const TCHAR **) GetMsg (MError), 0, 0); - return FALSE; - } - } - NetResourceList::CopyNetResource (CurResource, NetList [I]); - PCurResource = &CurResource; - if (!IsMSNetResource (CurResource)) - { -#ifdef NETWORK_LOGGING - LogData(_T("Resource is not MSN")); - LogNetResource(CurResource); -#endif - RootResources.Push (CurResource); - } -#ifdef NETWORK_LOGGING - else - { - LogData(_T("Resource is MSN")); - LogNetResource(CurResource); - } -#endif - return(TRUE); - } - } - return FALSE; -} + for (unsigned I=0;I<NetList.Count();I++) + { + TCHAR RemoteName[NM]; + GetRemoteName(&NetList[I],RemoteName); + if (FSF.LStricmp(AnsiDir,RemoteName)==0) + { + if (CheckFavoriteItem(&NetList[I])) + { + NetResourceList::CopyNetResource (CurResource, NetList [I]); + PCurResource = &CurResource; + //RootResources.Push (CurResource); + + return TRUE; + } + if ((NetList[I].dwUsage & RESOURCEUSAGE_CONTAINER)==0 && + (NetList[I].dwType & RESOURCETYPE_DISK) && + NetList[I].lpRemoteName!=NULL) + { + if (IsFind) + return(FALSE); + TCHAR NewDir[NM],LocalName[NM]; + GetLocalName(NetList[I].lpRemoteName,LocalName); + if (*LocalName) + if(IsReadable(LocalName)) + lstrcpy(NewDir,LocalName); + else + { + Info.Message (Info.ModuleNumber, FMSG_WARNING | FMSG_ERRORTYPE | FMSG_MB_OK | FMSG_ALLINONE, + NULL, (const TCHAR **) GetMsg (MError), 0, 0); + return TRUE; + } + else + { + BOOL ConnectError = FALSE; + lstrcpy(NewDir,NetList[I].lpRemoteName); + CharToOEM(NewDir,NewDir); + if (IsExplicit) + { + if (!AddConnectionExplicit (&NetList [I]) || !IsReadable (NewDir)) + ConnectError = TRUE; + } + else { + if (!IsReadable(NewDir)) + if (!AddConnection(&NetList[I]) || !IsReadable (NewDir)) + ConnectError = TRUE; + } + if (ConnectError) + { + DWORD res = GetLastError(); + if(!IsExplicit) + if (res == ERROR_INVALID_PASSWORD || res == ERROR_LOGON_FAILURE || res == ERROR_ACCESS_DENIED || res == ERROR_INVALID_HANDLE) + ConnectError = !((AddConnectionFromFavorites(&NetList[I]) || + AddConnectionExplicit(&NetList[I])) && IsReadable (NewDir)); + if(ConnectError) + { + ChangeDirSuccess = FALSE; + if (GetLastError() != ERROR_CANCELLED) + Info.Message (Info.ModuleNumber, FMSG_WARNING | FMSG_ERRORTYPE | FMSG_MB_OK | FMSG_ALLINONE, + NULL, (const TCHAR **) GetMsg (MError), 0, 0); + return TRUE; + } + } + } + #ifndef UNICODE + Info.Control(this,FCTL_CLOSEPLUGIN,NewDir); + #else + Info.Control(this,FCTL_CLOSEPLUGIN,0,(LONG_PTR)NewDir); + #endif + return(TRUE); + } + if (IsExplicit?!AddConnectionExplicit(&NetList[I]):!IsResourceReadable (NetList [I])) + { + int res = GetLastError(); + if (res == ERROR_INVALID_PASSWORD || res == ERROR_LOGON_FAILURE || res == ERROR_ACCESS_DENIED || res == ERROR_LOGON_TYPE_NOT_GRANTED) + ChangeDirSuccess = IsExplicit?FALSEAddConnectionFromFavorites(&NetList[I]) || AddConnectionExplicit(&NetList[I])); + else + ChangeDirSuccess = FALSE; + if(!ChangeDirSuccess) + { + if (GetLastError() != ERROR_CANCELLED) + Info.Message (Info.ModuleNumber, FMSG_WARNING | FMSG_ERRORTYPE | FMSG_MB_OK | FMSG_ALLINONE, + NULL, (const TCHAR **) GetMsg (MError), 0, 0); + return FALSE; + } + } + NetResourceList::CopyNetResource (CurResource, NetList [I]); + PCurResource = &CurResource; + if (!IsMSNetResource (CurResource)) + { + #ifdef NETWORK_LOGGING + LogData(_T("Resource is not MSN")); + LogNetResource(CurResource); + #endif + RootResources.Push (CurResource); + } + #ifdef NETWORK_LOGGING + else + { + LogData(_T("Resource is MSN")); + LogNetResource(CurResource); + } + #endif + return(TRUE); + } + } + return FALSE; + } BOOL NetBrowser::IsMSNetResource (const NETRESOURCE &Res) @@ -1305,21 +1305,21 @@ Info.Control(this,FCTL_GETPANELINFO,0,(LONG_PTR)&PInfo); #endif - for (int I=0;I<PInfo.SelectedItemsNumber;I++) - { -#ifndef UNICODE - if (!MapNetworkDrive (PInfo.SelectedItems[I].FindData.cFileName, (Key == VK_F6), ((ControlState&PKF_SHIFT)==0))) -#else - PluginPanelItem* PPI=(PluginPanelItem*)malloc(Info.Control(this,FCTL_GETSELECTEDPANELITEM,I,0)); - if(PPI) - { - Info.Control(this,FCTL_GETSELECTEDPANELITEM,I,(LONG_PTR)PPI); - } - if (!PPI||!MapNetworkDrive (PPI->FindData.lpwszFileName, (Key == VK_F6), ((ControlState&PKF_SHIFT)==0))) -#endif - { -#ifdef UNICODE - free(PPI); + for (int I=0;I<PInfo.SelectedItemsNumber;I++) + { + #ifndef UNICODE + if (!MapNetworkDrive (PInfo.SelectedItems[I].FindData.cFileName, (Key == VK_F6), ((ControlState&PKF_SHIFT)==0))) + #else + PluginPanelItem* PPI=(PluginPanelItem*)malloc(Info.Control(this,FCTL_GETSELECTEDPANELITEM,I,0)); + if(PPI) + { + Info.Control(this,FCTL_GETSELECTEDPANELITEM,I,(LONG_PTR)PPI); + } + if (!PPI||!MapNetworkDrive (PPI->FindData.lpwszFileName, (Key == VK_F6), ((ControlState&PKF_SHIFT)==0))) + #endif + { + #ifdef UNICODE + free(PPI); #endif break; } @@ -1994,18 +1994,18 @@ } } - CharUpper(ComputerName); + CharUpper(ComputerName); - NETRESOURCE res; - NetResourceList::InitNetResource (res); - if (!GetResourceInfo (ComputerName, &res)) - return FALSE; - /* - if (!IsMSNetResource (res)) - return FALSE; - */ - if (!IsResourceReadable(res)) - { + NETRESOURCE res; + NetResourceList::InitNetResource (res); + if (!GetResourceInfo (ComputerName, &res)) + return FALSE; + /* + if (!IsMSNetResource (res)) + return FALSE; + */ + if (!IsResourceReadable(res)) + { int err = GetLastError(); if (err == ERROR_INVALID_PASSWORD || err == ERROR_LOGON_FAILURE || err == ERROR_ACCESS_DENIED || err == ERROR_INVALID_HANDLE || err == ERROR_LOGON_TYPE_NOT_GRANTED) if(!((AddConnectionFromFavorites(&res)||AddConnectionExplicit(&res))&&IsResourceReadable (res))) diff --ignore-file-name-case -rtuFdTl old/NetEng.lng new/NetEng.lng --- old/NetEng.lng 2009-09-10 18:53:03 +0400 +++ new/NetEng.lng 2009-09-10 20:19:07 +0400 @@ -22,6 +22,7 @@ "Cannot browse network" "Cannot connect \"%.40s\" to %s" +"Cannot connect to %s" "The disk name has a remembered connection" "If you do not close the open files, data may be lost." diff --ignore-file-name-case -rtuFdTl old/NetRus.lng new/NetRus.lng --- old/NetRus.lng 2009-09-10 18:53:03 +0400 +++ new/NetRus.lng 2009-09-10 20:19:22 +0400 @@ -22,6 +22,7 @@ "ЋиЁЎЄ Їа®б¬®ва бҐвЁ" "ЌҐ г¤ Ґвбп Ї®¤б®Ґ¤Ё-Ёвм \"%.40s\" Є %s" +"ЌҐ г¤ Ґвбп Ї®¤б®Ґ¤Ё-Ёвмбп Є %s" "ќв® Ё¬п ¤ЁбЄ 㦥 § ¤Ґ©бвў®ў -® Ї®¤ § Ї®¬-Ґ--®Ґ ᮥ¤Ё-Ґ-ЁҐ" "…б«Ё ўл -Ґ § Єа®ҐвҐ ®вЄалвлҐ д ©«л, ў®§¬®¦- Ї®вҐап ¤ --ле." diff --ignore-file-name-case -rtuFdTl old/Network.rc new/Network.rc --- old/Network.rc 2009-09-10 18:53:03 +0400 +++ new/Network.rc 2009-09-10 19:26:10 +0400 @@ -1,6 +1,6 @@ #include "farversion.hpp" -#define PLUGIN_BUILD 52 +#define PLUGIN_BUILD 52-1 #define PLUGIN_DESC "Network Plugin for FAR Manager" #define PLUGIN_NAME "Network" #define PLUGIN_FILENAME "Network.dll" | | Всего записей: 33236 | Зарегистр. 31-07-2002 | Отправлено: 01:54 11-09-2009 | Исправлено: Victor_VG, 11:36 11-09-2009 |
|