1
0
mirror of https://github.com/MariaDB/server.git synced 2026-01-06 05:22:24 +03:00

Fix Bug#16000909 MEMORY LEAK, MYSQL_INPLACE_ALTER_TABLE

This is a followup to the fix of
Bug#14628410 ASSERTION `! IS_SET()' FAILED IN DIAGNOSTICS_AREA::SET_OK_STATUS
(satya.bodapati@oracle.com-20121213132316-5joz4phltx9yhjs7)

In innobase_mysql_tmpfile(): allocate/open the file after
the return(-1); statement.
This commit is contained in:
Vasil Dimov
2012-12-18 20:55:30 +02:00
parent febe03c2db
commit 0dd066cb6f

View File

@@ -1140,7 +1140,10 @@ innobase_mysql_tmpfile(void)
DBUG_ENTER("innobase_mysql_tmpfile");
DBUG_EXECUTE_IF("innobase_tmpfile_creation_failure", return(-1););
DBUG_EXECUTE_IF(
"innobase_tmpfile_creation_failure",
return(-1);
);
tmpdir = my_tmpdir(&mysql_tmpdir_list);
@@ -1203,9 +1206,14 @@ innobase_mysql_tmpfile(void)
/*========================*/
{
int fd2 = -1;
File fd = mysql_tmpfile("ib");
File fd;
DBUG_EXECUTE_IF("innobase_tmpfile_creation_failure", return(-1););
DBUG_EXECUTE_IF(
"innobase_tmpfile_creation_failure",
return(-1);
);
fd = mysql_tmpfile("ib");
if (fd >= 0) {
/* Copy the file descriptor, so that the additional resources