gnu: openbabel: Fix crash when opening NWChem output files.
* gnu/packages/patches/openbabel-fix-crash-on-nwchem-output.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/chemistry.scm (openbabel)[source]: Use it.
This commit is contained in:
parent
889e7fab3c
commit
eb5ece73a8
|
@ -979,6 +979,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/ocaml-graph-honor-source-date-epoch.patch \
|
%D%/packages/patches/ocaml-graph-honor-source-date-epoch.patch \
|
||||||
%D%/packages/patches/omake-fix-non-determinism.patch \
|
%D%/packages/patches/omake-fix-non-determinism.patch \
|
||||||
%D%/packages/patches/ola-readdir-r.patch \
|
%D%/packages/patches/ola-readdir-r.patch \
|
||||||
|
%D%/packages/patches/openbabel-fix-crash-on-nwchem-output.patch \
|
||||||
%D%/packages/patches/opencascade-oce-glibc-2.26.patch \
|
%D%/packages/patches/opencascade-oce-glibc-2.26.patch \
|
||||||
%D%/packages/patches/openblas-fix-tests-i686.patch \
|
%D%/packages/patches/openblas-fix-tests-i686.patch \
|
||||||
%D%/packages/patches/openexr-missing-samples.patch \
|
%D%/packages/patches/openexr-missing-samples.patch \
|
||||||
|
|
|
@ -213,7 +213,9 @@ NumPy < 1.9.")
|
||||||
version "/" name "-" version ".tar.gz"))
|
version "/" name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1z3d6xm70dpfikhwdnbzc66j2l49vq105ch041wivrfz5ic3ch90"))))
|
"1z3d6xm70dpfikhwdnbzc66j2l49vq105ch041wivrfz5ic3ch90"))
|
||||||
|
(patches
|
||||||
|
(search-patches "openbabel-fix-crash-on-nwchem-output.patch"))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:configure-flags
|
`(#:configure-flags
|
||||||
|
|
|
@ -0,0 +1,34 @@
|
||||||
|
From 52cea818bf68f8a2d3c48d55d00c2f8b7da25e4c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Daniel Hogan <daniel.hogan@usask.ca>
|
||||||
|
Date: Tue, 28 Mar 2017 22:21:18 -0600
|
||||||
|
Subject: [PATCH] Remove delete statement.
|
||||||
|
|
||||||
|
When from_scratch is true, coordinates is not allocated. A separate if
|
||||||
|
statement was added to handle the case when from_scratch is true that
|
||||||
|
does not try to free coordinates.
|
||||||
|
---
|
||||||
|
src/formats/nwchemformat.cpp | 9 ++++++---
|
||||||
|
1 file changed, 6 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/formats/nwchemformat.cpp b/src/formats/nwchemformat.cpp
|
||||||
|
index 6f625ad5b..79298555f 100644
|
||||||
|
--- a/src/formats/nwchemformat.cpp
|
||||||
|
+++ b/src/formats/nwchemformat.cpp
|
||||||
|
@@ -232,11 +232,14 @@ static const char* OPTIMIZATION_END_PATTERN = " Optimization converged";
|
||||||
|
break;
|
||||||
|
tokenize(vs,buffer);
|
||||||
|
}
|
||||||
|
- if ((from_scratch)||(i != natoms))
|
||||||
|
- {
|
||||||
|
+ if (from_scratch)
|
||||||
|
+ {
|
||||||
|
+ return;
|
||||||
|
+ }
|
||||||
|
+ if (i != natoms) {
|
||||||
|
delete[] coordinates;
|
||||||
|
return;
|
||||||
|
- }
|
||||||
|
+ }
|
||||||
|
molecule->AddConformer(coordinates);
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue