[
https://issues.apache.org/jira/browse/LUCENENET-443?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13105288#comment-13105288
]
michael herndon commented on LUCENENET-443:
-------------------------------------------
Is there a good reason to bump IsClosed's access to public ? The Close()
method is being used as Dispose() would be.
Most likely classes that implement Close because of the Closable interface will
implement IDisposable instead in a future version. The shortest path to fixing
the bug would be to amend the finalizer.
> SpellChecker finaliser calls close regardless of if closed already
> ------------------------------------------------------------------
>
> Key: LUCENENET-443
> URL: https://issues.apache.org/jira/browse/LUCENENET-443
> Project: Lucene.Net
> Issue Type: Improvement
> Components: Lucene.Net Contrib
> Affects Versions: Lucene.Net 2.9.2
> Reporter: Stuart Robinson
> Labels: lucene, spellcheck, spellchecker
>
> The SpellChecker Class currently has no publicly visible way of accessing the
> closed field. It also calls close in the finaliser killing the process it is
> in upon GC as this can throw an exceptin. I propose two changes:
> Change the already existing method "IsClosed()" to public:
> public bool IsClosed()
> {
> return closed;
> }
> and add a check on this in the finaliser:
> ~SpellChecker()
> {
> if (!IsClosed())
> this.Close();
> }
> Ideally this class should implement IDisposable but I think this would be a
> bigger job than this two line change.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira