Changeset 606
- Timestamp:
- Apr 13, 2007, 11:30:27 PM (19 years ago)
- Location:
- trunk/dll
- Files:
-
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/dll/arccnrs.c
r603 r606 34 34 30 Mar 07 GKY Remove GetPString for window class names 35 35 06 Apr 07 GKY Work around PM DragInfo and DrgFreeISH limit 36 06 Apr 07 GKY Add some error checking in drag/drop 36 06 Apr 07 GKY Add some error checking in drag/drop 37 37 ***********************************************************************/ 38 38 … … 1130 1130 li = DoFileDrop(dcd->hwndCnr, 1131 1131 dcd->directory, FALSE, MPVOID, MPFROMP(&cni)); 1132 if (fexceedpmdrglimit)1132 if (fExceedPMDrgLimit) 1133 1133 saymsg(MB_CANCEL | MB_ICONEXCLAMATION, 1134 hwnd,1135 GetPString(IDS_ERRORTEXT),1136 GetPString(IDS_EXCEEDPMDRGLMT));1134 hwnd, 1135 GetPString(IDS_ERRORTEXT), 1136 GetPString(IDS_EXCEEDPMDRGLMT)); 1137 1137 if (li) { 1138 1138 li->type = (msg == DM_DISCARDOBJECT) ? IDM_DELETE : IDM_PRINT; … … 3006 3006 dcd->hwndObject, 3007 3007 mp2, dcd->arcname, NULL, TRUE)) { 3008 if ((fUnHilite && wasemphasized) || f exceedpmdrglimit)3008 if ((fUnHilite && wasemphasized) || fExceedPMDrgLimit) 3009 3009 UnHilite(hwnd, TRUE, &dcd->lastselection); 3010 3010 } … … 3036 3036 li = DoFileDrop(hwnd, dcd->arcname, FALSE, mp1, mp2); 3037 3037 DosBeep(50, 100); // fixme to know why beep? 3038 if (fexceedpmdrglimit)3039 3040 hwnd,3041 GetPString(IDS_ERRORTEXT),3042 GetPString(IDS_EXCEEDPMDRGLMT));3038 if (fExceedPMDrgLimit) 3039 saymsg(MB_CANCEL | MB_ICONEXCLAMATION, 3040 hwnd, 3041 GetPString(IDS_ERRORTEXT), 3042 GetPString(IDS_EXCEEDPMDRGLMT)); 3043 3043 if (li) { 3044 3044 li->type = li->type == DO_MOVE ? IDM_ARCHIVEM : IDM_ARCHIVE; -
trunk/dll/collect.c
r603 r606 459 459 cni.pDragInfo = (PDRAGINFO) mp1; 460 460 li = DoFileDrop(dcd->hwndCnr, NULL, FALSE, MPVOID, MPFROMP(&cni)); 461 if (fexceedpmdrglimit)462 463 hwnd,464 GetPString(IDS_ERRORTEXT),461 if (fExceedPMDrgLimit) 462 saymsg(MB_CANCEL | MB_ICONEXCLAMATION, 463 hwnd, 464 GetPString(IDS_ERRORTEXT), 465 465 GetPString(IDS_EXCEEDPMDRGLMT)); 466 466 if (li) { … … 2245 2245 GetPString(IDS_DRAGFILEOBJTEXT)); 2246 2246 if (DoFileDrag(hwnd, dcd->hwndObject, mp2, NULL, NULL, TRUE)) { 2247 if ((fUnHilite && wasemphasized) || f exceedpmdrglimit)2247 if ((fUnHilite && wasemphasized) || fExceedPMDrgLimit) 2248 2248 UnHilite(hwnd, TRUE, &dcd->lastselection); 2249 2249 } … … 2261 2261 2262 2262 li = DoFileDrop(hwnd, NULL, TRUE, mp1, mp2); 2263 if (fexceedpmdrglimit)2264 2265 hwnd,2266 GetPString(IDS_ERRORTEXT),2267 GetPString(IDS_EXCEEDPMDRGLMT));2263 if (fExceedPMDrgLimit) 2264 saymsg(MB_CANCEL | MB_ICONEXCLAMATION, 2265 hwnd, 2266 GetPString(IDS_ERRORTEXT), 2267 GetPString(IDS_EXCEEDPMDRGLMT)); 2268 2268 if (li) { 2269 2269 if (!*li->targetpath) { -
trunk/dll/dircnrs.c
r603 r606 589 589 DoFileDrop(dcd->hwndCnr, dcd->directory, FALSE, MPVOID, 590 590 MPFROMP(&cni)); 591 if (fexceedpmdrglimit)592 593 hwnd,594 GetPString(IDS_ERRORTEXT),591 if (fExceedPMDrgLimit) 592 saymsg(MB_CANCEL | MB_ICONEXCLAMATION, 593 hwnd, 594 GetPString(IDS_ERRORTEXT), 595 595 GetPString(IDS_EXCEEDPMDRGLMT)); 596 596 if (li) { … … 2847 2847 (pci) ? NULL : dcd->directory, 2848 2848 (pci) ? TRUE : FALSE)) { 2849 if ((pci && fUnHilite && wasemphasized) || f exceedpmdrglimit)2849 if ((pci && fUnHilite && wasemphasized) || fExceedPMDrgLimit) 2850 2850 UnHilite(hwnd, TRUE, &dcd->lastselection); 2851 2851 } … … 2865 2865 2866 2866 li = DoFileDrop(hwnd, dcd->directory, TRUE, mp1, mp2); 2867 if (fexceedpmdrglimit)2868 2869 hwnd,2870 GetPString(IDS_ERRORTEXT),2871 GetPString(IDS_EXCEEDPMDRGLMT));2867 if (fExceedPMDrgLimit) 2868 saymsg(MB_CANCEL | MB_ICONEXCLAMATION, 2869 hwnd, 2870 GetPString(IDS_ERRORTEXT), 2871 GetPString(IDS_EXCEEDPMDRGLMT)); 2872 2872 if (li) { 2873 2873 if (li->list && li->list[0] && IsRoot(li->list[0])) -
trunk/dll/draglist.c
r603 r606 31 31 32 32 #pragma alloc_text(DRAGLIST,DragOne,DoFileDrag,DragList,PickUp,DeleteDragitemStrHandles) 33 33 /* work around for DrgDeleteDraginfoStrHandles 34 which seems to fail with a large number of strings */ 34 35 BOOL DeleteDragitemStrHandles (PDRAGINFO pDInfo) 35 36 { 36 PDRAGITEM pDItem = NULL;37 PDRAGITEM pDItem; 37 38 ULONG cDitem; 38 INT i = 0; 39 UINT i = 0; 40 APIRET rc; 41 39 42 cDitem = DrgQueryDragitemCount(pDInfo); 40 while (i < (INT) cDitem){43 for (; i < (UINT)cDitem; i++){ 41 44 pDItem = DrgQueryDragitemPtr(pDInfo, i); 42 if (pDItem){ 43 DrgDeleteStrHandle(pDItem->hstrType); 44 DrgDeleteStrHandle(pDItem->hstrRMF); 45 DrgDeleteStrHandle(pDItem->hstrContainerName); 46 DrgDeleteStrHandle(pDItem->hstrSourceName); 47 // Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 48 // "DrgAddStrHandle"); 49 DrgDeleteStrHandle(pDItem->hstrTargetName); 45 if (!pDItem) 46 return FALSE; 47 else { 48 DrgDeleteStrHandle(pDItem->hstrType); 49 DrgDeleteStrHandle(pDItem->hstrRMF); 50 DrgDeleteStrHandle(pDItem->hstrContainerName); 51 rc = DrgDeleteStrHandle(pDItem->hstrSourceName); 52 if (!rc) 53 Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 54 "DrgDeleteStrHandle"); 55 DrgDeleteStrHandle(pDItem->hstrTargetName); 50 56 } 51 else 52 return FALSE; 53 i++; 54 } 55 return TRUE; 57 } // for 58 return TRUE; 56 59 } 57 60 … … 99 102 DItem.hstrContainerName = DrgAddStrHandle(szDir); 100 103 DItem.hstrSourceName = DrgAddStrHandle(szFile); 101 if (!DItem.hstrSourceName)104 if (!DItem.hstrSourceName) 102 105 Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 103 106 "DrgQueryStrName"); … … 142 145 &fakeicon, 1L, VK_ENDDRAG, /* End of drag indicator */ 143 146 (PVOID) NULL); /* Reserved */ 144 if(hDrop == NULLHANDLE){145 if (!DeleteDragitemStrHandles(pDInfo)) //)147 //if (hDrop == NULLHANDLE) 148 if (!DeleteDragitemStrHandles(pDInfo)) //) 146 149 Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 147 150 "DeleteDragistr"); 148 151 DrgDeleteDraginfoStrHandles (pDInfo); 149 152 DrgFreeDraginfo(pDInfo); /* Free DRAGINFO struct */ 150 }151 153 WinSetWindowPos(hwndCnr, HWND_TOP, 0, 0, 0, 0, SWP_ACTIVATE); 152 154 } … … 174 176 APIRET rc; 175 177 176 f exceedpmdrglimit = FALSE;178 fExceedPMDrgLimit = 0; 177 179 if (!pciRec && directory && *directory) 178 180 return DragOne(hwndCnr, hwndObj, directory, moveok); … … 267 269 padiIcon[ulNumfiles].cyOffset = 0 + (ulNumfiles * 6); 268 270 } 269 memset(ppDItem[ulNumfiles], 0, sizeof(DRAGITEM)); 270 ppDItem[ulNumfiles]->hwndItem = (hwndObj) ? hwndObj : hwndCnr; /* Initialize DRAGITEM */ 271 ppDItem[ulNumfiles]->hwndItem = hwndCnr; 272 ppDItem[ulNumfiles]->ulItemID = (ULONG) pci; 273 ppDItem[ulNumfiles]->hstrType = DrgAddStrHandle(DRT_UNKNOWN); 274 ppDItem[ulNumfiles]->hstrRMF = DrgAddStrHandle(DRMDRFLIST); 275 ppDItem[ulNumfiles]->hstrContainerName = DrgAddStrHandle(szBuffer); 276 ppDItem[ulNumfiles]->hstrSourceName = DrgAddStrHandle(szFile); 277 if (!ppDItem[ulNumfiles]->hstrSourceName) 278 Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 279 "DrgAddStrHandle"); 271 memset(ppDItem[ulNumfiles], 0, sizeof(DRAGITEM)); 272 ppDItem[ulNumfiles]->hwndItem = (hwndObj) ? hwndObj : hwndCnr; /* Initialize DRAGITEM */ 273 ppDItem[ulNumfiles]->hwndItem = hwndCnr; 274 ppDItem[ulNumfiles]->ulItemID = (ULONG) pci; 275 ppDItem[ulNumfiles]->hstrType = DrgAddStrHandle(DRT_UNKNOWN); 276 ppDItem[ulNumfiles]->hstrRMF = DrgAddStrHandle(DRMDRFLIST); 277 ppDItem[ulNumfiles]->hstrContainerName = DrgAddStrHandle(szBuffer); 278 ppDItem[ulNumfiles]->hstrSourceName = DrgAddStrHandle(szFile); 279 if (!ppDItem[ulNumfiles]->hstrSourceName){ 280 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrType); 281 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrRMF); 282 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrContainerName); 283 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrSourceName); 284 xfree(ppDItem[ulNumfiles]); 285 fExceedPMDrgLimit = ulNumfiles - 1; 286 break; 287 } 288 /*Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 289 "DrgAddStrHandle");*/ 280 290 ppDItem[ulNumfiles]->hstrTargetName = DrgAddStrHandle(szFile); 281 291 ppDItem[ulNumfiles]->fsControl = (isdir) ? DC_CONTAINER : 0; … … 292 302 rooting = TRUE; 293 303 } 294 if(ulNumfiles >= 1500){295 296 fexceedpmdrglimit = TRUE;297 298 }304 //if (ulNumfiles >= 2000){ 305 // pDInfo = DrgAllocDraginfo(ulNumfiles); 306 // fExceedPMDrgLimit = TRUE; 307 // goto Thatsall; 308 // } 299 309 ulNumfiles++; 300 310 ppDItem[ulNumfiles] = NULL; … … 329 339 ppDItem[ulNumfiles]->hstrContainerName = DrgAddStrHandle(arcfile); 330 340 ppDItem[ulNumfiles]->hstrSourceName = DrgAddStrHandle(szFile); 331 if(!ppDItem[ulNumfiles]->hstrSourceName) 332 Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 333 "DrgAddStrHandle"); 341 if (!ppDItem[ulNumfiles]->hstrSourceName){ 342 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrType); 343 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrRMF); 344 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrContainerName); 345 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrSourceName); 346 xfree(ppDItem[ulNumfiles]); 347 fExceedPMDrgLimit = ulNumfiles - 1; 348 break; 349 } 334 350 ppDItem[ulNumfiles]->hstrTargetName = DrgAddStrHandle(szFile); 335 351 ppDItem[ulNumfiles]->fsControl = DC_PREPARE; … … 350 366 ppDItem[ulNumfiles]->hstrContainerName = DrgAddStrHandle(arcfile); 351 367 ppDItem[ulNumfiles]->hstrSourceName = DrgAddStrHandle(szFile); 352 if(!ppDItem[ulNumfiles]->hstrSourceName) 353 Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 354 "DrgAddStrHandle"); 368 if (!ppDItem[ulNumfiles]->hstrSourceName){ 369 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrType); 370 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrRMF); 371 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrContainerName); 372 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrSourceName); 373 xfree(ppDItem[ulNumfiles]); 374 fExceedPMDrgLimit = ulNumfiles - 1; 375 break; 376 } 355 377 ppDItem[ulNumfiles]->hstrTargetName = DrgAddStrHandle(szFile); 356 378 ppDItem[ulNumfiles]->fsControl = 0; … … 359 381 ppDItem[ulNumfiles]->fsControl |= DC_REMOVEABLEMEDIA; 360 382 ppDItem[ulNumfiles]->fsSupportedOps = DO_COPYABLE; 361 if(ulNumfiles >= 1500){ 362 pDInfo = DrgAllocDraginfo(ulNumfiles); 363 goto Thatsall; 364 } 383 //if (ulNumfiles >= 1000){ 384 // pDInfo = DrgAllocDraginfo(ulNumfiles); 385 // fexceedpmdrglimit = TRUE; 386 // goto Thatsall; 387 // } 365 388 ulNumfiles++; 366 389 } … … 378 401 MPFROMSHORT(attribute)); 379 402 } // while 380 403 if (fExceedPMDrgLimit) 404 ulNumfiles = ulNumfiles - 1; 381 405 if (ulNumfiles) { 382 406 pDInfo = DrgAllocDraginfo(ulNumfiles); /* Allocate DRAGINFO */ 383 Thatsall:384 407 if (pDInfo) { 385 408 if ((arcfile && *arcfile) || (IsFullName(szBuffer) && … … 398 421 sizeof(DRAGITEM), /* Size of DRAGITEM */ 399 422 Select); /* Index of DRAGITEM */ 400 free(ppDItem[Select]);423 xfree(ppDItem[Select]); 401 424 } 402 425 #ifdef __DEBUG_ALLOC__ 403 426 _heap_check(); 404 427 #endif 405 free(ppDItem);428 xfree(ppDItem); 406 429 ppDItem = NULL; 407 430 DosPostEventSem(CompactSem); … … 431 454 padiIcon, ulNumIcon, VK_ENDDRAG, /* End of drag indicator */ 432 455 (PVOID) NULL); /* Reserved */ 433 if(hDrop == NULLHANDLE){ 434 rc = DeleteDragitemStrHandles(pDInfo); // 435 if(!rc) 456 rc = DeleteDragitemStrHandles(pDInfo); 457 if (!rc) 436 458 Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 437 459 "DeleteDragistr"); 438 460 DrgDeleteDraginfoStrHandles (pDInfo); 439 461 rc = DrgFreeDraginfo(pDInfo); /* Free DRAGINFO struct */ 440 if (!rc)462 if (!rc) 441 463 Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 442 464 "DrgFreeDraginfo"); 443 }444 465 if (padiIcon && padiIcon != &diFakeIcon) 445 free(padiIcon);466 xfree(padiIcon); 446 467 padiIcon = NULL; 447 468 WinSetWindowPos(hwndCnr, HWND_TOP, 0, 0, 0, 0, SWP_ACTIVATE); … … 450 471 } 451 472 if (ppDItem) 452 free(ppDItem);473 xfree(ppDItem); 453 474 if (padiIcon && padiIcon != &diFakeIcon) 454 free(padiIcon);475 xfree(padiIcon); 455 476 MarkAll(hwndCnr, TRUE, FALSE, TRUE); 456 477 return hDrop; … … 543 564 ppDItem[ulNumfiles]->hstrContainerName = DrgAddStrHandle(szBuffer); 544 565 ppDItem[ulNumfiles]->hstrSourceName = DrgAddStrHandle(szFile); 545 if(!ppDItem[ulNumfiles]->hstrSourceName) 546 Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 547 "DrgAddStrHandle"); 566 if (!ppDItem[ulNumfiles]->hstrSourceName){ 567 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrType); 568 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrRMF); 569 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrContainerName); 570 DrgDeleteStrHandle(ppDItem[ulNumfiles]->hstrSourceName); 571 xfree(ppDItem[ulNumfiles]); 572 fExceedPMDrgLimit = ulNumfiles - 1; 573 break; 574 } 548 575 ppDItem[ulNumfiles]->hstrTargetName = DrgAddStrHandle(szFile); 549 576 ppDItem[ulNumfiles]->fsControl = (isdir) ? DC_CONTAINER : 0; … … 562 589 } 563 590 } // for 564 591 if (fExceedPMDrgLimit) 592 ulNumfiles = ulNumfiles - 1; 565 593 if (ulNumfiles) { 566 594 pDInfo = DrgAllocDraginfo(ulNumfiles); /* Allocate DRAGINFO */ … … 597 625 padiIcon, ulNumIcon, VK_ENDDRAG, /* End of drag indicator */ 598 626 (PVOID) NULL); /* Reserved */ 599 if(hDrop == NULLHANDLE){ 600 if(!DeleteDragitemStrHandles(pDInfo)) //) 601 Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 602 "DeleteDragistr"); 627 if (!DeleteDragitemStrHandles(pDInfo)) 628 Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 629 "DeleteDragistr"); 603 630 DrgDeleteDraginfoStrHandles (pDInfo); 604 if(!DrgFreeDraginfo(pDInfo)); /* Free DRAGINFO struct */ 605 Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 606 "DrgFreeDraginfo"); 607 } 608 free(padiIcon); 631 if (!DrgFreeDraginfo(pDInfo)); /* Free DRAGINFO struct */ 632 Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 633 "DrgFreeDraginfo"); 634 xfree(padiIcon); 609 635 padiIcon = NULL; 610 636 WinSetWindowPos(hwnd, HWND_TOP, 0, 0, 0, 0, SWP_ACTIVATE); … … 676 702 ditem.hstrContainerName = DrgAddStrHandle(szDir); 677 703 ditem.hstrSourceName = DrgAddStrHandle(szFile); 678 if (!ditem.hstrSourceName)704 if (!ditem.hstrSourceName) 679 705 Win_Error(HWND_DESKTOP, HWND_DESKTOP, pszSrcFile, __LINE__, 680 706 "DrgAddStrHandle"); -
trunk/dll/fm3dll.h
r603 r606 40 40 18 Mar 07 GKY Add MM import typedefines for fix for files misindentified as multimedia 41 41 30 Mar 07 GKY Defined golbals for removing GetPString for window class names 42 06 Apr 07 GKY Work around PM DragInfo and DrgFreeDISH limits f exceedpmgrglimit & DeleteDragitemStrHandles42 06 Apr 07 GKY Work around PM DragInfo and DrgFreeDISH limits fExceedPMDrgLimit & DeleteDragitemStrHandles 43 43 06 Apr 07 GKY Add some error checking in drag/drop 44 44 … … 1345 1345 fCustomFileDlg, fSaveMiniCmds, fSaveBigCmds, fNoTileUpdate, 1346 1346 fFM2Deletes, fAutoAddAllDirs, fConfirmTarget, fChangeTarget, 1347 fFirstTime, fShowTarget, fNoFinger, fDrivebarHelp, fCheckMM , fexceedpmdrglimit;1347 fFirstTime, fShowTarget, fNoFinger, fDrivebarHelp, fCheckMM; 1348 1348 DATADEF BOOL detailsladate, detailslatime, detailscrdate, detailscrtime, 1349 1349 detailslongname, detailsea, detailssize, detailssubject, … … 1351 1351 DATADEF PID mypid; 1352 1352 DATADEF INT driveflags[26], driveserial[26]; 1353 DATADEF ULONG NoBrokenNotify, fwsAnimate, OS2ver[2], DriveLines ;1353 DATADEF ULONG NoBrokenNotify, fwsAnimate, OS2ver[2], DriveLines, fExceedPMDrgLimit; 1354 1354 DATADEF HINI fmprof; 1355 1355 DATADEF HELPINIT hini; -
trunk/dll/ipf/Trouble.ipf
r604 r606 39 39 we were limited to under 1700. The main problem is PM is happy to over write this buffer. 40 40 The result is significant corruption of share memory forcing a reboot. We have limited drag 41 operations to a maximum of 1500 objects to prevent this problem. 41 operations to maximum number of objects that will fit in the dragitem 42 structure (700- 1700 depending on path length and other factors) 43 to prevent this problem. -
trunk/dll/ipf/term.ipf
r604 r606 83 83 the OS/2 Tutorial. Drag and drop is a superior method for manipulating 84 84 objects, as opposed to keyboard commands, because you choose both the 85 command and the target in one operation. We have set a limit of 1500objects86 per drag because drag larger than that can overwritethe draginfo buffer85 command and the target in one operation. We have limited the number of objects 86 per drag because large drags can overflow the draginfo buffer 87 87 causing the corruption of shared memory and forcing a reboot. 88 88 :p. -
trunk/dll/mainwnd.c
r603 r606 1233 1233 cdi.pDragInfo = mp1; 1234 1234 li = DoFileDrop(hwnd, NULL, FALSE, mp1, MPFROMP(&cdi)); 1235 if (fexceedpmdrglimit)1236 1237 hwnd,1238 GetPString(IDS_ERRORTEXT),1235 if (fExceedPMDrgLimit) 1236 saymsg(MB_CANCEL | MB_ICONEXCLAMATION, 1237 hwnd, 1238 GetPString(IDS_ERRORTEXT), 1239 1239 GetPString(IDS_EXCEEDPMDRGLMT)); 1240 1240 if (li) { … … 1806 1806 NULL, 1807 1807 TRUE, MPFROM2SHORT(TREE_CNR, CN_DROP), MPFROMP(&cnd)); 1808 if (fexceedpmdrglimit)1809 1810 hwnd,1811 GetPString(IDS_ERRORTEXT),1808 if (fExceedPMDrgLimit) 1809 saymsg(MB_CANCEL | MB_ICONEXCLAMATION, 1810 hwnd, 1811 GetPString(IDS_ERRORTEXT), 1812 1812 GetPString(IDS_EXCEEDPMDRGLMT)); 1813 1813 if (li) { -
trunk/dll/makelist.c
r603 r606 75 75 FreeList(li->list); 76 76 free(li); 77 fexceedpmdrglimit = FALSE;78 77 } 79 78 } -
trunk/dll/select.c
r603 r606 62 62 if (!all) 63 63 break; 64 if(f exceedpmdrglimit && x == 1499){65 f exceedpmdrglimit = FALSE;64 if(fExceedPMDrgLimit && x == fExceedPMDrgLimit - 1){ 65 fExceedPMDrgLimit = 0; 66 66 break; 67 67 } … … 569 569 BOOL slow = FALSE; 570 570 register INT x, numD, numS; 571 571 572 572 573 if (!hwndCnrS || !hwndCnrD) -
trunk/dll/treecnr.c
r603 r606 545 545 li = DoFileDrop(dcd->hwndCnr, 546 546 dcd->directory, FALSE, MPVOID, MPFROMP(&cni)); 547 if (fexceedpmdrglimit)548 549 hwnd,550 GetPString(IDS_ERRORTEXT),547 if (fExceedPMDrgLimit) 548 saymsg(MB_CANCEL | MB_ICONEXCLAMATION, 549 hwnd, 550 GetPString(IDS_ERRORTEXT), 551 551 GetPString(IDS_EXCEEDPMDRGLMT)); 552 552 if (li) { … … 1375 1375 1376 1376 li = DoFileDrop(hwnd, NULL, TRUE, mp1, mp2); 1377 if (fexceedpmdrglimit)1378 1379 hwnd,1380 GetPString(IDS_ERRORTEXT),1381 GetPString(IDS_EXCEEDPMDRGLMT));1377 if (fExceedPMDrgLimit) 1378 saymsg(MB_CANCEL | MB_ICONEXCLAMATION, 1379 hwnd, 1380 GetPString(IDS_ERRORTEXT), 1381 GetPString(IDS_EXCEEDPMDRGLMT)); 1382 1382 if (li) { 1383 1383 if (!*li->targetpath) {
Note:
See TracChangeset
for help on using the changeset viewer.