Revision 0f3306a56ebffc3140f662a0b87ab06b4e0363af authored by Emmanuele Bassi on 15 November 2016, 13:34:44 UTC, committed by Emmanuele Bassi on 15 November 2016, 13:34:44 UTC
Instead of copying strings around, we can box them using the g_ref_* API and add reference counting to the char array. Reference counted strings can be used with any string utility function.
1 parent 43ed42e
check-abis.sh
#!/bin/sh -e
list_leaked_symbols () {
nm -D "$1" | grep ' T ' | cut -f 3 -d ' ' | egrep -v "$2"
}
check_symbols () {
if [ "`list_leaked_symbols "$1" "$2" | wc -l`" -ne 0 ]; then
echo File "$1" possibly leaking symbols:
list_leaked_symbols "$1" "$2"
exit 1
fi
}
allowed="^_init$|^_fini$|^_ftext$|^g_"
allowed_in_libglib="${allowed}|^glib__private__$|^glib_gettext$|^glib_pgettext$|^glib_check_version$"
allowed_in_libgthread='^_init$|^_fini$|^_ftext$|^g_thread_init$|^g_thread_init_with_errorcheck_mutexes$'
check_symbols glib/.libs/libglib-2.0.so "$allowed_in_libglib"
check_symbols gthread/.libs/libgthread-2.0.so "$allowed_in_libgthread"
for file in gmodule/.libs/libgmodule-2.0.so gobject/.libs/libgobject-2.0.so gio/.libs/libgio-2.0.so; do
check_symbols "$file" "$allowed"
done
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...