diff options
author | Alexander Barkov <bar@mariadb.com> | 2018-07-03 14:02:05 +0400 |
---|---|---|
committer | Alexander Barkov <bar@mariadb.com> | 2018-07-03 14:02:05 +0400 |
commit | e61568ee9305c6c93c1a9f298a7fe04532881f24 (patch) | |
tree | c80b0967460f7c4f8743831690f7369e11c73722 /sql/sp_head.h | |
parent | 4b0cedf82d8d8ba582648dcb4a2620c146862a43 (diff) | |
parent | c3289d27eef39a47fed2ce1ff239013ed6870f39 (diff) | |
download | mariadb-git-e61568ee9305c6c93c1a9f298a7fe04532881f24.tar.gz |
Merge remote-tracking branch 'origin/10.3' into 10.4
Diffstat (limited to 'sql/sp_head.h')
-rw-r--r-- | sql/sp_head.h | 22 |
1 files changed, 8 insertions, 14 deletions
diff --git a/sql/sp_head.h b/sql/sp_head.h index 5c9183f79ab..3ec8bba1b50 100644 --- a/sql/sp_head.h +++ b/sql/sp_head.h @@ -1001,12 +1001,10 @@ public: class sp_lex_cursor: public sp_lex_local, public Query_arena { - LEX_CSTRING m_cursor_name; public: sp_lex_cursor(THD *thd, const LEX *oldlex, MEM_ROOT *mem_root_arg) :sp_lex_local(thd, oldlex), - Query_arena(mem_root_arg, STMT_INITIALIZED_FOR_SP), - m_cursor_name(null_clex_str) + Query_arena(mem_root_arg, STMT_INITIALIZED_FOR_SP) { } sp_lex_cursor(THD *thd, const LEX *oldlex) :sp_lex_local(thd, oldlex), @@ -1034,8 +1032,6 @@ public: thd->free_list= NULL; return false; } - const LEX_CSTRING *cursor_name() const { return &m_cursor_name; } - void set_cursor_name(const LEX_CSTRING *name) { m_cursor_name= *name; } }; @@ -1210,10 +1206,6 @@ public: m_lex->safe_to_cache_query= 0; } - const LEX_CSTRING *cursor_name() const - { - return m_lex->cursor_name(); - } private: LEX *m_lex; @@ -1682,8 +1674,6 @@ public: { return m_handler; } private: - -private: /// Handler. sp_handler *m_handler; @@ -1762,7 +1752,8 @@ private: /** This is DECLARE CURSOR */ -class sp_instr_cpush : public sp_instr +class sp_instr_cpush : public sp_instr, + public sp_cursor { sp_instr_cpush(const sp_instr_cpush &); /**< Prevent use of these */ void operator=(sp_instr_cpush &); @@ -1861,11 +1852,14 @@ class sp_instr_cursor_copy_struct: public sp_instr sp_instr_cursor_copy_struct(const sp_instr_cursor_copy_struct &); void operator=(sp_instr_cursor_copy_struct &); sp_lex_keeper m_lex_keeper; + uint m_cursor; uint m_var; public: - sp_instr_cursor_copy_struct(uint ip, sp_pcontext *ctx, + sp_instr_cursor_copy_struct(uint ip, sp_pcontext *ctx, uint coffs, sp_lex_cursor *lex, uint voffs) - : sp_instr(ip, ctx), m_lex_keeper(lex, FALSE), m_var(voffs) + : sp_instr(ip, ctx), m_lex_keeper(lex, FALSE), + m_cursor(coffs), + m_var(voffs) {} virtual ~sp_instr_cursor_copy_struct() {} |