Ticket Change Details
Not logged in
Overview

Artifact ID: 81765bbaba1d882ad47eea3f62a5d96e98742550
Ticket: b733bba0b7319ef2dc9d74526dab7eec29460fcd
Fossil crash when doing addremove/add/extras
User & Date: anonymous 2011-05-05 21:08:24
Changes

  1. Appended to comment:
    
    
    <hr /><i>anonymous claiming to be Ingo Koch added on 2011-05-05 21:08:24 UTC:</i><br />
    The bug was introduced with version [53aef2dee1] in  
    <verbatim>int vfile_top_of_checkout(const char *zPath)</verbatim>
    
    The mprintf is called without zPath. I added some debug output and saw that the first zFile contains a valid path but the second one contained garbage.
    
    I don't know why it works for the first call, but the second crashes fossil under Windows.
    
    Here is a correction:
    <verbatim>
    Index: src/vfile.c
    ===================================================================
    --- src/vfile.c
    +++ src/vfile.c
    @@ -301,15 +301,15 @@
     */
     int vfile_top_of_checkout(const char *zPath){
       char *zFile;
       int fileFound = 0;
     
    -  zFile = mprintf("%s/_FOSSIL_");
    +  zFile = mprintf("%s/_FOSSIL_",zPath);
       fileFound = file_size(zFile)>=1024;
       fossil_free(zFile);
       if( !fileFound ){
    -    zFile = mprintf("%s/.fos");
    +    zFile = mprintf("%s/.fos",zPath);
         fileFound = file_size(zFile)>=1024;
         fossil_free(zFile);
       }
       return fileFound;
     }
    </verbatim>
    
  2. resolution changed to: "Open"
  3. type changed to: "Code_Defect"