diff --git a/src/xercesc/framework/psvi/PSVIAttributeList.hpp b/src/xercesc/framework/psvi/PSVIAttributeList.hpp
index e61487647e95a6c3089a80b565de8f0dca4e0dba..c69c7c0ea7e10848a58de91c319ebe94a2816020 100644
--- a/src/xercesc/framework/psvi/PSVIAttributeList.hpp
+++ b/src/xercesc/framework/psvi/PSVIAttributeList.hpp
@@ -56,6 +56,9 @@
 
 /*
  * $Log$
+ * Revision 1.4  2003/12/02 16:21:41  neilg
+ * fix for ArrayIndexOutOfBoundsException in PSVIAttributeList; thanks to Pete Lloyd
+ *
  * Revision 1.3  2003/11/26 16:20:37  neilg
  * more complete implementation of PSVIAttributeList; remove some problematic const-ness
  *
@@ -210,7 +213,7 @@ inline PSVIAttributeList::~PSVIAttributeList()
 inline PSVIAttribute *PSVIAttributeList::getPSVIAttributeToFill()
 {
     PSVIAttribute *retAttr = 0;
-    if(fAttrPos+1 == fAttrList->size())
+    if(fAttrPos == fAttrList->size())
     {
         retAttr = new (fMemoryManager)PSVIAttribute(fMemoryManager);
         fAttrList->addElement(retAttr);