diff --git a/libfprint/nbis/glib-memory.cocci b/libfprint/nbis/glib-memory.cocci new file mode 100644 index 0000000..c2ac323 --- /dev/null +++ b/libfprint/nbis/glib-memory.cocci @@ -0,0 +1,29 @@ +@ free @ +expression ptr; +@@ +- free(ptr); ++ g_free(ptr); +@ malloc @ +type ptr_type; +expression ptr; +expression size; +@@ +- ptr = (ptr_type) malloc(size); ++ ptr = (ptr_type) g_malloc(size); + ... +( +- if (ptr == (ptr_type) NULL) { ... } +| +) +@ realloc @ +type ptr_type; +expression ptr; +expression size; +@@ +- ptr = (ptr_type) realloc(ptr, size); ++ ptr = (ptr_type) g_realloc(ptr, size); + ... +( +- if (ptr == (ptr_type) NULL) { ... } +| +) diff --git a/libfprint/nbis/update-from-nbis.sh b/libfprint/nbis/update-from-nbis.sh index bd3a59b..4e243a2 100755 --- a/libfprint/nbis/update-from-nbis.sh +++ b/libfprint/nbis/update-from-nbis.sh @@ -179,3 +179,5 @@ sed -i 's/[ \t]*$//' `find -name "*.[ch]"` # Remove usebsd.h sed -i '/usebsd.h/d' `find -name "*.[ch]"` +# Use GLib memory management +spatch --sp-file glib-memory.cocci --dir . --in-place \ No newline at end of file