diff --git a/ocaml-omake-0.9.8.5-free-buffer.patch b/ocaml-omake-0.9.8.5-free-buffer.patch new file mode 100644 index 0000000..c81f8d0 --- /dev/null +++ b/ocaml-omake-0.9.8.5-free-buffer.patch @@ -0,0 +1,33 @@ +diff -ur omake-0.9.8.5.orig/src/clib/lm_printf.c omake-0.9.8.5/src/clib/lm_printf.c +--- omake-0.9.8.5.orig/src/clib/lm_printf.c 2007-07-15 18:55:23.000000000 +0100 ++++ omake-0.9.8.5/src/clib/lm_printf.c 2009-02-06 11:13:42.000000000 +0000 +@@ -142,12 +142,12 @@ + #endif + if(code < 0) { + if(bufp != buffer) +- free(buffer); ++ free(bufp); + failwith("ml_print_string"); + } + v_result = copy_string(bufp); + if(bufp != buffer) +- free(buffer); ++ free(bufp); + return v_result; + } + +@@ -190,12 +190,12 @@ + #endif + if(code < 0) { + if(bufp != buffer) +- free(buffer); ++ free(bufp); + failwith("ml_print_string"); + } + v_result = copy_string(bufp); + if(bufp != buffer) +- free(buffer); ++ free(bufp); + return v_result; + } + diff --git a/ocaml-omake.spec b/ocaml-omake.spec index b5075b3..11cd53c 100644 --- a/ocaml-omake.spec +++ b/ocaml-omake.spec @@ -2,7 +2,7 @@ Name: ocaml-omake Version: 0.9.8.5 -Release: 4%{?dist} +Release: 5%{?dist} Summary: OCaml build system with automated dependency analysis Group: Development/Tools @@ -13,6 +13,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Patch0: ocaml-omake-debian-stdin-stdout-fix.patch Patch1: ocaml-omake-0.9.8.5-no-sync.patch +Patch2: ocaml-omake-0.9.8.5-free-buffer.patch BuildRequires: ocaml >= 3.10.2-2 BuildRequires: ocaml-findlib-devel @@ -51,6 +52,7 @@ features many additional enhancements, including the following. %setup -q -n omake-%{version} %patch0 -p1 %patch1 -p1 +%patch2 -p1 %build @@ -86,6 +88,9 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Fri Feb 6 2009 Richard W.M. Jones - 0.9.8.5-5 +- Patch for "attempt to free a non-heap object" (Jakub Jelinek). + * Fri Dec 5 2008 Richard W.M. Jones - 0.9.8.5-4 - Rebuild for OCaml 3.11.0.