2012-11-28 22:22:46 +01:00
|
|
|
---
|
|
|
|
src/_clisp.c | 11 +++++++++++
|
|
|
|
1 file changed, 11 insertions(+)
|
|
|
|
|
|
|
|
--- a/src/_clisp.c
|
|
|
|
+++ b/src/_clisp.c
|
2016-11-29 14:49:37 +01:00
|
|
|
@@ -48,6 +48,11 @@
|
2010-07-19 20:27:20 +02:00
|
|
|
/* Declare stderr, perror(). */
|
2007-01-16 00:07:22 +01:00
|
|
|
# include <stdio.h>
|
|
|
|
|
|
|
|
+#if defined(HAS_PERSONALITY) && (HAS_PERSONALITY > 0)
|
|
|
|
+/* Declare syscall, PER_LINUX32. */
|
|
|
|
+# include <sys/personality.h>
|
|
|
|
+#endif
|
|
|
|
+
|
|
|
|
#if defined(WIN32_NATIVE)
|
|
|
|
# include <windows.h>
|
2010-07-19 20:27:20 +02:00
|
|
|
int shell_quote (char * dest, const char * source);
|
2016-11-29 14:49:37 +01:00
|
|
|
@@ -429,6 +434,12 @@ int main (int argc, char* argv[])
|
2007-01-16 00:07:22 +01:00
|
|
|
}
|
2016-11-29 14:49:37 +01:00
|
|
|
#undef W32ERR
|
2007-01-16 00:07:22 +01:00
|
|
|
#else
|
|
|
|
+#if defined(HAS_PERSONALITY) && (HAS_PERSONALITY > 0)
|
|
|
|
+ if (personality(PER_LINUX32)) {
|
|
|
|
+ perror(program_name);
|
|
|
|
+ return 1;
|
|
|
|
+ }
|
2016-11-29 14:49:37 +01:00
|
|
|
+#endif
|
2007-01-16 00:07:22 +01:00
|
|
|
execv(executable,new_argv);
|
|
|
|
{ /* execv() returns only if there was an error. */
|
|
|
|
int saved_errno = errno;
|