Ticket Change Details
Not logged in
Overview

Artifact ID: e5db7b80d518657ab58d1f2962de4257523724ce
Ticket: baf9b6b11e08c1d0b151d52dd6392ffcb8d44590
update/revert don't set permissions
User & Date: anonymous 2011-02-08 16:33:37
Changes

  1. comment changed to:
    In reading through update.c, it doesn't look as though updates or reverts will set the permissions of files when recreating them.  Unlike checkout's code path, update/revert doesn't call checkout.c:checkout_set_all_exe() to set the permissions of files.  At first glance, it looks like the best place to check to see if permissions need to be updated is via vfile.c:vfile_check_signature() (in the call path for revert) or in vfile.c:vfile_compare_repository_to_disk() (not used other than in checkin).
    
    To reproduce:
    
    <pre># In a test repository with `alias fs fossil`
    printf '#\!/bin/sh\necho test script perms\n' > test.sh
    chmod 755 test.sh
    fs add test.sh
    fs ci -m "Adding a test script"
    rm -f test.sh
    fs revert test.sh
    # test.sh will be mode 644</pre>
    
  2. private_contact changed to: "84f59114b7eee7088fd7e2932599c69c9ad0761b"
  3. severity changed to: "Minor"
  4. status changed to: "Open"
  5. title changed to: "update/revert don't set permissions"
  6. type changed to: "Code_Defect"