#61 Port::close() gets stuck when port is connected to another


Port::close() in process1 gets stuck when the port is connected to another port in process2. If process2 quits or is killes process1 continues execution correctly. Never saw this on Linux, happens consistently on Windows.

To replicate the bug.

Run attached code in terminal1.

Run yarp rpc /test on terminal2.

Type 'quit' on terminal1. Process should get stuck.

Kill yarp rpc on terminal2.

Process in terminal1 should now quit.

Dev environment: Windows XP, Visual Studio 2005. YARP from svn. ACE 5.5.5, compiled locally.


  • Lorenzo Natale

    Lorenzo Natale - 2009-09-11
  • Paul Fitzpatrick

    • assigned_to: nobody --> eshuy
    • status: open --> open-fixed
  • Paul Fitzpatrick

    Thanks for the testcase! The port is not actually stuck, it is "just" undergoing a long timeout. I committed a tweak to SVN that makes the interrupt procedure snappier, let me know if it works for you.

  • Lorenzo Natale

    Lorenzo Natale - 2009-09-14

    This fixed the problem! thanks.

  • Lorenzo Natale

    Lorenzo Natale - 2009-09-14
    • status: open-fixed --> closed-fixed

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks