Changeset 1611 for trunk/dll/update.c
- Timestamp:
- Aug 9, 2011, 12:08:03 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/dll/update.c
r1444 r1611 72 72 return pci->rc.hptrIcon; 73 73 } 74 PCNRITEM UpdateCnrRecord(HWND hwndCnr, CHAR * filename, BOOL partial, 75 DIRCNRDATA * dcd) 74 75 /* Update/add CNRITEM record for filename 76 * Deletes existing CNRITEM if file has disappeared 77 * @returns pci pointer to CNRITEM record or NULL if not found or if stale CNRITEM deleted 78 */ 79 80 PCNRITEM UpdateCnrRecord(HWND hwndCnr, CHAR *filename, BOOL partial, 81 DIRCNRDATA *dcd) 76 82 { 77 83 PCNRITEM pci; … … 129 135 filename, (PCNRITEM) NULL, partial, FALSE, TRUE); 130 136 Update: 131 if (pci) { /* update record? */ 137 if (pci) { 138 // Check if record needs to be updated 132 139 if ((!fForceUpper && !fForceLower && strcmp(pci->pszFileName, filename)) || 133 140 pci->cbFile != ffb.cbFile || pci->attrFile != ffb.attrFile || … … 140 147 pci->ladate.year != ffb.fdateLastAccess.year + 1980 || pci->latime.seconds != 141 148 ffb.ftimeLastAccess.twosecs * 2 || pci->latime.minutes != 142 ffb.ftimeLastAccess.minutes || pci->latime.hours != ffb.ftimeLastAccess.hours) { /* changed; update */ 143 *ffb.achName = 0; 149 ffb.ftimeLastAccess.minutes || pci->latime.hours != ffb.ftimeLastAccess.hours) 150 { 151 // Something changed - update 152 *ffb.achName = 0; // Tell FillInRecordFromFFB that filename contains full pathname 144 153 ffb.cchName = 0; 145 154 FillInRecordFromFFB(hwndCnr, pci, filename, &ffb, partial, dcd); 146 155 if (strlen(pci->pszFileName) < 4) 147 SelectDriveIcon(pci);156 SelectDriveIcon(pci); 148 157 oldemphasis = pci->rc.flRecordAttr & (CRA_SELECTED | CRA_CURSORED); 149 158 if (oldemphasis) … … 152 161 MPFROMP(pci), MPFROM2SHORT(FALSE, oldemphasis)); 153 162 WinSendMsg(hwndCnr, 154 CM_INVALIDATERECORD, MPFROMP(&pci), MPFROM2SHORT(1, 155 /* CMA_ERASE | */ 156 CMA_TEXTCHANGED)); 163 CM_INVALIDATERECORD, MPFROMP(&pci), MPFROM2SHORT(1, CMA_TEXTCHANGED)); 157 164 if (oldemphasis) 158 165 WinSendMsg(hwndCnr, … … 163 170 return pci; 164 171 } 165 else { /* add record */ 172 else { 173 // Add record 166 174 if (dcd->type == DIR_FRAME) { 167 175 … … 191 199 dcd->ullTotalBytes += ullTotalBytes; 192 200 PostMsg(hwndCnr, UM_RESCAN, MPVOID, MPVOID); 193 194 195 201 if (pci->attrFile & FILE_DIRECTORY) { 202 Stubby(hwndCnr, pci); 203 } 196 204 } 197 205 } … … 285 293 if (dcd->type == DIR_FRAME) { 286 294 dcd->ullTotalBytes += ullTotalBytes; 287 288 295 } 296 Stubby(hwndCnr, pci); 289 297 } 290 298 } … … 299 307 TRUE)) != 300 308 NULL && (INT) pci != -1 && strlen(pci->pszFileName) > 3) { 301 / * file doesn't exist; delete record */309 // File has disappeared and found stale CNRITEM record delete it 302 310 if (!dcd) 303 311 dcd = INSTDATA(hwndCnr); … … 438 446 &ffb, partial, dcd); 439 447 if (strlen(pci->pszFileName) < 4) 440 448 SelectDriveIcon(pci); 441 449 memset(&ri, 0, sizeof(RECORDINSERT)); 442 450 ri.cb = sizeof(RECORDINSERT); … … 453 461 } 454 462 repos = TRUE; 455 456 457 463 if (pci->attrFile & FILE_DIRECTORY) { 464 Stubby(hwndCnr, pci); 465 } 458 466 } 459 467 else … … 552 560 dcd->ullTotalBytes += ullTotalBytes; 553 561 } 554 555 562 repos = TRUE; 563 Stubby(hwndCnr, pci); 556 564 } 557 565 else … … 579 587 if (RemoveCnrItems(hwndCnr, pci, 1, 580 588 CMA_FREE | 581 582 589 numremain == 1 ? CMA_INVALIDATE : 0) != -1) { 590 pci = NULL; 583 591 numremain--; 584 592 repos = TRUE;
Note:
See TracChangeset
for help on using the changeset viewer.