nixpkgs/pkgs/development/libraries/libexttextcat/memory-leaks.patch
2012-08-31 12:03:25 +04:00

37 lines
1.1 KiB
Diff

Combined upstream commits 980592386f23db8b0dc84c434805cb167d0cc091 and
5ef4ad86ec934282cba891922ec2d13784da3354.
diff -u b/src/textcat.c b/src/textcat.c
--- b/src/textcat.c
+++ b/src/textcat.c
@@ -212,8 +212,6 @@
sizeof(char) * (tmp_size + 1));
if (tmp == NULL)
{
- free(finger_print_file_name);
- finger_print_file_name_size = 0;
goto BAILOUT;
}
else
@@ -226,10 +224,7 @@
strcat(finger_print_file_name, segment[0]);
if (fp_Read(h->fprint[h->size], finger_print_file_name, 400) == 0)
- {
- textcat_Done(h);
goto BAILOUT;
- }
h->fprint_disable[h->size] = 0xF0; /* 0xF0 is the code for enabled
languages, 0x0F is for disabled
*/
@@ -242,9 +237,10 @@
return h;
BAILOUT:
+ free(finger_print_file_name);
fclose(fp);
+ textcat_Done(h);
return NULL;
-
}
extern candidate_t *textcat_GetClassifyFullOutput(void *handle)