mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 04:53:01 +01:00
Merge bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-maint
This commit is contained in:
commit
1b23488cab
1 changed files with 27 additions and 2 deletions
|
@ -562,9 +562,13 @@ int vio_write_shared_memory(Vio * vio, const gptr buf, int size)
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
Close shared memory and DBUG_PRINT any errors that happen on closing.
|
||||
@return Zero if all closing functions succeed, and nonzero otherwise.
|
||||
*/
|
||||
int vio_close_shared_memory(Vio * vio)
|
||||
{
|
||||
int r;
|
||||
int error_count= 0;
|
||||
DBUG_ENTER("vio_close_shared_memory");
|
||||
if (vio->type != VIO_CLOSED)
|
||||
{
|
||||
|
@ -578,23 +582,44 @@ int vio_close_shared_memory(Vio * vio)
|
|||
result if they are success.
|
||||
*/
|
||||
if (UnmapViewOfFile(vio->handle_map) == 0)
|
||||
{
|
||||
error_count++;
|
||||
DBUG_PRINT("vio_error", ("UnmapViewOfFile() failed"));
|
||||
}
|
||||
if (CloseHandle(vio->event_server_wrote) == 0)
|
||||
{
|
||||
error_count++;
|
||||
DBUG_PRINT("vio_error", ("CloseHandle(vio->esw) failed"));
|
||||
}
|
||||
if (CloseHandle(vio->event_server_read) == 0)
|
||||
{
|
||||
error_count++;
|
||||
DBUG_PRINT("vio_error", ("CloseHandle(vio->esr) failed"));
|
||||
}
|
||||
if (CloseHandle(vio->event_client_wrote) == 0)
|
||||
{
|
||||
error_count++;
|
||||
DBUG_PRINT("vio_error", ("CloseHandle(vio->ecw) failed"));
|
||||
}
|
||||
if (CloseHandle(vio->event_client_read) == 0)
|
||||
{
|
||||
error_count++;
|
||||
DBUG_PRINT("vio_error", ("CloseHandle(vio->ecr) failed"));
|
||||
}
|
||||
if (CloseHandle(vio->handle_file_map) == 0)
|
||||
{
|
||||
error_count++;
|
||||
DBUG_PRINT("vio_error", ("CloseHandle(vio->hfm) failed"));
|
||||
}
|
||||
if (CloseHandle(vio->event_conn_closed) == 0)
|
||||
{
|
||||
error_count++;
|
||||
DBUG_PRINT("vio_error", ("CloseHandle(vio->ecc) failed"));
|
||||
}
|
||||
}
|
||||
vio->type= VIO_CLOSED;
|
||||
vio->sd= -1;
|
||||
DBUG_RETURN(!r);
|
||||
DBUG_RETURN(error_count);
|
||||
}
|
||||
#endif /* HAVE_SMEM */
|
||||
#endif /* __WIN__ */
|
||||
|
|
Loading…
Reference in a new issue