all: Add a custom indentation rule for 'mcron-error'.

* .dir-locals.el: Define a custom indentation rule for 'mcron-error'.
* scm/mcron/crontab.scm: Use it.
* scm/mcron/job-specifier.scm: Likewise.
* scm/mcron/main.scm: Likewise.
* scm/mcron/vixie-specification.scm: Likewise.
This commit is contained in:
Mathieu Lirzin 2015-09-07 00:00:31 +02:00
commit f2c56d355f
5 changed files with 25 additions and 33 deletions

View file

@ -4,4 +4,7 @@
(tab-width . 8)))
(c-mode . ((c-file-style . "gnu")
(indent-tabs-mode . nil)))
(scheme-mode . ((indent-tabs-mode . nil))))
(scheme-mode
.
((indent-tabs-mode . nil)
(eval . (put 'mcron-error 'scheme-indent-function 1)))))

View file

@ -221,8 +221,8 @@
;; The user is being silly. The message here is identical to the one Vixie cron
;; used to put out, for total compatibility.
(else
(mcron-error 15 "usage error: file name must be specified for replace.")))
(else (mcron-error 15
"usage error: file name must be specified for replace.")))
)) ;; End of file-level let-scopes.

View file

@ -233,10 +233,9 @@
((list? action) (lambda () (primitive-eval action)))
((string? action) (lambda () (system action)))
(else
(throw 'mcron-error
2
"job: invalid second argument (action; should be lambda"
" function, string or list)"))))
(throw 'mcron-error 2
"job: invalid second argument (action; should be lambda "
"function, string or list)"))))
(time-proc
(cond ((procedure? time-proc) time-proc)
@ -244,10 +243,9 @@
((list? time-proc) (lambda (current-time)
(primitive-eval time-proc)))
(else
(throw 'mcron-error
3
"job: invalid first argument (next-time-function; should ")
"be function, string or list)")))
(throw 'mcron-error 3
"job: invalid first argument (next-time-function; "
"should be function, string or list)"))))
(displayable
(cond ((not (null? displayable)) (car displayable))
((procedure? action) "Lambda function")

View file

@ -217,8 +217,7 @@ $XDG_CONFIG_HOME is not defined uses ~/.config/cron instead)."
"/cron")))
(when (eq? 2 errors)
(mcron-error 13
"Cannot read files in your ~/.config/cron (or ~/.cron) "
"directory."))))
"Cannot read files in your ~/.config/cron (or ~/.cron) directory."))))
(define (valid-user user-name)
"Check that USER-NAME is in the passwd database (it may happen that a user
@ -248,9 +247,8 @@ operation. The permissions on the /var/cron/tabs directory enforce this."
"/"
file-name)))))))
(lambda (key . args)
(mcron-error
4
"You do not have permission to access the system crontabs."))))
(mcron-error 4
"You do not have permission to access the system crontabs."))))
(define (cron-file-descriptors)
"Establish a socket to listen for updates from a crontab program, and return
@ -265,9 +263,7 @@ crontab. This requires that command-type is 'cron."
(list sock)))
(lambda (key . args)
(delete-file config-pid-file)
(mcron-error 1
"Cannot bind to UNIX socket "
config-socket-file)))
(mcron-error 1 "Cannot bind to UNIX socket " config-socket-file)))
'()))
(define (process-update-request fdes-list)
@ -319,15 +315,12 @@ comes in on the above socket."
(when (eq? command-type 'cron)
(unless (eqv? (getuid) 0)
(mcron-error 16
"This program must be run by the root user (and should "
"have been installed as such)."))
"This program must be run by the root user (and should have been "
"installed as such)."))
(when (access? config-pid-file F_OK)
(mcron-error 1
"A cron daemon is already running.\n"
" (If you are sure this is not true, remove the file\n"
" "
config-pid-file
".)"))
"A cron daemon is already running.\n (If you are sure this is not"
" true, remove the file\n " config-pid-file ".)"))
(unless (option-ref options 'schedule #f)
(with-output-to-file config-pid-file noop))
(setenv "MAILTO" #f)

View file

@ -162,13 +162,11 @@
(parse-vixie-environment line)
(parse-vixie-line line)))
(lambda (key exit-code . msg)
(throw
'mcron-error
exit-code
(apply string-append
(number->string report-line)
": "
msg)))))))))
(throw 'mcron-error exit-code
(apply string-append
(number->string report-line)
": "
msg)))))))))