then
     rm -rf $isomountdir
   fi
-  echo "-E- Unable to create the following directories: "
-  echo "    $datadir $imagedir $isomountdir $tmpdir"
-  exit -1
+  err "Unable to create the following directories:
+  $datadir $imagedir $isomountdir $tmpdir"
 fi
 
 echo "-> Creating the iso image in $isoimage"
-dd if=/dev/null of=$isoimage bs=1M count=0 seek=4440
+dd of=$isoimage bs=1M count=0 seek=4440
+
+[ $? != 0 ] && err "dd failed to create $isoimage"
+
 mke2fs -b 2048 -F $isoimage
+
 if [ $? != 0 ]
 then
   rm -rf $isomountdir $isoimage
-  echo "-E- Unable to create the iso image: $isoimage"
-  exit -1
+  err "Unable to create the iso image: $isoimage"
 fi
 
 echo "-> Mounting the iso image"
 if [ $? != 0 ]
 then
   rm -rf $isomountdir $isoimage
-  echo "-E- Unable to mount the iso image: $isoimage -> $isomountdir"
-  exit -1
+  err "Unable to mount the iso image: $isoimage -> $isomountdir"
 fi
 
 echo "-> Directories being backedup and excluded:"
 then
   umount $isomountdir
   rm -rf $isomountdir $isoimage
-  echo "-E- Unable to rsync to pack the image"
-  exit -1
+  err "Unable to rsync to pack the image"
 fi
 
 echo "-> Copying over database and status file"
 cp $statusfile $backupdb $restorescript $isomountdir
-if [ $? != 0 ]
-then
-  echo "-E- Unable to copy the database and status file"
-  exit -1
-fi
+
+[ $? != 0 ] && err "Unable to copy the database and status file"
 
 echo "-> Unmounting image"
 umount $isomountdir
-if [ $? != 0 ]
-then
-  echo "-E- Unable to unmount the iso dir: $isomountdir"
-  exit -1
-fi
+
+[ $? != 0 ] && err "Unable to unmount the iso dir: $isomountdir"
 
 echo "-> Calculating md5sum for image"
 md5sum $isoimage | awk '{print$1}' > $isoimage.md5sum
-if [ $? != 0 ]
-then
-  echo "-E- Unable to calculatethe md5sum for this image: $isoimage"
-  exit -1
-fi
+
+[ $? != 0 ] && err "Unable to calculate the md5sum for this image: $isoimage"
 
 cat $statusfile | mailx -s "DVD image available to burn - $today" $mailto