8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-24 04:03:03 +01:00

Backport fix for bug CORE-1456: Wrong events delivery in the case of concurrent XNET connections

This commit is contained in:
hvlad 2007-09-13 14:28:09 +00:00
parent 16d28c7f2f
commit 11f789218c

View File

@ -760,11 +760,11 @@ static rem_port* aux_connect(rem_port* port, PACKET* packet, t_event_ast ast)
// send events channel
xps->xps_channels[XPS_CHANNEL_C2S_EVENTS].xch_client_ptr =
((UCHAR *) xpm->xpm_address + sizeof(struct xps));
((UCHAR *) xcc->xcc_mapped_addr + sizeof(struct xps));
// receive events channel
xps->xps_channels[XPS_CHANNEL_S2C_EVENTS].xch_client_ptr =
((UCHAR *) xpm->xpm_address + sizeof(struct xps) + (XNET_EVENT_SPACE));
((UCHAR *) xcc->xcc_mapped_addr + sizeof(struct xps) + (XNET_EVENT_SPACE));
xcc->xcc_send_channel = &xps->xps_channels[XPS_CHANNEL_C2S_EVENTS];
xcc->xcc_recv_channel = &xps->xps_channels[XPS_CHANNEL_S2C_EVENTS];
@ -894,11 +894,11 @@ static rem_port* aux_request(rem_port* port, PACKET* packet)
// send events channel
xps->xps_channels[XPS_CHANNEL_S2C_EVENTS].xch_client_ptr =
((UCHAR *) xpm->xpm_address + sizeof(struct xps) + (XNET_EVENT_SPACE));
((UCHAR *) xcc->xcc_mapped_addr + sizeof(struct xps) + (XNET_EVENT_SPACE));
// receive events channel
xps->xps_channels[XPS_CHANNEL_C2S_EVENTS].xch_client_ptr =
((UCHAR *) xpm->xpm_address + sizeof(struct xps));
((UCHAR *) xcc->xcc_mapped_addr + sizeof(struct xps));
xcc->xcc_send_channel = &xps->xps_channels[XPS_CHANNEL_S2C_EVENTS];
xcc->xcc_recv_channel = &xps->xps_channels[XPS_CHANNEL_C2S_EVENTS];