Fix for bug#36399: Double free bug when INFORMATION_SCHEMA

plugin init function fails

Problem: if an INFORMATION_SCHEMA plugin initialization fails
we free some inner plugin's data (schema_table) twice during the 
INSTALL PLUGIN command.

Fix: free it once.
This commit is contained in:
Chad MILLER 2008-08-18 12:15:56 -04:00
parent 675610ff8d
commit eb88db2485

View File

@ -6644,17 +6644,15 @@ int initialize_schema_table(st_plugin_int *plugin)
{
sql_print_error("Plugin '%s' init function returned error.",
plugin->name.str);
goto err;
plugin->data= NULL;
my_free(schema_table, MYF(0));
DBUG_RETURN(1);
}
/* Make sure the plugin name is not set inside the init() function. */
schema_table->table_name= plugin->name.str;
}
DBUG_RETURN(0);
err:
my_free(schema_table, MYF(0));
DBUG_RETURN(1);
}
int finalize_schema_table(st_plugin_int *plugin)