1. 29 Feb, 2020 1 commit
    • v9v's avatar
      Fix for multiple users on the same machine · 1531b377
      v9v authored
      The issue and fix are described in https://github.com/tmux-plugins/tmux-continuum/issues/16 .
      
      Without this change, tmux-continuum works only for one tmux server on the machine. In a multi-user environment (e.g. a shared server), when multiple users are running their own tmux servers, this means that tmux-continuum works only for one of the users.
      
      This change enables tmux-continuum for one tmux server per user instead of one tmux server per machine.
      1531b377
  2. 13 Jul, 2019 3 commits
  3. 09 Jul, 2019 1 commit
    • v9v's avatar
      Fix race condition in saving lock · 39174046
      v9v authored
      Two consecutive calls to "date +%s" can return different values. Call "date" only once and reuse the result.
      39174046
  4. 08 Jul, 2019 1 commit
    • v9v's avatar
      Replace flock with mkdir · 800488ca
      v9v authored
      flock is not supported on MacOS.
      
      `mkdir` locks have a drawback: they are not cleaned up automatically. If the lock owner crashed before cleaning up the lock, the directory will stay in the filesystem and the lock will be never acquired by someone else. To avoid that, we create temporary locks (the lockdir name changes every 100 seconds). We grab two lock (N and N+1) to avoid the case where process A grabs lock N and process B grabs lock N+1 and both enter the critical section.
      800488ca
  5. 05 Jul, 2019 1 commit
    • v9v's avatar
      Handle missing flock · 10e612d7
      v9v authored
      If flock is not installed, fall back to the thread-unsafe version.
      10e612d7
  6. 04 Jul, 2019 1 commit
    • v9v's avatar
      Fix race condition in autosave · 721890d2
      v9v authored
      Fixes the case where multiple tmux sessions call auto-save at the same time, which occasionally results in multiple instances of save_all() running in parallel and causing issues like #3 and tmux-plugins/tmux-resurrect#294.
      
      The sequence in main() is:
      1. Check enough_time_since_last_run_passed
      2. Save
      3. Update last_save_timestamp.
      
      The race here is:
      * process A finishes step 1 and is busy with step 2. The timestamp is not updated yet.
      * process B comes to step 1, sees the old timestamp and proceeds to step 2, too.
      721890d2
  7. 19 Apr, 2019 1 commit
  8. 04 Mar, 2019 1 commit
  9. 02 Mar, 2019 1 commit
  10. 07 Feb, 2019 1 commit
  11. 19 Oct, 2017 1 commit
  12. 14 Oct, 2017 1 commit
  13. 29 Sep, 2017 2 commits
  14. 23 Jan, 2016 2 commits
  15. 09 Jan, 2016 12 commits
  16. 26 Dec, 2015 1 commit
  17. 29 Nov, 2015 1 commit
  18. 08 Oct, 2015 4 commits
  19. 10 Aug, 2015 1 commit
  20. 14 Mar, 2015 2 commits
    • Bruno Sutic's avatar
      v3.1.0 · 46e0e002
      Bruno Sutic authored
      46e0e002
    • Bruno Sutic's avatar
      Bugfix: do not count tmux source-file as tmux process · d6ac017d
      Bruno Sutic authored
      Do not count `tmux source-file .tmux.conf` as a tmux process when checking if
      other tmux server is running.
      
      Previously, this caused interpolation command not to be inserted into
      `status-right` because `tmux source-file` was falsely detected as another tmux
      server.
      d6ac017d
  21. 20 Feb, 2015 1 commit