pidgin/pidgin
Clone
Summary
Browse
Changes
Graph
Fix leak in `purple_markup_find_tag` on error
release-2.x.y
2021-09-15, Elliott Sales de Andrade
addb2327cde0
file is
Executable
Fix leak in `purple_markup_find_tag` on error
The output is set to `NULL`, but the internal data list is not freed if it happened to get something put into it.
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=35816
Testing Done:
Ran `pidgin_utils_fuzzer` on the test case in the bug report.
Reviewed at https://reviews.imfreedom.org/r/924/
#!/bin/sh
if
[
$#
-eq
0
]
;
then
echo
"Usage: `basename "
$0
"` PurpleFoo..."
echo
echo
"This script searches the *current working directory* and replaces casts"
echo
"with GObject-style type checking and casting macros."
echo
'For example, "(PurpleBuddy *)b" becomes "PURPLE_BUDDY(b)".'
exit
0
fi
for
struct
in
$*
;
do
cast
=
`
echo
$struct
|
sed
"s|[A-Z]|_\0|g"
|
tr
"a-z"
"A-Z"
|
sed
"s|^_||"
`
for
file
in
`
grep
-rl
"([[:space:]]*
$struct
[[:space:]]*\*[[:space:]]*)"
.
--include
=
*.c
--exclude
=
purple-client-bindings.c
`
;
do
sed
-i
"s|([[:space:]]*
$struct
[[:space:]]*\*[[:space:]]*)[[:space:]]*(|
$cast
(|g"
$file
sed
-i
"s|([[:space:]]*
$struct
[[:space:]]*\*[[:space:]]*)[[:space:]]*\([^(][^,);]*\)|
$cast
(\1)|g"
$file
done
done