[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    KDE/kdelibs/khtml/css
From:       Maks Orlovich <maksim () kde ! org>
Date:       2010-09-23 15:56:10
Message-ID: 20100923160149.00668AC888 () svn ! kde ! org
[Download RAW message or body]

SVN commit 1178705 by orlovich:

Range check these. 
BUG: 251949


 M  +1 -1      css_base.h  
 M  +1 -1      css_ruleimpl.cpp  
 M  +1 -1      css_valueimpl.h  


--- trunk/KDE/kdelibs/khtml/css/css_base.h #1178704:1178705
@@ -263,7 +263,7 @@
 	virtual ~StyleListImpl();
 
 	unsigned long length() const { return m_lstChildren->count(); }
-	StyleBaseImpl *item(unsigned long num) const { return m_lstChildren->at(num); }
+	StyleBaseImpl *item(unsigned long num) const { return num < length() ? m_lstChildren->at(num) : 0; }
 
 	void append(StyleBaseImpl *item) { m_lstChildren->append(item); }
 
--- trunk/KDE/kdelibs/khtml/css/css_ruleimpl.cpp #1178704:1178705
@@ -463,7 +463,7 @@
         assert(!rule || rule->isRule());
         return static_cast<CSSRuleImpl*>(rule);
     }
-    return m_lstCSSRules.at(index);
+    return index < length() ? m_lstCSSRules.at(index) : 0;
 }
 
 void CSSRuleListImpl::deleteRule ( unsigned long index )
--- trunk/KDE/kdelibs/khtml/css/css_valueimpl.h #1178704:1178705
@@ -171,7 +171,7 @@
     virtual ~CSSValueListImpl();
 
     unsigned long length() const { return m_values.count(); }
-    CSSValueImpl *item ( unsigned long index ) { return m_values.at(index); }
+    CSSValueImpl *item ( unsigned long index ) { return  index < length() ? m_values.at(index) : 0; }
 
     virtual bool isValueList() const { return true; }
 
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic