From a3a42c27edf7a388780bd014755c0a25473a456c Mon Sep 17 00:00:00 2001
From: Khaled Noaman <knoaman@apache.org>
Date: Tue, 15 Oct 2002 18:56:02 +0000
Subject: [PATCH] [Bug 13604] while loop never terminates.

git-svn-id: https://svn.apache.org/repos/asf/xerces/c/trunk@174280 13f79535-47bb-0310-9956-ffa450edef68
---
 src/xercesc/util/regx/RegularExpression.cpp | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/xercesc/util/regx/RegularExpression.cpp b/src/xercesc/util/regx/RegularExpression.cpp
index 1d2f2f7a2..f8f5123e7 100644
--- a/src/xercesc/util/regx/RegularExpression.cpp
+++ b/src/xercesc/util/regx/RegularExpression.cpp
@@ -56,6 +56,9 @@
 
 /*
  * $Log$
+ * Revision 1.3  2002/10/15 18:56:02  knoaman
+ * [Bug 13604] while loop never terminates.
+ *
  * Revision 1.2  2002/03/18 19:29:53  knoaman
  * Change constant names to eliminate possible conflict with user defined ones.
  *
@@ -693,13 +696,13 @@ int RegularExpression::match(Context* const context, const Op* const operations
 		case Op::O_ANCHOR:
 			if (!matchAnchor(context, tmpOp->getData(), offset))
 				return -1;
-			tmpOp->getNextOp();
+			tmpOp = tmpOp->getNextOp();
 			break;
 		case Op::O_BACKREFERENCE:
 			if (!matchBackReference(context, tmpOp->getData(), offset,
 									direction, ignoreCase))
 				return -1;
-			tmpOp->getNextOp();
+			tmpOp = tmpOp->getNextOp();
 			break;
 		case Op::O_STRING:
 			if (!matchString(context, tmpOp->getLiteral(), offset, direction,
-- 
GitLab