]> git.treefish.org Git - backmeupscotty.git/commitdiff
Using only one cleanup function with abort switch.
authorAlexander Schmidt <alex@treefish.org>
Wed, 30 Jul 2014 15:23:52 +0000 (17:23 +0200)
committerAlexander Schmidt <alex@treefish.org>
Wed, 30 Jul 2014 15:23:52 +0000 (17:23 +0200)
backmeupscotty
backmeupscotty-example

index 257c1927d12c0be291a98268e3f7071d01dc35a6..88a8739105309639b35be92aefb4835e225616ba 100644 (file)
@@ -111,19 +111,17 @@ function prepare {
 }
 
 function cleanup_abort {
-    scottyinfo "No cleanup_abort function was defined."
-}
-
-function _cleanup_abort {
     scottyerror "Caught exit signal! Cleaning up..."
 
-    cleanup_abort
+    cleanup ABORT
 
     if [ $(jobs -p) ]; then
        scottyerror TERMinating remaining child processes...
        kill $(jobs -p)
     fi
+
     deleteLock
+
     exit
 }
 
@@ -132,7 +130,8 @@ function prepare {
 }
 
 function cleanup_normal {
-    scottyinfo "No cleanup_normal function was defined."
+    cleanup
+    deleteLock
 }
 
 function printhelp {
@@ -167,13 +166,12 @@ function backmeupscotty {
        exit 0
     fi
 
-    trap _cleanup_abort EXIT
+    trap cleanup_abort EXIT
 
     prepare
     scottysync
-    cleanup_normal
 
-    trap deleteLock EXIT
+    trap cleanup_normal EXIT
 
     exit 0
 }
index 44d97cd4be88c38c3b634a5f1c57805c675af186..a028abecbc325a219670e6fcc1bd43cb78a2fb6f 100755 (executable)
@@ -12,14 +12,11 @@ SYNC_EXC="/gack,/gugu/*"
 
 function prepare {
     echo "prepare"
+    sleep 5
 }
 
-function cleanup_normal {
-    echo "cleanup"
-}
-
-function cleanup_abort {
-    echo "cleanup_abort"
+function cleanup {
+    [ -z "$1" ] && echo "normal cleanup" || echo "abort cleanup"
 }
 
 backmeupscotty $@