Changeset 45 for trunk/dll


Ignore:
Timestamp:
Feb 12, 2003, 9:12:47 PM (23 years ago)
Author:
root
Message:

docopyf - don't forget to terminate longname, optimize longname logic

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/dll/copyf.c

    r29 r45  
    1111  Revisions     14 Sep 02 SHL - Drop obsolete debug code
    1212                14 Oct 02 SHL - Drop obsolete debug code
     13                10 Nov 02 SHL - docopyf - don't forget to terminate longname
     14                                          optimize longname logic
    1315
    1416***********************************************************************/
     
    439441  va_list     ap;
    440442
    441   *fullnewname = *longname = *shortname = *dir = 0;
     443  *fullnewname = *shortname = *dir = 0;
    442444
    443445  va_start(ap,
     
    466468  olddisk = toupper(*oldname);        /* source drive */
    467469  newdisk = toupper(*fullnewname);    /* destination drive */
    468   GetLongName(oldname,
    469               longname);
    470   if(*longname) {
    471     if(!(driveflags[toupper(*oldname) - 'A'] & DRIVE_NOLONGNAMES))
    472       *longname = 0;
    473     else {
     470  if(!(driveflags[toupper(*oldname) - 'A'] & DRIVE_NOLONGNAMES))
     471    *longname = 0;
     472  else
     473  {
     474    GetLongName(oldname, longname);
     475    if(*longname) {
    474476      p = RootName(longname);
    475477      if(p != longname)
    476         memmove(longname,
    477                 p,
    478                 strlen(p));
    479     }
    480     /* did root name change? */
    481     p = RootName(oldname);
    482     pp = RootName(fullnewname);
    483     if(stricmp(p,
    484                pp))
    485     {
     478        memmove(longname, p, strlen(p) + 1);
     479    }
     480  }
     481  /* If root name changed make sure longname EA goes away */
     482  p = RootName(oldname);
     483  pp = RootName(fullnewname);
     484  if(stricmp(p, pp))
     485  {
    486486#ifdef DEBUG
    487       saymsg(MB_ENTER,HWND_DESKTOP,DEBUG_STRING,"oldname: %s\rnewname: %s",oldname,fullnewname);        // fixme to be gone
     487    saymsg(MB_ENTER,HWND_DESKTOP,DEBUG_STRING,"oldname: %s\rnewname: %s",oldname,fullnewname);  // fixme to be gone
    488488#endif
    489       zaplong = TRUE;
    490     }
     489    zaplong = TRUE;
    491490  }
    492491
Note: See TracChangeset for help on using the changeset viewer.