xrep discard the first empty frame data

Description

I begin to learn zmq few days,
because of no 'zmq_device' in v310, I write by myself,

but DynamicHelloWorldServer.exe assert at
rep.cpp 75 line, 'zmq_assert (msg_->flags () & msg_t::more);'
in 'zmq::rep_t::xrecv'

after debug it, I think there is a bug on 'xrep_t::xrecv' and 'xrep_t::xhas_in'
when 'xrep_t::xhas_in' call 'xrep_t::xrecv', the local var 'msg' equal to 'prefetched_msg'
so 'int rc = prefetched_msg.move (*msg_);' is wrong.

Environment

windows xp
vc2008
req/xrep-xreq/rep pattern

Attachments

5
  • 02 Dec 2011, 09:43 AM
  • 02 Dec 2011, 09:43 AM
  • 02 Dec 2011, 09:43 AM
  • 02 Dec 2011, 09:43 AM
  • 02 Dec 2011, 09:43 AM

Activity

Show:

Ivan Pechorin September 26, 2012 at 10:05 AM

I believe, assert in rep.cpp:75 on (msg_->flags () & msg_t::more) is an issue described in LIBZMQ-211. It is still present both in 3.2 (libzmq3-x) and in the development branch (libzmq). Please see my comment to LIBZMQ-211.

Martin Hurton June 27, 2012 at 10:35 AM

gzyao, could you check if this still happens with version 3.2 too? Thanks!

Details

Assignee

Reporter

Components

Affects versions

Priority

Created December 2, 2011 at 9:43 AM
Updated September 26, 2012 at 10:05 AM