http://nagoya.apache.org/bugzilla/show_bug.cgi?id=764 *** shadow/764 Thu Mar 1 02:03:02 2001 --- shadow/764.tmp.9777 Thu Mar 1 02:03:02 2001 *************** *** 0 **** --- 1,154 ---- + +============================================================================+ + | java.lang.StackOverflowError | + +----------------------------------------------------------------------------+ + | Bug #: 764 Product: Regexp | + | Status: NEW Version: unspecified | + | Resolution: Platform: PC | + | Severity: Critical OS/Version: Windows NT/2K | + | Priority: High Component: Other | + +----------------------------------------------------------------------------+ + | Assigned To: [EMAIL PROTECTED] | + | Reported By: [EMAIL PROTECTED] | + | CC list: Cc: | + +----------------------------------------------------------------------------+ + | URL: | + +============================================================================+ + | DESCRIPTION | + this case produces Stack OverFlow Error + + //contents is my string to parse + + String contents = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><Ticket><!--Ticket + Data-- + <RequestNr>558</RequestNr><SapOrderNr>0000000558/1</SapOrderNr><RequestUrl></Req + uestUrl><RequesterName>Alain + Lacour</RequesterName><RequestDate>26.02.2001</RequestDate><RequestSeat></Reques + tSeat><UserData><!--User identification data--><LongName>SUPER + TOTO</LongName><PersNo></PersNo><LastName></LastName><FirstName></FirstName><Uni + queID></UniqueID><EmailAddress></EmailAddress><Office></Office><Phone></Phone><R + ef></Ref></UserData><ReceiverData><!--Receiver identification data-- + ><PersNo></PersNo><LastName>Gebus</LastName><FirstName>Pascal</FirstName><Unique + ID>GEBUSPA1</UniqueID><EmailAddress>[EMAIL PROTECTED]</EmailAddress + ><Office>WSJ-210.416</Office><Phone>+41 61 32 42 + 468</Phone><Ref>MH</Ref></ReceiverData><AddDevice><!--Device Data-- + ><DeviceName>Dock zu TP + T600</DeviceName><HWGroup>ACCESSORY</HWGroup><WkstClass></WkstClass><LocalAdminR + ights></LocalAdminRights><ReferenceWkst></ReferenceWkst>" + + +"<DeviceModel></DeviceModel><CostCenter></CostCenter><HardwareRef></HardwareRef + ><Domain></Domain><Network></Network><DeliveryLocation>WSJ- + 210.416</DeliveryLocation><AssignToDevice><DeviceID>New system</DeviceID> + <DeviceLocation>WSJ- + 210.416</DeviceLocation></AssignToDevice></AddDevice><ProblemData><!--Service + information--><ProblemDescription>hello + support</ProblemDescription></ProblemData></Ticket>" + +"<?xml version=\"1.0\" encoding=\"UTF-8\"?><Ticket><!--Ticket + Data-- + ><RequestNr>558</RequestNr><SapOrderNr>0000000558/1</SapOrderNr><RequestUrl></Re + questUrl><RequesterName>Alain + Lacour</RequesterName><RequestDate>26.02.2001</RequestDate><RequestSeat></Reques + tSeat><UserData><!--User identification data--><LongName>SUPER + TOTO</LongName><PersNo></PersNo><LastName></LastName><FirstName></FirstName><Uni + queID></UniqueID><EmailAddress></EmailAddress><Office></Office><Phone></Phone><R + ef></Ref></UserData><ReceiverData><!--Receiver identification data-- + ><PersNo></PersNo><LastName>Gebus</LastName><FirstName>Pascal</FirstName><Unique + ID>GEBUSPA1</UniqueID><EmailAddress>[EMAIL PROTECTED]</EmailAddress + ><Office>WSJ-210.416</Office><Phone>+41 61 32 42 + 468</Phone><Ref>MH</Ref></ReceiverData><AddDevice><!--Device Data-- + ><DeviceName>Dock zu TP + T600</DeviceName><HWGroup>ACCESSORY</HWGroup><WkstClass></WkstClass><LocalAdminR + ights></LocalAdminRights><ReferenceWkst></ReferenceWkst><DeviceModel></DeviceMod + el>" + + +"<CostCenter></CostCenter><HardwareRef></HardwareRef><Domain></Domain><Network> + </Network><DeliveryLocation>WSJ- + 210.416</DeliveryLocation><AssignToDevice><DeviceID>New system</DeviceID> + <DeviceLocation>WSJ- + 210.416</DeviceLocation></AssignToDevice></AddDevice><ProblemData><!--Service + information--><ProblemDescription>hello + support</ProblemDescription></ProblemData></Ticket>" + +"<?xml version=\"1.0\" encoding=\"UTF-8\"?><Ticket><!--Ticket + Data-- + ><RequestNr>558</RequestNr><SapOrderNr>0000000558/2</SapOrderNr><RequestUrl></Re + questUrl><RequesterName>Alain + Lacour</RequesterName><RequestDate>26.02.2001</RequestDate><RequestSeat></Reques + tSeat><UserData><!--User identification data--><LongName>SUPER + TOTO</LongName><PersNo></PersNo><LastName></LastName><FirstName></FirstName><Uni + queID></UniqueID><EmailAddress></EmailAddress><Office></Office><Phone></Phone><R + ef></Ref></UserData><ReceiverData><!--Receiver identification data-- + ><PersNo></PersNo><LastName>Gebus</LastName><FirstName>Pascal</FirstName><Unique + ID>GEBUSPA1</UniqueID><EmailAddress>[EMAIL PROTECTED]</EmailAddress + ><Office>WSJ-210.416</Office><Phone>+41 61 32 42 + 468</Phone><Ref>MH</Ref></ReceiverData><AddDevice><!--Device Data-- + ><DeviceName>3T + Mouse</DeviceName><HWGroup>PERIPHERAL</HWGroup><WkstClass></WkstClass><LocalAdmi + nRights></LocalAdminRights><ReferenceWkst></ReferenceWkst><DeviceModel>3T + MOUSE</DeviceModel>" + + +"<CostCenter></CostCenter><HardwareRef></HardwareRef><Domain></Domain><Network> + </Network><DeliveryLocation>WSJ-210.416</DeliveryLocation><AssignToDevice> + <DeviceID>New system</DeviceID><DeviceLocation>WSJ- + 210.416</DeviceLocation></AssignToDevice></AddDevice><ProblemData><!--Service + information--><ProblemDescription>hello + support</ProblemDescription></ProblemData></Ticket>" + +"<?xml version=\"1.0\" encoding=\"UTF-8\"?><Ticket><!--Ticket + Data-- + ><RequestNr>558</RequestNr><SapOrderNr>0000000558/3</SapOrderNr><RequestUrl></Re + questUrl><RequesterName>Alain + Lacour</RequesterName><RequestDate>26.02.2001</RequestDate><RequestSeat></Reques + tSeat><UserData><!--User identification data--><LongName>SUPER + TOTO</LongName><PersNo></PersNo><LastName></LastName><FirstName></FirstName><Uni + queID></UniqueID><EmailAddress></EmailAddress><Office></Office><Phone></Phone><R + ef></Ref></UserData><ReceiverData><!--Receiver identification data-- + ><PersNo></PersNo><LastName>Gebus</LastName><FirstName>Pascal</FirstName><Unique + ID>GEBUSPA1</UniqueID><EmailAddress>[EMAIL PROTECTED]</EmailAddress + ><Office>WSJ-210.416</Office><Phone>+41 61 32 42 + 468</Phone><Ref>MH</Ref></ReceiverData><AddDevice><!--Device Data-- + ><DeviceName>test for xml + mail</DeviceName><HWGroup></HWGroup><WkstClass></WkstClass><LocalAdminRights></L + ocalAdminRights><ReferenceWkst></ReferenceWkst><DeviceModel></DeviceModel>" + + +"<CostCenter></CostCenter><HardwareRef></HardwareRef><Domain></Domain><Network> + </Network><DeliveryLocation>WSJ- + 210.416</DeliveryLocation><AssignToDevice><DeviceID>New + system</DeviceID><DeviceLocation>WSJ- + 210.416</DeviceLocation></AssignToDevice></AddDevice><ProblemData><!--Service + information--><ProblemDescription>hello + support</ProblemDescription></ProblemData></Ticket>" ; + + + // + + org.apache.regexp.RE r = new org.apache.regexp.RE ("<Ticket> + (.|[\n\r])*</Ticket>") ; + + if(r.match(contents.toString())) { + String expr = r.getParen(0); + } + + + // it produces this Error : + java.lang.StackOverflowError + at org.apache.regexp.StringCharacterIterator.isEnd + (StringCharacterIterator.java:96) + at org.apache.regexp.RE.matchNodes(RE.java:1121) + at org.apache.regexp.RE.matchNodes(RE.java:1376) + at org.apache.regexp.RE.matchNodes(RE.java:910) + at org.apache.regexp.RE.matchNodes(RE.java:1376) + at org.apache.regexp.RE.matchNodes(RE.java:933) + at org.apache.regexp.RE.matchNodes(RE.java:1376) + at org.apache.regexp.RE.matchNodes(RE.java:910) + at org.apache.regexp.RE.matchNodes(RE.java:1376) + at org.apache.regexp.RE.matchNodes(RE.java:933) + at org.apache.regexp.RE.matchNodes(RE.java:1376) + at org.apache.regexp.RE.matchNodes(RE.java:910) + at org.apache.regexp.RE.matchNodes(RE.java:1376) + + + // I'm using JDK1.3 and Regexp1.2 + // this example works with JDK1.2.2 + + + Thanks, + + Isabelle Lieu