Author: mrglavas
Date: Sat Oct 29 21:45:32 2005
New Revision: 329519
URL: http://svn.apache.org/viewcvs?rev=329519&view=rev
Log:
JIRA Issue #1110:
http://issues.apache.org/jira/browse/XERCESJ-1110
Use System.arraycopy() instead of doing inefficient loop copying. Patch thanks
to Dave Brosius.
Modified:
xerces/java/trunk/src/org/apache/xerces/impl/dtd/models/DFAContentModel.java
xerces/java/trunk/src/org/apache/xerces/impl/xs/models/XSDFACM.java
Modified:
xerces/java/trunk/src/org/apache/xerces/impl/dtd/models/DFAContentModel.java
URL:
http://svn.apache.org/viewcvs/xerces/java/trunk/src/org/apache/xerces/impl/dtd/models/DFAContentModel.java?rev=329519&r1=329518&r2=329519&view=diff
==============================================================================
---
xerces/java/trunk/src/org/apache/xerces/impl/dtd/models/DFAContentModel.java
(original)
+++
xerces/java/trunk/src/org/apache/xerces/impl/dtd/models/DFAContentModel.java
Sat Oct 29 21:45:32 2005
@@ -713,12 +713,9 @@
int[][] newTransTable = new int[newSize][];
// Copy over all of the existing content
- for (int expIndex = 0; expIndex < curArraySize;
expIndex++)
- {
- newToDo[expIndex] = statesToDo[expIndex];
- newFinalFlags[expIndex] =
fFinalStateFlags[expIndex];
- newTransTable[expIndex] = fTransTable[expIndex];
- }
+ System.arraycopy(statesToDo, 0, newToDo, 0,
curArraySize);
+ System.arraycopy(fFinalStateFlags, 0, newFinalFlags,
0, curArraySize);
+ System.arraycopy(fTransTable, 0, newTransTable, 0,
curArraySize);
// Store the new array size
curArraySize = newSize;
Modified: xerces/java/trunk/src/org/apache/xerces/impl/xs/models/XSDFACM.java
URL:
http://svn.apache.org/viewcvs/xerces/java/trunk/src/org/apache/xerces/impl/xs/models/XSDFACM.java?rev=329519&r1=329518&r2=329519&view=diff
==============================================================================
--- xerces/java/trunk/src/org/apache/xerces/impl/xs/models/XSDFACM.java
(original)
+++ xerces/java/trunk/src/org/apache/xerces/impl/xs/models/XSDFACM.java Sat Oct
29 21:45:32 2005
@@ -627,11 +627,9 @@
int[][] newTransTable = new int[newSize][];
// Copy over all of the existing content
- for (int expIndex = 0; expIndex < curArraySize;
expIndex++) {
- newToDo[expIndex] = statesToDo[expIndex];
- newFinalFlags[expIndex] =
fFinalStateFlags[expIndex];
- newTransTable[expIndex] = fTransTable[expIndex];
- }
+ System.arraycopy(statesToDo, 0, newToDo, 0,
curArraySize);
+ System.arraycopy(fFinalStateFlags, 0, newFinalFlags,
0, curArraySize);
+ System.arraycopy(fTransTable, 0, newTransTable, 0,
curArraySize);
// Store the new array size
curArraySize = newSize;
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]