summaryrefslogtreecommitdiff
path: root/sql/sql_view.cc
diff options
context:
space:
mode:
Diffstat (limited to 'sql/sql_view.cc')
-rw-r--r--sql/sql_view.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/sql/sql_view.cc b/sql/sql_view.cc
index 201725301d6..1a83547816b 100644
--- a/sql/sql_view.cc
+++ b/sql/sql_view.cc
@@ -186,8 +186,10 @@ fill_defined_view_parts (THD *thd, TABLE_LIST *view)
if (!open_table(thd, &decoy, thd->mem_root, &not_used, OPEN_VIEW_NO_PARSE) &&
!decoy.view)
{
+ /* It's a table */
return TRUE;
}
+
if (!lex->definer)
{
view->definer.host= decoy.definer.host;
@@ -729,8 +731,10 @@ static int mysql_register_view(THD *thd, TABLE_LIST *view,
view->query.str= (char*)str.ptr();
view->query.length= str.length()-1; // we do not need last \0
view->source.str= thd->query + thd->lex->create_view_select_start;
- view->source.length= (thd->query_length -
- thd->lex->create_view_select_start);
+ view->source.length= (char *)skip_rear_comments((uchar *)view->source.str,
+ (uchar *)thd->query +
+ thd->query_length) -
+ view->source.str;
view->file_version= 1;
view->calc_md5(md5);
view->md5.str= md5;