dengste / org-caldav

Caldav sync for Emacs orgmode
GNU General Public License v3.0
712 stars 105 forks source link

fix: never emit shortening ellipsis in "(setq org-caldav-previous-files ...)" #275

Closed hrehfeld closed 1 year ago

hrehfeld commented 1 year ago

with a large number of calendar-files, the unfixed code will create malformed lisp forms containing ... in the .org-caldav-sync/org-caldav-hash.el files:

(setq org-caldav-previous-files '("my-file.org" ...))

leading to this:

Debugger entered--Lisp error: (wrong-type-argument sequencep \...)
  mapconcat(identity (\...) ",")
  #<subr F616e6f6e796d6f75732d6c616d626461_anonymous_lambda_26>()
  funcall(#<subr F616e6f6e796d6f75732d6c616d626461_anonymous_lambda_26>)
  (let ((org-caldav-calendar-id '"personal") (org-caldav-files '(foo bar baz ...))) (funcall '#<subr F616e6f6e796d6f75732d6c616d626461_anonymous_lambda_26>))
  eval((let ((org-caldav-calendar-id '"personal") (org-caldav-files '(foo bar baz ...)))) (funcall '#<subr F616e6f6e796d6f75732d6c616d626461_anonymous_lambda_26>)))
  org-caldav-sync-calendar((:calendar-id "personal" :files (foo bar baz ...)))
  org-caldav-sync()
  funcall-interactively(org-caldav-sync)
  call-interactively(org-caldav-sync nil nil)
  command-execute(org-caldav-sync)

This should make it never print omit-ellipses.

jackkamm commented 1 year ago

Looks good, merged. Thanks for reporting the issue and supplying a patch.