]> git.cworth.org Git - sup/commitdiff
Merge commit 'c45207/shutdown-hook' into next
authorWilliam Morgan <wmorgan-sup@masanjin.net>
Sun, 16 Nov 2008 00:37:22 +0000 (16:37 -0800)
committerWilliam Morgan <wmorgan-sup@masanjin.net>
Sun, 16 Nov 2008 00:37:22 +0000 (16:37 -0800)
1  2 
bin/sup

diff --combined bin/sup
index b5b41ca93f6f1848a7f07dbe79d274f7f933efff,ddbad2edc65355b844426c182fea793f2e8c62a9..152c42c06aa3329a4c51b814d1b03e057bb68e03
+++ b/bin/sup
@@@ -45,6 -45,14 +45,14 @@@ No variables
  No return value.
  EOS
  
+ Redwood::HookManager.register "shutdown", <<EOS 
+ Executes when sup is shutting down. May be run when sup is crashing,
+ so don\'t do anything too important. Run before the label, contacts,
+ and people are saved.
+ No variables.
+ No return value.
+ EOS
  if $opts[:list_hooks]
    Redwood::HookManager.print_hooks
    exit
@@@ -57,7 -65,7 +65,7 @@@ module Redwoo
  global_keymap = Keymap.new do |k|
    k.add :quit_ask, "Quit Sup, but ask first", 'q'
    k.add :quit_now, "Quit Sup immediately", 'Q'
 -  k.add :help, "Show help", 'H', '?'
 +  k.add :help, "Show help", '?'
    k.add :roll_buffers, "Switch to next buffer", 'b'
  #  k.add :roll_buffers_backwards, "Switch to previous buffer", 'B'
    k.add :kill_buffer, "Kill the current buffer", 'x'
@@@ -174,11 -182,6 +182,11 @@@ begi
      PollManager.start
      SuicideManager.start
      Index.start_lock_update_thread
 +    Redwood::reporting_thread("be friendly") do
 +      id = BufferManager.say "Welcome to Sup! Press '?' at any point for help."
 +      sleep 10
 +      BufferManager.clear id
 +    end
    end
  
    if $opts[:search]
@@@ -276,6 -279,8 +284,8 @@@ ensur
      Index.stop_lock_update_thread
    end
  
+   HookManager.run "shutdown"
    Redwood::finish
    stop_cursing
    Redwood::log "stopped cursing"