X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fui%2Fgui%2Fmain.c;h=9a7f8e1987a7d8a7def941e471df7f37bc500e79;hb=e94442a3b00c1f22952586cc26b7be60617b93e1;hp=51d225765c12796d21cdaf1aff7f8f02dc5a8eea;hpb=8065e06f47c5b34ce2d4769324e56c5f3191391c;p=pspp diff --git a/src/ui/gui/main.c b/src/ui/gui/main.c index 51d225765c..9a7f8e1987 100644 --- a/src/ui/gui/main.c +++ b/src/ui/gui/main.c @@ -1,5 +1,6 @@ /* PSPPIRE - a graphical user interface for PSPP. - Copyright (C) 2004, 2005, 2006, 2010, 2011, 2012, 2013, 2014, 2015, 2016 Free Software Foundation + Copyright (C) 2004, 2005, 2006, 2010, 2011, 2012, 2013, 2014, 2015, 2016, + 2020 Free Software Foundation This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -20,8 +21,23 @@ #include #include -#if ENABLE_RELOCATABLE && defined(__APPLE__) #include +#if ENABLE_RELOCATABLE && defined(__APPLE__) +#include +static const bool apple_relocatable = true; +#else +static const bool apple_relocatable = false; +#if HAVE_SYS_RESOURCE_H +#include +#else +/* Dummy definitions to keep the compiler happy. */ +struct rlimit +{ + int rlim_cur; + int rlim_max; +}; +#define RLIMIT_NOFILE 0 +#endif #endif #include "language/lexer/include-path.h" @@ -317,7 +333,6 @@ process_pre_start_arguments (int *argc, char ***argv) g_option_context_free (oc); } -#if ENABLE_RELOCATABLE && defined(__APPLE__) static void pspp_macos_setenv (const char * progname) { @@ -374,30 +389,29 @@ pspp_macos_setenv (const char * progname) } } } -#endif int main (int argc, char *argv[]) { - -#if ENABLE_RELOCATABLE && defined(__APPLE__) - /* remove MacOS session identifier from the command line args */ - gint newargc = 0; - for (gint i = 0; i < argc; i++) + if (apple_relocatable) { - if (!g_str_has_prefix (argv[i], "-psn_")) + /* remove MacOS session identifier from the command line args */ + gint newargc = 0; + for (gint i = 0; i < argc; i++) { - argv[newargc] = argv[i]; - newargc++; + if (!g_str_has_prefix (argv[i], "-psn_")) + { + argv[newargc] = argv[i]; + newargc++; + } } + if (argc > newargc) + { + argv[newargc] = NULL; /* glib expects NULL terminated array */ + argc = newargc; + } + pspp_macos_setenv (argv[0]); } - if (argc > newargc) - { - argv[newargc] = NULL; /* glib expects NULL terminated array */ - argc = newargc; - } - pspp_macos_setenv (argv[0]); -#endif set_program_name (argv[0]);