]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
runtime: Use argv[0] to get executable name for backtrace.
authorIan Lance Taylor <ian@gcc.gnu.org>
Fri, 5 Oct 2012 13:44:40 +0000 (13:44 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Fri, 5 Oct 2012 13:44:40 +0000 (13:44 +0000)
From-SVN: r192123

libgo/runtime/go-caller.c
libgo/runtime/runtime.c
libgo/runtime/runtime.h

index 8d8fe4c879762f4b3f814de5452c88190c50081d..843adf6f00dce03fb3fd216de7344337a282f622 100644 (file)
@@ -98,7 +98,12 @@ __go_get_backtrace_state ()
 {
   runtime_lock (&back_state_lock);
   if (back_state == NULL)
-    back_state = backtrace_create_state (NULL, 1, error_callback, NULL);
+    {
+      const char *filename;
+
+      filename = (const char *) runtime_progname ();
+      back_state = backtrace_create_state (filename, 1, error_callback, NULL);
+    }
   runtime_unlock (&back_state_lock);
   return back_state;
 }
index e0a7925aed1157758d0e14760817be6a36e6da36..86115965734ab9f981dc55503b692d3a1a776ca9 100644 (file)
@@ -117,6 +117,12 @@ runtime_args(int32 c, byte **v)
                runtime_sysargs(c, v);
 }
 
+byte*
+runtime_progname()
+{
+  return argc == 0 ? nil : argv[0];
+}
+
 void
 runtime_goargs(void)
 {
index f96d740fb1cee69cf5f2ce7beefca8d979a156ed..74050da9e98c1e6c3d27d711cfb2a570541dc41d 100644 (file)
@@ -520,5 +520,6 @@ extern uintptr runtime_stacks_sys;
 struct backtrace_state;
 extern struct backtrace_state *__go_get_backtrace_state(void);
 extern _Bool __go_file_line(uintptr, String*, String*, int *);
+extern byte* runtime_progname();
 
 int32 getproccount(void);