sub daemonize { # try to daemonize if (success) { return 1 } else { return errstr } } #### $isdaemon = daemonize() if ($isdaemon ne "1") { print "error: $isdaemon"; } #### if (! daemonize) { report error } #### open($fh, file) or die "$!"; #### use Scalar::Util; sub daemonize { # try to daemonize if (success) { return 1 } else { return dualvar 0, errstr } } #### $isdaemon = daemonize; if ($isdaemon == 0) { print "error: $isdaemon"; }