Changeset 1040
Legend:
- Unmodified
- Added
- Removed
-
trunk/dll/arccnrs.c
r1039 r1040 1564 1564 case IDM_DELETE: 1565 1565 { 1566 CHAR cl[1001], *endofit; 1566 CHAR *endofit; 1567 PSZ pszCmdLine; 1567 1568 INT z; 1568 1569 CHECKLIST ck; … … 1590 1591 li->list = ck.list; 1591 1592 if (!li->list || !li->list[0]) 1592 break; 1593 strcpy(cl, li->type == IDM_DELETE ? 1593 break; 1594 pszCmdLine = xmallocz(MaxComLineStrg, pszSrcFile, __LINE__); 1595 if (!pszCmdLine) 1596 break; 1597 strcpy(pszCmdLine, li->type == IDM_DELETE ? 1594 1598 dcd->info->delete : 1595 1599 dcd->info->create); 1596 strcat( cl, " ");1597 BldQuotedFileName( cl + strlen(cl), dcd->arcname);1598 endofit = & cl[strlen(cl)];1600 strcat(pszCmdLine, " "); 1601 BldQuotedFileName(pszCmdLine + strlen(pszCmdLine), dcd->arcname); 1602 endofit = &pszCmdLine[strlen(pszCmdLine)]; 1599 1603 z = 0; 1600 1604 do { 1601 1605 for (x = z; li->list[x] && 1602 strlen( cl) + strlen(li->list[x]) < 999; x++) {1603 strcat( cl, " ");1604 BldQuotedFileName( cl + strlen(cl), li->list[x]);1606 strlen(pszCmdLine) + strlen(li->list[x]) < 999; x++) { 1607 strcat(pszCmdLine, " "); 1608 BldQuotedFileName(pszCmdLine + strlen(pszCmdLine), li->list[x]); 1605 1609 } 1606 1610 z = x; 1607 1611 runemf2(SEPARATE | WINDOWED | WAIT | 1608 1612 (fArcStuffVisible ? 0 : BACKGROUND | MINIMIZED), 1609 hwnd, pszSrcFile, __LINE__, NullStr, NULL, "%s", cl); 1610 *endofit = 0; 1613 hwnd, pszSrcFile, __LINE__, NullStr, NULL, "%s", pszCmdLine); 1614 *endofit = 0; 1615 free(pszCmdLine); 1611 1616 } while (li->list[x]); 1612 1617 PostMsg(dcd->hwndCnr, UM_RESCAN, MPFROMSHORT(1), MPVOID); … … 1631 1636 case IDM_EXTRACT: 1632 1637 { 1633 CHAR cl[1001], *endofit, *ptr; 1638 CHAR *endofit, *ptr; 1639 PSZ pszCmdLine; 1634 1640 INT z; 1635 1641 … … 1691 1697 } 1692 1698 if (!li->list || !li->list[0]) 1693 break; 1694 strcpy(cl, 1699 break; 1700 pszCmdLine = xmallocz(MaxComLineStrg, pszSrcFile, __LINE__); 1701 if (!pszCmdLine) 1702 break; 1703 strcpy(pszCmdLine, 1695 1704 (li->type == IDM_EXTRACT || 1696 1705 ((li->type == IDM_VIEW || … … 1706 1715 li->info->extract : 1707 1716 li->info->exwdirs); 1708 strcat( cl, " ");1709 BldQuotedFileName( cl + strlen(cl), li->arcname);1710 endofit = & cl[strlen(cl)];1717 strcat(pszCmdLine, " "); 1718 BldQuotedFileName(pszCmdLine + strlen(pszCmdLine), li->arcname); 1719 endofit = &pszCmdLine[strlen(pszCmdLine)]; 1711 1720 z = 0; 1712 1721 do { 1713 1722 for (x = z; li->list[x] && 1714 strlen( cl) + strlen(li->list[x]) < 999; x++) {1715 strcat( cl, " ");1716 BldQuotedFileName( cl + strlen(cl), li->list[x]);1723 strlen(pszCmdLine) + strlen(li->list[x]) < 999; x++) { 1724 strcat(pszCmdLine, " "); 1725 BldQuotedFileName(pszCmdLine + strlen(pszCmdLine), li->list[x]); 1717 1726 ptr = li->list[x]; 1718 1727 while (*ptr) { … … 1726 1735 (fArcStuffVisible ? 0 : BACKGROUND | MINIMIZED) | 1727 1736 WAIT, hwnd, pszSrcFile, __LINE__, 1728 li->targetpath, NULL, "%s", cl);1737 li->targetpath, NULL, "%s", pszCmdLine); 1729 1738 *endofit = 0; 1730 1739 } while (li->list[x]); … … 1813 1822 } 1814 1823 } 1815 BldFullPathName( cl, li->targetpath, li->list[x]);1824 BldFullPathName(pszCmdLine, li->targetpath, li->list[x]); 1816 1825 temp = li->list[x]; 1817 li->list[x] = xstrdup(cl, pszSrcFile, __LINE__); 1826 li->list[x] = xstrdup(pszCmdLine, pszSrcFile, __LINE__); 1827 free(pszCmdLine); 1818 1828 if (!li->list[x]) 1819 1829 li->list[x] = temp; -
trunk/dll/mle.c
r1039 r1040 813 813 PostMsg(bkg->hwndReport, bkg->msg, MPVOID, MPVOID); 814 814 free(bkg); 815 bkg = NULL; 815 816 # ifdef FORTIFY 816 817 Fortify_LeaveScope();
Note:
See TracChangeset
for help on using the changeset viewer.