diff options
author | Atsushi Eno <atsushieno@gmail.com> | 2004-12-09 18:30:46 +0300 |
---|---|---|
committer | Atsushi Eno <atsushieno@gmail.com> | 2004-12-09 18:30:46 +0300 |
commit | c22086d881c6013e4098416b144f16847de6dceb (patch) | |
tree | 63c6b1806add8161016dcb8c69ba484180cef679 /mcs/class/System.XML/Mono.Xml.Schema | |
parent | df9cce340280b896e5a42b86cd0459d5336e088d (diff) |
2004-12-09 Atsushi Enomoto <atsushi@ximian.com>
* XsdValidatingReader.cs : mhm, something is wrong with call to
context.PopScope(). So quick fix and marked as FIXME.
svn path=/trunk/mcs/; revision=37490
Diffstat (limited to 'mcs/class/System.XML/Mono.Xml.Schema')
-rw-r--r-- | mcs/class/System.XML/Mono.Xml.Schema/ChangeLog | 5 | ||||
-rw-r--r-- | mcs/class/System.XML/Mono.Xml.Schema/XsdValidatingReader.cs | 17 |
2 files changed, 13 insertions, 9 deletions
diff --git a/mcs/class/System.XML/Mono.Xml.Schema/ChangeLog b/mcs/class/System.XML/Mono.Xml.Schema/ChangeLog index 2a4b5dcf464..630868e3add 100644 --- a/mcs/class/System.XML/Mono.Xml.Schema/ChangeLog +++ b/mcs/class/System.XML/Mono.Xml.Schema/ChangeLog @@ -1,5 +1,10 @@ 2004-12-09 Atsushi Enomoto <atsushi@ximian.com> + * XsdValidatingReader.cs : mhm, something is wrong with call to + context.PopScope(). So quick fix and marked as FIXME. + +2004-12-09 Atsushi Enomoto <atsushi@ximian.com> + * XsdParticleValidationState.cs : removed unused enum. * XsdValidatingReader.cs : more refactoring. Validation process is now strictly done only when not skipping (no side effect). diff --git a/mcs/class/System.XML/Mono.Xml.Schema/XsdValidatingReader.cs b/mcs/class/System.XML/Mono.Xml.Schema/XsdValidatingReader.cs index f773a824416..e9fb15489b0 100644 --- a/mcs/class/System.XML/Mono.Xml.Schema/XsdValidatingReader.cs +++ b/mcs/class/System.XML/Mono.Xml.Schema/XsdValidatingReader.cs @@ -57,6 +57,7 @@ namespace Mono.Xml.Schema ArrayList keyTables = new ArrayList (); ArrayList currentKeyFieldConsumers; + ArrayList tmpKeyrefPool; XsdValidationStateManager stateManager = new XsdValidationStateManager (); @@ -75,11 +76,6 @@ namespace Mono.Xml.Schema ArrayList elementQNameStack = new ArrayList (); - // Property Cache. - - // Validation engine cached object - ArrayList tmpKeyrefPool; - #region .ctor public XsdValidatingReader (XmlReader reader) { @@ -1724,10 +1720,13 @@ namespace Mono.Xml.Schema public void PopScope () { - XsdValidationContext restored = (XsdValidationContext) contextStack.Pop (); - this.Element = restored.Element; - this.State = restored.State; - this.XsiType = restored.XsiType; + // FIXME: this count check should not be required, so check the behavior. + if (contextStack.Count > 0) { + XsdValidationContext restored = (XsdValidationContext) contextStack.Pop (); + this.Element = restored.Element; + this.State = restored.State; + this.XsiType = restored.XsiType; + } } public void EvaluateStartElement ( |