You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucenenet.apache.org by ni...@apache.org on 2016/10/23 13:02:22 UTC

[36/50] [abbrv] lucenenet git commit: Fixed bug in Core.Search.FieldCacheImpl where value to be cached was being overwritten by TryGetValue.

Fixed bug in Core.Search.FieldCacheImpl where value to be cached was being overwritten by TryGetValue.


Project: http://git-wip-us.apache.org/repos/asf/lucenenet/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucenenet/commit/3979bbf7
Tree: http://git-wip-us.apache.org/repos/asf/lucenenet/tree/3979bbf7
Diff: http://git-wip-us.apache.org/repos/asf/lucenenet/diff/3979bbf7

Branch: refs/heads/master
Commit: 3979bbf70c1ce238529b96010453e5726e2a214c
Parents: 92de8d7
Author: Shad Storhaug <sh...@shadstorhaug.com>
Authored: Fri Oct 21 01:57:45 2016 +0700
Committer: Shad Storhaug <sh...@shadstorhaug.com>
Committed: Sun Oct 23 19:36:45 2016 +0700

----------------------------------------------------------------------
 src/Lucene.Net.Core/Search/FieldCacheImpl.cs | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucenenet/blob/3979bbf7/src/Lucene.Net.Core/Search/FieldCacheImpl.cs
----------------------------------------------------------------------
diff --git a/src/Lucene.Net.Core/Search/FieldCacheImpl.cs b/src/Lucene.Net.Core/Search/FieldCacheImpl.cs
index 2eb716e..e38c16b 100644
--- a/src/Lucene.Net.Core/Search/FieldCacheImpl.cs
+++ b/src/Lucene.Net.Core/Search/FieldCacheImpl.cs
@@ -239,7 +239,12 @@ namespace Lucene.Net.Search
                         ReaderCache[readerKey] = innerCache;
                         Wrapper.InitReader(reader);
                     }
-                    if (!innerCache.TryGetValue(key, out value))
+                    // LUCENENET NOTE: We declare a temp variable here so we 
+                    // don't overwrite value variable with the null
+                    // that will result when this if block succeeds; otherwise
+                    // we won't have a value to put in the cache.
+                    object temp;
+                    if (!innerCache.TryGetValue(key, out temp))
                     {
                         innerCache[key] = value;
                     }