[packages/percona-server/v5.0.x: 31/202] - for 5.0

glen glen at pld-linux.org
Wed Oct 21 16:11:38 CEST 2015


commit 45c53499e357fdce3dde75a5ca55cc5bad29ca81
Author: Elan Ruusamäe <glen at pld-linux.org>
Date:   Wed Oct 24 10:44:17 2007 +0000

    - for 5.0
    
    Changed files:
        mysql-bug-16470.patch -> 1.1.4.1

 mysql-bug-16470.patch | 45 +++++++++++++++++++++++----------------------
 1 file changed, 23 insertions(+), 22 deletions(-)
---
diff --git a/mysql-bug-16470.patch b/mysql-bug-16470.patch
index 28e39c4..b722e58 100644
--- a/mysql-bug-16470.patch
+++ b/mysql-bug-16470.patch
@@ -1,5 +1,5 @@
 From: kpettersson
-Date: October 23 2007 4:07pm
+Date: October 24 2007 10:29am
 Subject: bk commit into 5.0 tree (thek:1.2537) BUG#16470
 
 Below is the list of changes that have just been committed into a local
@@ -9,7 +9,7 @@ push, to the public repository.
 For information on how to access the public repository
 see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
 
-ChangeSet at stripped, 2007-10-23 16:07:32+02:00, thek at adventure.(none) +1 -0
+ChangeSet at stripped, 2007-10-24 10:29:24+02:00, thek at adventure.(none) +1 -0
   Bug #16470 crash on grant if old grant tables
   
   If a user upgraded the server without running mysql_upgrade, and later tried
@@ -19,41 +19,42 @@ ChangeSet at stripped, 2007-10-23 16:07:32+02:00, thek at adventure.(none) +1 -0
   This patch fixes this problem by checking if the grant tables were properly
   initialized before attempt to store any new grants.
 
-  sql/sql_acl.cc at stripped, 2007-10-23 16:07:31+02:00, thek at adventure.(none) +9 -3
+  sql/sql_acl.cc at stripped, 2007-10-24 10:29:21+02:00, thek at adventure.(none) +3 -6
     If grant_reload fails, don't try to store new GRANTs because the grant tables
     weren't properly initialized.
 
 diff -Nrup a/sql/sql_acl.cc b/sql/sql_acl.cc
 --- a/sql/sql_acl.cc	2007-06-20 14:24:27 +02:00
-+++ b/sql/sql_acl.cc	2007-10-23 16:07:31 +02:00
-@@ -2786,7 +2786,12 @@ bool mysql_table_grant(THD *thd, TABLE_L
-                MYF(0));
-     DBUG_RETURN(TRUE);
++++ b/sql/sql_acl.cc	2007-10-24 10:29:21 +02:00
+@@ -2780,7 +2780,7 @@ bool mysql_table_grant(THD *thd, TABLE_L
+              "--skip-grant-tables");	/* purecov: inspected */
+     DBUG_RETURN(TRUE);				/* purecov: inspected */
    }
--
-+  if (!grant_option)
-+  {
-+    my_message(ER_TABLE_NEEDS_UPGRADE, ER(ER_ILLEGAL_GRANT_FOR_TABLE),
-+                MYF(0));
-+    DBUG_RETURN(TRUE);
-+  }
-   if (!revoke_grant)
+-  if (rights & ~TABLE_ACLS)
++  if ((rights & ~TABLE_ACLS) || !grant_option)
    {
-     if (columns.elements)
-@@ -3335,13 +3340,14 @@ my_bool grant_init()
+     my_message(ER_ILLEGAL_GRANT_FOR_TABLE, ER(ER_ILLEGAL_GRANT_FOR_TABLE),
+                MYF(0));
+@@ -3328,20 +3328,17 @@ void  grant_free(void)
+ my_bool grant_init()
+ {
+   THD  *thd;
+-  my_bool return_val;
+   DBUG_ENTER("grant_init");
+ 
+   if (!(thd= new THD))
      DBUG_RETURN(1);				/* purecov: deadcode */
    thd->thread_stack= (char*) &thd;
    thd->store_globals();
 -  return_val=  grant_reload(thd);
-+  if (grant_reload(thd))
-+    return TRUE;
++  grant_option= !grant_reload(thd);
    delete thd;
    /* Remember that we don't have a THD */
    my_pthread_setspecific_ptr(THR_THD,  0);
-   /* Set the grant option flag so we will check grants */
-   grant_option= TRUE;
+-  /* Set the grant option flag so we will check grants */
+-  grant_option= TRUE;
 -  DBUG_RETURN(return_val);
-+  DBUG_RETURN(FALSE);
++  DBUG_RETURN(!grant_option);
  }
  
  
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/percona-server.git/commitdiff/431f68fe79a66d5dfdd53f2655709e6c925fbc22



More information about the pld-cvs-commit mailing list