diff --git a/trick_source/data_products/Var/var.cpp b/trick_source/data_products/Var/var.cpp
index 35108a54..d7da0ff1 100644
--- a/trick_source/data_products/Var/var.cpp
+++ b/trick_source/data_products/Var/var.cpp
@@ -657,6 +657,8 @@ int Var::calcNumDimensions() {
                 if ( varName_[i] == ']' ) {
                                cerr << "ERROR: Missing open bracket in"
                                     << varName_ << endl ;
+                               delete[] dim1 ;
+                               delete[] dim2 ;
                                return( -1 );
                 }
 
@@ -670,6 +672,8 @@ int Var::calcNumDimensions() {
                               if ( i == stringLen ) {
                                        cerr << "ERROR: Missing close bracket in"
                                             << varName_ << endl ;
+                                       delete[] dim1 ;
+                                       delete[] dim2 ;
                                        return( -1 ) ;
                               }
 
@@ -686,11 +690,15 @@ int Var::calcNumDimensions() {
                                               cerr << "ERROR: Missing close "
                                                    << "bracket in "
                                                    << varName_ << endl ;
+                                              delete[] dim1 ;
+                                              delete[] dim2 ;
                                               return( -1 ) ;
                                        }
                                        if ( j > 7 ) {
                                               printf("ERROR: Dimension spec "
                                                      "too long.\n");
+                                              delete[] dim1 ;
+                                              delete[] dim2 ;
                                               return( -1 ) ;
                                        }
                               }
@@ -715,6 +723,8 @@ int Var::calcNumDimensions() {
                                                             << " in "
                                                             << varName_
                                                             << endl ;
+                                                       delete[] dim1 ;
+                                                       delete[] dim2 ;
                                                        return( -1 ) ;
                                                }
                                                if ( j > 7 ) {
@@ -723,6 +733,8 @@ int Var::calcNumDimensions() {
                                                             << "in "
                                                             << varName_
                                                             << endl ;
+                                                       delete[] dim1 ;
+                                                       delete[] dim2 ;
                                                        return( -1 ) ;
                                                }
 
@@ -738,6 +750,8 @@ int Var::calcNumDimensions() {
                                        cerr << "ERROR: Dimension has syntax "
                                             << "error with "
                                             << varName_ << endl ;
+                                       delete[] dim1 ;
+                                       delete[] dim2 ;
                                        return( -1 ) ;
                                }
                        }