Is this reproducible? - Martin
On Fri, Jul 20, 2012 at 12:31 AM, Viviano, Aaron <[email protected]> wrote: > Hello ZeroMQ Devs, > > I’m currently running into an issue with ZMQ, using CLRZMQ (Win7, VS2010), > where it is crashing in the encoder::get_data function at this line: > > > > memcpy (buffer + pos, write_pos, to_copy); > > > > The variable write_pos would equal 0xfeeefeee, which according to what I’ve > researched, means that the pointer was last touched by Window’s HeapFree > function [1]. Looking into the code I’ve found that this variable is set > with the address from the msg_content_t::*data variable. This is then > cleaned up in zmq_msg_close: > > > > if (content->ffn) > > content->ffn (content->data, content->hint); > > free (content); > > > > I’ve attempted to add a function call in zmq::encoder_t::message_ready to a > function called zmq_CheckForFreedData to try and fix the problem. > > > > bool zmq_CheckForFreedData(zmq_msg_t *msg_) > > { > > if (msg_->content == (zmq::msg_content_t*) ZMQ_VSM) > > return false; > > if (msg_->content == (zmq::msg_content_t*) ZMQ_DELIMITER) > > return false; > > > > if(((zmq::msg_content_t*) msg_->content)->data == (void *)0xfeeefeee) > > { > > return true; > > } > > return false; > > } > > > > … > > if (!source || !source->read (&in_progress)) > > { > > zmq_msg_init (&in_progress); > > return false; > > } > > else if(zmq_CheckForFreedData(&in_progress)) > > { > > zmq_msg_init (&in_progress); > > return false; > > } > > … > > > > While this prevents the crash I’m now seeing my program lock up. At the > moment I don’t have a simple test program for you, however, until I have the > chance to put one together, what would be the best place to start looking > for why this error is happening in the code? > > > > Thank you, > > Aaron > > > > 1. > http://stackoverflow.com/questions/127386/in-visual-studio-c-what-are-the-memory-allocation-representations > > > _______________________________________________ > zeromq-dev mailing list > [email protected] > http://lists.zeromq.org/mailman/listinfo/zeromq-dev > _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
