Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
e4697234
Commit
e4697234
authored
Mar 05, 2007
by
holyfoot/hf@mysql.com/hfmain.(none)
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
bug #25492 (Invalid deallocation in mysql_stmt_fetch())
Additional patch. mysql_flush_use_result() fixed.
parent
0004fa3c
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
8 additions
and
14 deletions
+8
-14
libmysqld/lib_sql.cc
libmysqld/lib_sql.cc
+8
-14
No files found.
libmysqld/lib_sql.cc
View file @
e4697234
...
...
@@ -69,10 +69,14 @@ void embedded_get_error(MYSQL *mysql)
static
void
emb_free_rows
(
THD
*
thd
)
{
if
(
!
thd
->
data
)
return
;
if
(
thd
->
current_stmt
)
free_root
(
&
thd
->
data
->
alloc
,
MYF
(
0
));
else
free_rows
(
thd
->
data
);
thd
->
data
=
NULL
;
}
...
...
@@ -86,11 +90,8 @@ emb_advanced_command(MYSQL *mysql, enum enum_server_command command,
THD
*
thd
=
(
THD
*
)
mysql
->
thd
;
NET
*
net
=
&
mysql
->
net
;
if
(
thd
->
data
)
{
emb_free_rows
(
thd
);
thd
->
data
=
0
;
}
emb_free_rows
(
thd
);
/* Check that we are calling the client functions in right order */
if
(
mysql
->
status
!=
MYSQL_STATUS_READY
)
{
...
...
@@ -143,13 +144,7 @@ emb_advanced_command(MYSQL *mysql, enum enum_server_command command,
static
void
emb_flush_use_result
(
MYSQL
*
mysql
)
{
MYSQL_DATA
*
data
=
((
THD
*
)(
mysql
->
thd
))
->
data
;
if
(
data
)
{
free_rows
(
data
);
((
THD
*
)(
mysql
->
thd
))
->
data
=
NULL
;
}
emb_free_rows
((
THD
*
)
(
mysql
->
thd
));
}
static
MYSQL_DATA
*
...
...
@@ -304,8 +299,7 @@ int emb_unbuffered_fetch(MYSQL *mysql, char **row)
static
void
emb_free_embedded_thd
(
MYSQL
*
mysql
)
{
THD
*
thd
=
(
THD
*
)
mysql
->
thd
;
if
(
thd
->
data
)
emb_free_rows
(
thd
);
emb_free_rows
(
thd
);
thread_count
--
;
delete
thd
;
mysql
->
thd
=
0
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment