summaryrefslogtreecommitdiff
path: root/gdk/gdkprofiler.c
diff options
context:
space:
mode:
authorChristian Hergert <chergert@redhat.com>2023-02-21 14:30:58 -0800
committerChristian Hergert <chergert@redhat.com>2023-02-21 14:30:58 -0800
commitdf80f432f0f9cdeb161b01bb5abd5aac4743509a (patch)
tree95e514e0a1a1fec358f5808c1d6136403180fe8c /gdk/gdkprofiler.c
parent378f1421f0a290d753eea672fb49a2545c3788c8 (diff)
downloadgtk+-df80f432f0f9cdeb161b01bb5abd5aac4743509a.tar.gz
Diffstat (limited to 'gdk/gdkprofiler.c')
-rw-r--r--gdk/gdkprofiler.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/gdk/gdkprofiler.c b/gdk/gdkprofiler.c
index b51cd7eb37..015fd9957d 100644
--- a/gdk/gdkprofiler.c
+++ b/gdk/gdkprofiler.c
@@ -32,6 +32,9 @@
#include "gdkversionmacros.h"
#include "gdkframeclockprivate.h"
+#ifdef HAVE_SYSPROF
+# include "backtrace-helper.h"
+#endif
gboolean
gdk_profiler_is_running (void)
@@ -160,3 +163,19 @@ void
sysprof_collector_set_counters (&id, &value, 1);
#endif
}
+
+void
+(gdk_profiler_add_stacktrace) (void)
+{
+#ifdef HAVE_SYSPROF
+ static gsize did_init;
+
+ if (!did_init)
+ {
+ did_init = TRUE;
+ backtrace_init ();
+ }
+
+ sysprof_collector_sample (backtrace_func, NULL);
+#endif
+}