- (as-binary-process
- (apply (function call-process-region)
- start end (car base64-external-decoder)
- nil nil nil
- (append (cdr base64-external-decoder)
- base64-external-decoder-option-to-specify-file
- (list filename))))
+ (progn
+ (as-binary-process
+ (apply (function call-process-region)
+ start end (car base64-external-decoder)
+ (null base64-external-decoder-option-to-specify-file)
+ (unless base64-external-decoder-option-to-specify-file
+ (list (current-buffer) nil))
+ nil
+ (delq nil
+ (append
+ (cdr base64-external-decoder)
+ base64-external-decoder-option-to-specify-file
+ (when base64-external-decoder-option-to-specify-file
+ (list filename))))))
+ (unless base64-external-decoder-option-to-specify-file
+ (write-region-as-binary (point-min) (point-max) filename)))