TRAFODION-1856: Revoke - object and column privilege checks not integrated for 
constraints

Fixed a problem with null pointer referencing from prior push


Project: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/commit/66e03ea3
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/tree/66e03ea3
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/diff/66e03ea3

Branch: refs/heads/master
Commit: 66e03ea3ff0d0fd0e190f60abb256c810926d871
Parents: b9161bf
Author: Roberta Marton <[email protected]>
Authored: Tue Mar 1 16:37:27 2016 +0000
Committer: Roberta Marton <[email protected]>
Committed: Tue Mar 1 16:37:27 2016 +0000

----------------------------------------------------------------------
 core/sql/sqlcomp/PrivMgrMD.h | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/66e03ea3/core/sql/sqlcomp/PrivMgrMD.h
----------------------------------------------------------------------
diff --git a/core/sql/sqlcomp/PrivMgrMD.h b/core/sql/sqlcomp/PrivMgrMD.h
index c61d49a..a4c3f5e 100644
--- a/core/sql/sqlcomp/PrivMgrMD.h
+++ b/core/sql/sqlcomp/PrivMgrMD.h
@@ -75,8 +75,7 @@ struct ColumnReference {
 
   void describe (std::string &details) const
   {
-    details = "column usage ";
-    details += " column number is ";
+    details = "column usage - column number is ";
     details += to_string((long long int) columnOrdinal);
   }
 
@@ -123,15 +122,19 @@ class ObjectReference
     
   virtual ~ObjectReference ( void )
   {
-    while(!columnReferences->empty())
-      delete columnReferences->back(), columnReferences->pop_back();
-    delete columnReferences;
+    if (columnReferences)
+    {
+      while(!columnReferences->empty())
+        delete columnReferences->back(), columnReferences->pop_back();
+      delete columnReferences;
+    }
   }
 
   int64_t objectUID;
   int32_t objectOwner;
   ComObjectType objectType;
   std::string objectName;
+  //TBD - make columnReferences a map instead of a vector
   std::vector<ColumnReference *> *columnReferences;
   PrivMgrDesc updatedPrivs;
 

Reply via email to