Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Julia developers Gabriel Baraldi and Jameson Nash pointed out that the use of
deepcopy
can be memory unsafe, especially when used in combination with C datastructures. It appears this was the source of intermittent segfault behavior observed when calling FFTW. (Perhaps the problem was deep-copying an FFTW plan, or perhaps it was some other memory corruption.)This PR replaces all calls to
deepcopy
with custom clone functions that perform ordinarycopy
operations on mutable arrays. Hopefully resolves #65, originally reported in JuliaLang/julia#48722 .