diff --git a/elisp/binary.template b/elisp/binary.template index 80078fd3..48ef800c 100644 --- a/elisp/binary.template +++ b/elisp/binary.template @@ -17,12 +17,14 @@ #include "elisp/binary.h" int PHST_RULES_ELISP_MAIN(int argc, phst_rules_elisp::NativeChar** argv) { - std::vector args = { + using phst_rules_elisp::NativeString; + using phst_rules_elisp::RunBinary; + std::vector args = { [[args]], PHST_RULES_ELISP_NATIVE_LITERAL("--") }; args.insert(args.end(), argv, argv + argc); - return phst_rules_elisp::RunBinary(argv[0], args); + return RunBinary(argc == 0 ? NativeString() : argv[0], args); } // Local Variables: diff --git a/emacs/driver.template b/emacs/driver.template index c91c26c3..c95ac0ac 100644 --- a/emacs/driver.template +++ b/emacs/driver.template @@ -17,12 +17,14 @@ #include "elisp/emacs.h" int PHST_RULES_ELISP_MAIN(int argc, phst_rules_elisp::NativeChar** argv) { - std::vector args = { + using phst_rules_elisp::NativeString; + using phst_rules_elisp::RunEmacs; + std::vector args = { [[args]], PHST_RULES_ELISP_NATIVE_LITERAL("--") }; args.insert(args.end(), argv, argv + argc); - return phst_rules_elisp::RunEmacs(argv[0], args); + return RunEmacs(argc == 0 ? NativeString() : argv[0], args); } // Local Variables: