extern int ListHeight;\r
extern char FilterStr[FILTER_EXT_LEN+1];\r
extern HWND hHelpWin;\r
+// 外部アプリケーションへドロップ後にローカル側のファイル一覧に作業フォルダが表示されるバグ対策\r
+extern int SuppressRefresh;\r
\r
/* 設定値 */\r
extern int LocalWidth;\r
LV_COLUMN LvCol;\r
long Tmp;\r
\r
+ // 変数が未初期化のバグ修正\r
+ memset(&LvCol, 0, sizeof(LV_COLUMN));\r
+\r
/*===== ローカル側のリストビュー =====*/\r
\r
hWndListLocal = CreateWindowEx(/*WS_EX_STATICEDGE*/WS_EX_CLIENTEDGE,\r
remove(fn);\r
}\r
\r
+ // 同時接続対応\r
+ DisableUserOpe();\r
+ // 外部アプリケーションへドロップ後にローカル側のファイル一覧に作業フォルダが表示されるバグ対策\r
+ SuppressRefresh = 1;\r
+\r
// ダウンロード先をテンポラリに設定\r
SetLocalDirHist(TmpDir);\r
\r
SetLocalDirHist(LocDir);\r
SetCurrentDirAsDirHist();\r
\r
+ // 外部アプリケーションへドロップ後にローカル側のファイル一覧に作業フォルダが表示されるバグ対策\r
+ SuppressRefresh = 0;\r
+ GetLocalDirForWnd();\r
+ // 同時接続対応\r
+ EnableUserOpe();\r
+\r
remoteFileListBase = FileListBase; // あとでフリーすること\r
remoteFileListBaseNoExpand = FileListBaseNoExpand; // あとでフリーすること\r
strncpy_s(remoteFileDir, sizeof(remoteFileDir), TmpDir, _TRUNCATE);\r
if(hWnd == hWndListRemote)\r
{\r
if(AskConnecting() == YES)\r
- UpLoadDragProc(wParam);\r
+ UploadDragProc(wParam);\r
}\r
else if(hWnd == hWndListLocal)\r
{\r
LV_COLUMN LvCol;\r
int i;\r
\r
+ // 変数が未初期化のバグ修正\r
+ memset(&LvCol, 0, sizeof(LV_COLUMN));\r
+\r
for(i = 0; i <= 3; i++)\r
{\r
LvCol.mask = LVCF_WIDTH;\r
if(DispDrives)\r
{\r
GetLogicalDriveStrings(FMAX_PATH, Scan);\r
- NoDrives = LoadHideDriveListRegistory();\r
+ NoDrives = LoadHideDriveListRegistry();\r
\r
Pos = Scan;\r
while(*Pos != NUL)\r
\r
if((Sort & SORT_GET_ORD) == SORT_ASCENT)\r
{\r
- if((((Sort & SORT_MASK_ORD) == SORT_EXT) &&\r
- ((Cmp = _mbsicmp(GetFileExt(Name), GetFileExt(Pos->File))) < 0)) ||\r
+ // 読みにくいのでリファクタリング\r
+// if((((Sort & SORT_MASK_ORD) == SORT_EXT) &&\r
+// ((Cmp = _mbsicmp(GetFileExt(Name), GetFileExt(Pos->File))) < 0)) ||\r
+//#if defined(HAVE_TANDEM)\r
+// ((AskHostType() == HTYPE_TANDEM) &&\r
+// ((Sort & SORT_MASK_ORD) == SORT_EXT) &&\r
+// ((Cmp = Attr - Pos->Attr) < 0)) ||\r
+//#endif\r
+// (((Sort & SORT_MASK_ORD) == SORT_SIZE) &&\r
+// ((Cmp = Size - Pos->Size) < 0)) ||\r
+// (((Sort & SORT_MASK_ORD) == SORT_DATE) &&\r
+// ((Cmp = CompareFileTime(Time, &Pos->Time)) < 0)))\r
+// {\r
+// break;\r
+// }\r
+ if(((Sort & SORT_MASK_ORD) == SORT_EXT) &&\r
+ ((Cmp = _mbsicmp(GetFileExt(Name), GetFileExt(Pos->File))) < 0))\r
+ break;\r
#if defined(HAVE_TANDEM)\r
- ((AskHostType() == HTYPE_TANDEM) &&\r
- ((Sort & SORT_MASK_ORD) == SORT_EXT) &&\r
- ((Cmp = Attr - Pos->Attr) < 0)) ||\r
+ if((AskHostType() == HTYPE_TANDEM) &&\r
+ ((Sort & SORT_MASK_ORD) == SORT_EXT) &&\r
+ ((Cmp = Attr - Pos->Attr) < 0))\r
+ break;\r
#endif\r
- (((Sort & SORT_MASK_ORD) == SORT_SIZE) &&\r
- ((Cmp = Size - Pos->Size) < 0)) ||\r
- (((Sort & SORT_MASK_ORD) == SORT_DATE) &&\r
- ((Cmp = CompareFileTime(Time, &Pos->Time)) < 0)))\r
- {\r
+ if(((Sort & SORT_MASK_ORD) == SORT_SIZE) &&\r
+ ((Cmp = Size - Pos->Size) < 0))\r
+ break;\r
+ if(((Sort & SORT_MASK_ORD) == SORT_DATE) &&\r
+ ((Cmp = CompareFileTime(Time, &Pos->Time)) < 0))\r
break;\r
- }\r
\r
if(((Sort & SORT_MASK_ORD) == SORT_NAME) || (Cmp == 0))\r
{\r
if(Pos == -1)\r
Pos = SendMessage(hWnd, LVM_GETITEMCOUNT, 0, 0);\r
\r
+ // 変数が未初期化のバグ修正\r
+ memset(&LvItem, 0, sizeof(LV_ITEM));\r
/* アイコン/ファイル名 */\r
LvItem.mask = LVIF_TEXT | LVIF_IMAGE;\r
LvItem.iItem = Pos;\r
FILETIME Time2;\r
int Find;\r
\r
+ // 変数が未初期化のバグ修正\r
+ memset(&LvItem, 0, sizeof(LV_ITEM));\r
Win = WIN_LOCAL;\r
WinDst = WIN_REMOTE;\r
if(hWnd == GetRemoteHwnd())\r
LV_ITEM LvItem;\r
char *Title;\r
\r
+ // 変数が未初期化のバグ修正\r
+ memset(&LvItem, 0, sizeof(LV_ITEM));\r
Win = WIN_LOCAL;\r
Title = MSGJPN050;\r
if(hWnd == GetRemoteHwnd())\r
if(Win == WIN_REMOTE)\r
hWnd = GetRemoteHwnd();\r
\r
+ // 変数が未初期化のバグ修正\r
+ memset(&FindInfo, 0, sizeof(LV_FINDINFO));\r
FindInfo.flags = LVFI_STRING;\r
FindInfo.psz = Name;\r
return(SendMessage(hWnd, LVM_FINDITEM, -1, (LPARAM)&FindInfo));\r
if(Win == WIN_REMOTE)\r
hWnd = GetRemoteHwnd();\r
\r
+ // 変数が未初期化のバグ修正\r
+ memset(&LvItem, 0, sizeof(LV_ITEM));\r
LvItem.mask = LVIF_TEXT;\r
LvItem.iItem = Pos;\r
LvItem.iSubItem = 0;\r
if(Win == WIN_REMOTE)\r
hWnd = GetRemoteHwnd();\r
\r
+ // 変数が未初期化のバグ修正\r
+ memset(&LvItem, 0, sizeof(LV_ITEM));\r
LvItem.mask = LVIF_TEXT;\r
LvItem.iItem = Pos;\r
LvItem.iSubItem = 1;\r
if(Win == WIN_REMOTE)\r
hWnd = GetRemoteHwnd();\r
\r
+ // 変数が未初期化のバグ修正\r
+ memset(&LvItem, 0, sizeof(LV_ITEM));\r
LvItem.mask = LVIF_TEXT;\r
LvItem.iItem = Pos;\r
LvItem.iSubItem = 2;\r
Ret = NO;\r
if(Win == WIN_REMOTE)\r
{\r
+ // 変数が未初期化のバグ修正\r
+ memset(&LvItem, 0, sizeof(LV_ITEM));\r
LvItem.mask = LVIF_TEXT;\r
LvItem.iItem = Pos;\r
#if defined(HAVE_TANDEM)\r
if(Win == WIN_REMOTE)\r
hWnd = GetRemoteHwnd();\r
\r
+ // 変数が未初期化のバグ修正\r
+ memset(&LvItem, 0, sizeof(LV_ITEM));\r
LvItem.mask = LVIF_TEXT;\r
LvItem.iItem = Pos;\r
LvItem.iSubItem = 2;\r
strcpy(Buf, "");\r
if(Win == WIN_REMOTE)\r
{\r
+ // 変数が未初期化のバグ修正\r
+ memset(&LvItem, 0, sizeof(LV_ITEM));\r
LvItem.mask = LVIF_TEXT;\r
LvItem.iItem = Pos;\r
LvItem.iSubItem = 5;\r
if((Node == NODE_FILE) ||\r
((Expand == NO) && (Node == NODE_DIR)))\r
{\r
+ // 変数が未初期化のバグ修正\r
+ memset(&Pkt, 0, sizeof(FILELIST));\r
+\r
Pkt.InfoExist = 0;\r
GetNodeName(Win, Pos, Pkt.File, FMAX_PATH);\r
if(GetNodeSize(Win, Pos, &Pkt.Size) == YES)\r
{\r
if(GetNodeType(Win, Pos) == NODE_DIR)\r
{\r
+ // 変数が未初期化のバグ修正\r
+ memset(&Pkt, 0, sizeof(FILELIST));\r
+\r
GetNodeName(Win, Pos, Name, FMAX_PATH);\r
strcpy(Pkt.File, Name);\r
ReplaceAll(Pkt.File, '\\', '/');\r
\r
if((GetFileAttributes(Name) & FILE_ATTRIBUTE_DIRECTORY) == 0)\r
{\r
+ // 変数が未初期化のバグ修正\r
+ memset(&Pkt, 0, sizeof(FILELIST));\r
+\r
Pkt.Node = NODE_FILE;\r
strcpy(Pkt.File, GetFileName(Name));\r
\r
\r
if(GetFileAttributes(Name) & FILE_ATTRIBUTE_DIRECTORY)\r
{\r
+ // 変数が未初期化のバグ修正\r
+ memset(&Pkt, 0, sizeof(FILELIST));\r
+\r
Pkt.Node = NODE_DIR;\r
strcpy(Pkt.File, GetFileName(Name));\r
AddFileList(&Pkt, Base);\r
{\r
if(Pos->Node == NODE_DIR)\r
{\r
+ // 変数が未初期化のバグ修正\r
+ memset(&Pkt, 0, sizeof(FILELIST));\r
+\r
/* まずディレクトリ名をセット */\r
strcpy(Pkt.File, Pos->File);\r
Pkt.Node = NODE_DIR;\r
{\r
if(IncDir == RDIR_NLST)\r
{\r
+ // 変数が未初期化のバグ修正\r
+ memset(&Pkt, 0, sizeof(FILELIST));\r
+\r
strcpy(Pkt.File, Dir);\r
Pkt.Node = NODE_DIR;\r
Pkt.Size = 0;\r
if((Node == NODE_FILE) ||\r
((IncDir == RDIR_CWD) && (Node == NODE_DIR)))\r
{\r
+ // 変数が未初期化のバグ修正\r
+ memset(&Pkt, 0, sizeof(FILELIST));\r
+\r
strcpy(Pkt.File, Dir);\r
if(strlen(Pkt.File) > 0)\r
SetSlashTail(Pkt.File);\r
{\r
if(AskFilterStr(FindBuf.cFileName, NODE_FILE) == YES)\r
{\r
+ // 変数が未初期化のバグ修正\r
+ memset(&Pkt, 0, sizeof(FILELIST));\r
+\r
strcpy(Pkt.File, Path);\r
SetSlashTail(Pkt.File);\r
strcat(Pkt.File, FindBuf.cFileName);\r
(strcmp(FindBuf.cFileName, ".") != 0) &&\r
(strcmp(FindBuf.cFileName, "..") != 0))\r
{\r
+ // 変数が未初期化のバグ修正\r
+ memset(&Pkt, 0, sizeof(FILELIST));\r
+\r
strcpy(Src, Path);\r
SetYenTail(Src);\r
strcat(Src, FindBuf.cFileName);\r