diff --git a/ChangeLog b/ChangeLog
index db4eece6b2a16f180d4c803f16a069cf775077b5..c0b164b809a11d757ef000472142b3381bd3247f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2015-11-29  Benno Schulenberg  <bensberg@justemail.net>
+	* src/color.c (reset_multis): Evaluate correctly whether to reset
+	the multidata cache.  This fixes Savannah bug #46543.
+
 2015-11-28  Benno Schulenberg  <bensberg@justemail.net>
 	* src/nano.c (main): Allow the user full control over the values of
 	MALLOC_CHECK_ and MALLOC_PERTURB_; nano shouldn't override these.
diff --git a/src/color.c b/src/color.c
index bb6f9efff8f487ee08ea073af98749c0a6d32208..88ff3f1eef1aa2ecbd5f41a0c6cd7587402b27a3 100644
--- a/src/color.c
+++ b/src/color.c
@@ -457,7 +457,7 @@ void reset_multis(filestruct *fileptr, bool force)
 	} else if (fileptr->multidata[tmpcolor->id] == CNONE) {
 	    if (nobegin && noend)
 		continue;
-	}  else if (fileptr->multidata[tmpcolor->id] & CBEGINBEFORE && !noend
+	}  else if (fileptr->multidata[tmpcolor->id] == CBEGINBEFORE && !noend
 	  && (nobegin || endmatch.rm_eo > startmatch.rm_eo)) {
 	    reset_multis_after(fileptr, tmpcolor->id);
 	    continue;