SQLite Archiver
Ticket Change Details
Not logged in
Overview

Artifact ID: 864e9759e5dadd566584f669fb50f7d322f0b8ec
Ticket: 9dafc304842267ed73268d3fc43497ef64891144
sqlar tosses file mod times
User & Date: anonymous 2017-12-14 06:03:37
Changes

  1. Change foundin to "tip as of today"
  2. Change icomment to:
    sqlar.c, as of check-in [4a0ed63dae] at 2017-12-02 19:15:43 on branch trunk, in its write_file() function, does nothing with the mtime argument. Upon restoration out of an archive, all files have the same, nearly useless timestamp.
    
    Adding these lines in the right places fixes this deficiency:
      #include <utime.h> // near sqlar.c top
    ...
      struct utimbuf tb = { mtime, mtime }; // near write_file top
    ...
      rc = utime(zFilename, &tb);  // at write_file bottom
      if( rc ) errorMsg("cannot set timestamps: %s\n", zFilename);
    
    I'm sure that including mtime in the schema was well motivated, so I cite that in lieu of an argument for actually preserving the corresponding file attribute.
    
  3. Change login to "anonymous"
  4. Change mimetype to "text/x-fossil-plain"
  5. Change private_contact to "a3f9bb81e58d0893fc9338b98ddc62e27a349b16"
  6. Change severity to "Important"
  7. Change status to "Open"
  8. Change title to "sqlar tosses file mod times"
  9. Change type to "Feature_Request"