aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Gorbachev <d.g.gorbachev@gmail.com>2010-11-22 21:18:15 +0000
committerJoseph Myers <jsm28@gcc.gnu.org>2010-11-22 21:18:15 +0000
commitde9a793edf281596d955cf8d42a229d82d22ab27 (patch)
treeca7690ade68532db217ac84a27e4fb2d67fbfac7
parent2d171cfe1fc12570a5b76a1c436f4c1de39ba742 (diff)
downloadgcc-de9a793edf281596d955cf8d42a229d82d22ab27.zip
gcc-de9a793edf281596d955cf8d42a229d82d22ab27.tar.gz
gcc-de9a793edf281596d955cf8d42a229d82d22ab27.tar.bz2
re PR driver/43335 (Driver crashes dereferencing a null pointer if it can't find lto-wrapper)
2010-11-22 Dmitry Gorbachev <d.g.gorbachev@gmail.com> PR driver/43335 * gcc.c (main): Don't crash when lto-wrapper program is not found. From-SVN: r167052
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/gcc.c6
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index a125656..43f4696 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2010-11-22 Dmitry Gorbachev <d.g.gorbachev@gmail.com>
+
+ PR driver/43335
+ * gcc.c (main): Don't crash when lto-wrapper program is not found.
+
2010-11-22 Joern Rennecke <amylaar@spamcop.net>
PR target/46608
diff --git a/gcc/gcc.c b/gcc/gcc.c
index fb98171..99d4f48 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -6074,6 +6074,7 @@ main (int argc, char **argv)
int num_linker_inputs = 0;
char *explicit_link_files;
char *specs_file;
+ char *lto_wrapper_file;
const char *p;
struct user_specs *uptr;
char **old_argv = argv;
@@ -6412,9 +6413,10 @@ main (int argc, char **argv)
/* Set up to remember the pathname of the lto wrapper. */
- lto_wrapper_spec = find_a_file (&exec_prefixes, "lto-wrapper", X_OK, false);
- if (lto_wrapper_spec)
+ lto_wrapper_file = find_a_file (&exec_prefixes, "lto-wrapper", X_OK, false);
+ if (lto_wrapper_file)
{
+ lto_wrapper_spec = lto_wrapper_file;
obstack_init (&collect_obstack);
obstack_grow (&collect_obstack, "COLLECT_LTO_WRAPPER=",
sizeof ("COLLECT_LTO_WRAPPER=") - 1);