From d5816d44f337c6eb82d937959f971fe45a5eec2a Mon Sep 17 00:00:00 2001
From: James R <justsomejames2@gmail.com>
Date: Sat, 7 Dec 2019 17:03:46 -0800
Subject: [PATCH] Use a third variable of XOR nonsense

---
 src/strcasestr.c | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/src/strcasestr.c b/src/strcasestr.c
index 86c7ec5b0b..4ff778bf14 100644
--- a/src/strcasestr.c
+++ b/src/strcasestr.c
@@ -23,13 +23,6 @@ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
 
-#define SWAP( a, b ) \
-(\
-		(a) ^= (b),\
-		(b) ^= (a),\
-		(a) ^= (b)\
-)
-
 static inline int
 trycmp (char **pp, char *cp,
 		const char *q, size_t qn)
@@ -45,8 +38,16 @@ trycmp (char **pp, char *cp,
 static inline void
 swapp (char ***ppap, char ***ppbp, char **cpap, char **cpbp)
 {
-	SWAP(*(intptr_t *)ppap, *(intptr_t *)ppbp);
-	SWAP(*(intptr_t *)cpap, *(intptr_t *)cpbp);
+	char **pp;
+	char  *p;
+
+	pp    = *ppap;
+	*ppap = *ppbp;
+	*ppbp =  pp;
+
+	p     = *cpap;
+	*cpap = *cpbp;
+	*cpbp =   p;
 }
 
 char *
-- 
GitLab