LICENSE MIT
in rxi_WriteProc() make sure that rx_call currentPacket is
set to NULL after the rx_packet is added to a queue or
passed to rx_freePacket(). Otherwise we will panic when
we attempt to call rx_freePacket twice on the same packet.
(cherry picked from commit
1e7203940456e783aad215e939c04ed01dd45599)
rxi_PrepareSendPacket(call, cp, 0);
cp->flags |= RX_PKTFLAG_TQ;
queue_Append(&tmpq, cp);
+ cp = call->currentPacket = (struct rx_packet *)0;
/* The head of the iovq is now the current packet */
if (nbytes) {
if (cp) {
cp->flags &= ~RX_PKTFLAG_CP;
queue_Prepend(&tmpq, cp);
+ cp = call->currentPacket = (struct rx_packet *)0;
}
rxi_FreePackets(0, &tmpq);
return 0;
if (cp) {
cp->flags &= ~RX_PKTFLAG_CP;
rxi_FreePacket(cp);
+ cp = call->currentPacket = (struct rx_packet *)0;
}
return 0;
}