xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx |   20 +++++++---
 1 file changed, 14 insertions(+), 6 deletions(-)

New commits:
commit 0be1b5f4a64b53aee054d29db2bee2eb37f5131e
Author: Norbert Thiebaud <nthieb...@gmail.com>
Date:   Mon Feb 18 03:58:04 2013 -0600

    coverity#982735 Negative loop bound
    
    Change-Id: I597cd1204b0b7f5c7351482c3cdd00fc6111218a
    Reviewed-on: https://gerrit.libreoffice.org/2224
    Reviewed-by: Norbert Thiebaud <nthieb...@gmail.com>
    Tested-by: Norbert Thiebaud <nthieb...@gmail.com>

diff --git a/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx 
b/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx
index a3bda13..f3eacea 100644
--- a/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx
+++ b/xmlsecurity/source/xmlsec/nss/securityenvironment_nssimpl.cxx
@@ -690,7 +690,8 @@ Reference< XCertificate > SecurityEnvironment_NssImpl :: 
createCertificateFromRa
     return xcert ;
 }
 
-Reference< XCertificate > SecurityEnvironment_NssImpl :: 
createCertificateFromAscii( const OUString& asciiCertificate ) throw( 
SecurityException , RuntimeException ) {
+Reference< XCertificate > SecurityEnvironment_NssImpl :: 
createCertificateFromAscii( const OUString& asciiCertificate ) throw( 
SecurityException , RuntimeException )
+{
     xmlChar* chCert ;
     xmlSecSize certSize ;
 
@@ -700,13 +701,20 @@ Reference< XCertificate > SecurityEnvironment_NssImpl :: 
createCertificateFromAs
 
     certSize = xmlSecBase64Decode( chCert, ( xmlSecByte* )chCert, xmlStrlen( 
chCert ) ) ;
 
-    Sequence< sal_Int8 > rawCert( certSize ) ;
-    for( unsigned int i = 0 ; i < certSize ; i ++ )
-        rawCert[i] = *( chCert + i ) ;
+    if(certSize > 0)
+    {
+        Sequence< sal_Int8 > rawCert( certSize ) ;
+        for( unsigned int i = 0 ; i < certSize ; i ++ )
+            rawCert[i] = *( chCert + i ) ;
 
-    xmlFree( chCert ) ;
+        xmlFree( chCert ) ;
 
-    return createCertificateFromRaw( rawCert ) ;
+        return createCertificateFromRaw( rawCert ) ;
+    }
+    else
+    {
+        return NULL;
+    }
 }
 
 sal_Int32 SecurityEnvironment_NssImpl ::
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to