[
https://issues.apache.org/jira/browse/QPID-2186?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12785722#action_12785722
]
Steve Huston commented on QPID-2186:
------------------------------------
I think this patch will do it, but I'd like some review before checking it
in... Andrew Stitcher, can you please check this?
Index: Timer.cpp
===================================================================
--- Timer.cpp (revision 886848)
+++ Timer.cpp (working copy)
@@ -136,7 +136,8 @@
tasks.push(t);
}
}
- monitor.wait(tasks.top()->sortTime);
+ if (!tasks.empty())
+ monitor.wait(tasks.top()->sortTime);
}
}
}
> Windows - "vector iterator not dereferencable"
> ----------------------------------------------
>
> Key: QPID-2186
> URL: https://issues.apache.org/jira/browse/QPID-2186
> Project: Qpid
> Issue Type: Bug
> Components: C++ Client
> Environment: XP-SP2, VS2008, Boost_1_35, Python 3.0.1, ruby 1.8.6 and
> working copy revision: 828034
> Reporter: Larry Roloson
>
> i have the direct listener built from the examples, and it throws the above
> exception when there is no broker running at the supplied address. It does
> connect and get messages when the broker is running.
> The call stack when the exception occurs:
> ----------------------------------------------
> > msvcp90d.dll!std::_Debug_message(const wchar_t * message=0x00fa7e28,
> > const wchar_t * file=0x00fa7798, unsigned int line=98) Line 24 C++
>
> qpidcommond.dll!std::_Vector_const_iterator<boost::intrusive_ptr<qpid::sys::TimerTask>,std::allocator<boost::intrusive_ptr<qpid::sys::TimerTask>
> > >::operator*() Line 98 + 0x14 bytes C++
>
> qpidcommond.dll!std::_Vector_iterator<boost::intrusive_ptr<qpid::sys::TimerTask>,std::allocator<boost::intrusive_ptr<qpid::sys::TimerTask>
> > >::operator*() Line 340 C++
>
> qpidcommond.dll!std::vector<boost::intrusive_ptr<qpid::sys::TimerTask>,std::allocator<boost::intrusive_ptr<qpid::sys::TimerTask>
> > >::front() Line 790 + 0x24 bytes C++
>
> qpidcommond.dll!std::priority_queue<boost::intrusive_ptr<qpid::sys::TimerTask>,std::vector<boost::intrusive_ptr<qpid::sys::TimerTask>,std::allocator<boost::intrusive_ptr<qpid::sys::TimerTask>
> > >,std::less<boost::intrusive_ptr<qpid::sys::TimerTask> > >::top() Line
> 207 C++
> qpidcommond.dll!qpid::sys::Timer::run() Line 114 + 0xf bytes C++
> qpidcommond.dll!`anonymous namespace'::runRunnable(void * p=0x101e63d0)
> Line 32 + 0xf bytes C++
> msvcr90d.dll!_callthreadstartex() Line 348 + 0xf bytes C
> msvcr90d.dll!_threadstartex(void * ptd=0x0116b6d8) Line 331 C
> kernel32.dll!7c80b729()
> [Frames below may be incorrect and/or missing, no symbols loaded for
> kernel32.dll]
> boost_program_options-vc90-mt-gd-1_35.dll!003a0043()
> msvcr90d.dll!_mbsnbcpy_l(unsigned char * dst=0x00730063, const unsigned
> char * src=0x00000073, unsigned int cnt=6619236, localeinfo_struct *
> plocinfo=0x00610066) Line 57 + 0x3d bytes C++
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]