diff options
author | Philip Withnall <philip.withnall@collabora.co.uk> | 2016-08-31 14:20:59 +0100 |
---|---|---|
committer | Philip Withnall <philip.withnall@collabora.co.uk> | 2016-11-23 10:50:39 +0000 |
commit | 3e7b5cbef866ef26ace0ca15a2e4ae6ed7f8a3f3 (patch) | |
tree | aa41a6e2a81a3e56eb33b819122f82a33f8bffe1 /gobject/gobject.stp.in | |
parent | a24f57b071758b01500e2b4b9c05d2a60f8280bf (diff) | |
download | glib-3e7b5cbef866ef26ace0ca15a2e4ae6ed7f8a3f3.tar.gz |
glib: Namespace global tapset variables by soname
global variables in SystemTap are shared between all SystemTap scripts;
so if scripts are loaded for two versions of GLib (for example, a stable
and a development version), those global variables will conflict.
Avoid that by including the soname’s version in the global variable
names.
https://bugzilla.gnome.org/show_bug.cgi?id=770646
Diffstat (limited to 'gobject/gobject.stp.in')
-rw-r--r-- | gobject/gobject.stp.in | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/gobject/gobject.stp.in b/gobject/gobject.stp.in index edcdb5033..67a4520af 100644 --- a/gobject/gobject.stp.in +++ b/gobject/gobject.stp.in @@ -1,18 +1,18 @@ -global gtypes -global gtypenames -global gsignalnames +global gobject_types_2_0_@LT_CURRENT@_@LT_REVISION@ +global gobject_type_names_2_0_@LT_CURRENT@_@LT_REVISION@ +global gobject_signal_names_2_0_@LT_CURRENT@_@LT_REVISION@ /* These are needed to keep track of gtype and signal names for the below * probes. */ probe process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("type__new") { - gtypes[pid(),user_string($arg1)] = $arg3; - gtypenames[pid(),$arg3] = user_string($arg1); + gobject_types_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),user_string($arg1)] = $arg3; + gobject_type_names_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),$arg3] = user_string($arg1); } probe process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so.0.@LT_CURRENT@.@LT_REVISION@").mark("signal__new") { - gsignalnames[pid(),$arg1] = user_string($arg2); + gobject_signal_names_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),$arg1] = user_string($arg2); } /** @@ -39,7 +39,7 @@ probe gobject.object_new = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so. { object = $arg1; gtype = $arg2; - type = gtypenames[pid(),$arg2]; + type = gobject_type_names_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),$arg2]; probestr = sprintf("gobject.object_new(%s) -> %p", type, object); } @@ -55,7 +55,7 @@ probe gobject.object_ref = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so. { object = $arg1; gtype = $arg2; - type = gtypenames[pid(),gtype]; + type = gobject_type_names_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),gtype]; old_refcount = $arg3; refcount = old_refcount+1; probestr = sprintf("gobject.object_ref(%p[%s]) -> %d", object, type, refcount); @@ -72,7 +72,7 @@ probe gobject.object_unref = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.s { object = $arg1; gtype = $arg2; - type = gtypenames[pid(),gtype]; + type = gobject_type_names_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),gtype]; old_refcount = $arg3; refcount = old_refcount-1; probestr = sprintf("gobject.object_unref(%p [%s]) -> %d", object, type, refcount); @@ -89,7 +89,7 @@ probe gobject.object_dispose = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0 { object = $arg1; gtype = $arg2; - type = gtypenames[pid(),$arg2]; + type = gobject_type_names_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),$arg2]; last_unref = $arg3; probestr = sprintf("gobject.object_dispose(%p[%s])", object, type); } @@ -105,7 +105,7 @@ probe gobject.object_dispose_end = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject { object = $arg1; gtype = $arg2; - type = gtypenames[pid(),$arg2]; + type = gobject_type_names_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),$arg2]; last_unref = $arg3; probestr = sprintf("gobject.object_dispose_end(%p[%s])", object, type); } @@ -120,7 +120,7 @@ probe gobject.object_finalize = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2. { object = $arg1; gtype = $arg2; - type = gtypenames[pid(),$arg2]; + type = gobject_type_names_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),$arg2]; probestr = sprintf("gobject.object_finalize(%p[%s])", object, type); } @@ -134,7 +134,7 @@ probe gobject.object_finalize_end = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobjec { object = $arg1; gtype = $arg2; - type = gtypenames[pid(),$arg2]; + type = gobject_type_names_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),$arg2]; probestr = sprintf("gobject.object_finalize_end(%p[%s])", object, type); } @@ -150,7 +150,7 @@ probe gobject.signal_new = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so. gsignal = $arg1; name = user_string($arg2); gtype = $arg3; - type = gtypenames[pid(),$arg3]; + type = gobject_type_names_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),$arg3]; probestr = sprintf("gobject.signal_new(%s, %s) -> %d", name, type, gsignal); } @@ -167,12 +167,12 @@ probe gobject.signal_emit = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2.0.so { gsignal = $arg1; detail = $arg2; - signal = gsignalnames[pid(),$arg1]; + signal = gobject_signal_names_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),$arg1]; if (detail != 0) signal = signal . "::" . gquarks[pid(), detail] object = $arg3; gtype = $arg4; - type = gtypenames[pid(),$arg4]; + type = gobject_type_names_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),$arg4]; probestr = sprintf("gobject.signal_emit(%p[%s], %s)", object, type, signal); } @@ -189,11 +189,11 @@ probe gobject.signal_emit_end = process("@ABS_GLIB_RUNTIME_LIBDIR@/libgobject-2. { gsignal = $arg1; detail = $arg2; - signal = gsignalnames[pid(),$arg1]; + signal = gobject_signal_names_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),$arg1]; if (detail != 0) signal = signal . "::" . gquarks[pid(), detail] object = $arg3; gtype = $arg4; - type = gtypenames[pid(),$arg4]; + type = gobject_type_names_2_0_@LT_CURRENT@_@LT_REVISION@[pid(),$arg4]; probestr = sprintf("gobject.signal_emit_end(%p[%s], %s)", object, type, signal); } |