[libxml2] xmlschemastypes: Fix potential array overflow



commit 4ba5d3176938d3435ddc7347cdc904658e2999ee
Author: Philip Withnall <philip withnall collabora co uk>
Date:   Fri Jun 20 21:37:21 2014 +0100

    xmlschemastypes: Fix potential array overflow
    
    The year and month need validating before being put into the
    MAX_DAYINMONTH macro.
    
    Coverity issue: #60436
    
    https://bugzilla.gnome.org/show_bug.cgi?id=731990

 xmlschemastypes.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)
---
diff --git a/xmlschemastypes.c b/xmlschemastypes.c
index 7a56267..ff64f50 100644
--- a/xmlschemastypes.c
+++ b/xmlschemastypes.c
@@ -3854,7 +3854,8 @@ _xmlSchemaDateAdd (xmlSchemaValPtr dt, xmlSchemaValPtr dur)
                tmon = 12;
             tempdays += MAX_DAYINMONTH(tyr, tmon);
             carry = -1;
-        } else if (tempdays > (long) MAX_DAYINMONTH(r->year, r->mon)) {
+        } else if (VALID_YEAR(r->year) && VALID_MONTH(r->mon) &&
+                   tempdays > (long) MAX_DAYINMONTH(r->year, r->mon)) {
             tempdays = tempdays - MAX_DAYINMONTH(r->year, r->mon);
             carry = 1;
         } else


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]